5#include <iolink/view/Extension.h>
67 static constexpr size_t EXTENSION_ID = 0x3;
74 virtual uint64_t
uid()
const = 0;
92 virtual std::shared_ptr<ViewOriginExtension>
parent(
size_t idx)
const = 0;
Parent class for all views extensions.
Definition: Extension.h:25
Extension used to access view's origins if it exists.
Definition: ViewOriginExtension.h:62
std::string toString() const
String representation of the extension.
virtual uint64_t uid() const =0
Returns an unique identifier for current view.
virtual ViewDataOrigin dataOrigin() const =0
Returns the data origin of current view.
virtual std::string displayName() const =0
Returns the name of the current view to display.
virtual std::shared_ptr< ViewOriginExtension > parent(size_t idx) const =0
Returns, for the given index, the viewOrigin extension of the parent used to create the current view.
virtual size_t parentCount() const =0
Returns the count of parents used to create the current view.
All IOLink symbols are enclosed in this namespace.
Definition: ArrayX.h:8
@ UNKNOWN
An opaque type, that the no one knows about.
ViewDataOrigin
Enum which represents the different locations where view data may come from.
Definition: ViewOriginExtension.h:16
@ NETWORK
Data are retrieved through the network.
@ DRIVE
Data is located on a drive (HDD, SSD, CD, etc.).
@ GENERATED
Data is generated and never stored.
@ GPU_MEMORY
Data is located in GPU memory.
@ CPU_MEMORY
Data is located in CPU memory.
@ COMPOSITE
Data come from many sources.