StudioAPI Namespace
(CDP::StudioAPI)Contains StudioAPI implementation classes More...
Header: | #include <StudioAPI> |
Classes
class | AbsorbedChild |
class | AdoptedChild |
class | CDPNode |
class | CDPValueTypeConverter |
class | ICDPNode |
class | NodeStream |
Types
enum | CDPNodeMode { eNodeIsLeaf, eValueIsPersistent, eValueIsReadOnly, eNodeIsRemovable, ..., eNodeIsImportant } |
typedef | CDPNodeModeFlags |
typedef | CDPNodePermissionFlags |
enum | CDPNodePermissions { eNoAccess, eCanBrowse, eCanRead, eCanWrite, eCanWriteRolePermissions, eCanAddRemoveChildren } |
enum | CDPNodeType { eUNDEFINED_NODE, eCDP_SYSTEM_NODE, eCDP_APPLICATION_NODE, eCDP_COMPONENT_NODE, ..., eCDP_USERTYPE_NODE } |
enum | CDPValueType { eUNDEFINED, eDOUBLE, eUINT64, eINT64, ..., eVALUEUSERTYPE } |
typedef | NodeList |
Functions
CDPNodePermissionFlags | Permissions(const std::string &permissionString) |
std::string | Permissions(CDPNodePermissionFlags permissionFlags) |
Detailed Description
Contains StudioAPI implementation classes
Classes
class AbsorbedChild
The AbsorbedChild is wrapper class to absorbe a composited node into parent during serialization. More...
class AdoptedChild
The AdoptedChild is used as a wrapper class to relocate a node in logical tree from its parent during serialization. More...
class CDPNode
The CDPNode is base class for all classes exposed through StudioAPI. More...
class CDPValueTypeConverter
The CDPValueTypeConverter is CDPValueType converter class. More...
class ICDPNode
class NodeStream
The NodeStream is helper class abstracting node serialization. More...
Type Documentation
enum StudioAPI::CDPNodeMode
CDPNodeMode defines possible runtime node flags that indicate some node characteristics.
Note: CDP::StudioAPI::CDPNodeMode duplicates StudioAPI::Proto::PBInfo::Flags and should not be changed
Constant | Value | Description |
---|---|---|
CDP::StudioAPI::eNodeIsLeaf | 1 | Node does not contain any other nodes. |
CDP::StudioAPI::eValueIsPersistent | 2 | Nodes value is stored on change to be persistent across application runs. |
CDP::StudioAPI::eValueIsReadOnly | 4 | Nodes value can not be changed. |
CDP::StudioAPI::eNodeIsRemovable | 8 | Node can be removed from its parent. |
CDP::StudioAPI::eNodeCanAddChildren | 16 | Node allows children to be added to itself. |
CDP::StudioAPI::eNodeIsRenamable | 32 | Node can be renamed. |
CDP::StudioAPI::eNodeIsInternal | 64 | Hint that node is part of internal implementation and should not be visible in UI. |
CDP::StudioAPI::eNodeIsImportant | 128 | Hint that node is important and should always be visible in UI. |
typedef StudioAPI::CDPNodeModeFlags
Utilizes CDP::Generic::Flags<T> to create a type safe flags class from CDP::StudioAPI::CDPNodeMode.
typedef StudioAPI::CDPNodePermissionFlags
enum StudioAPI::CDPNodePermissions
enum StudioAPI::CDPNodeType
CDPNodeType defines possible node cdp base types. This indicates the closest CDP base class of the node.
Note: Duplicates StudioAPIProtobuf::CDPNodeType and should not be changed.
Constant | Value | Description |
---|---|---|
CDP::StudioAPI::eUNDEFINED_NODE | -1 | Node type is not defined for uninitialized nodes. |
CDP::StudioAPI::eCDP_SYSTEM_NODE | 0 | Node representing a system. |
CDP::StudioAPI::eCDP_APPLICATION_NODE | 1 | Node representing a application in system. |
CDP::StudioAPI::eCDP_COMPONENT_NODE | 2 | Node representing a component in application or in parent component. |
CDP::StudioAPI::eCDP_OBJECT_NODE | 3 | Node representing a object in component or application. |
CDP::StudioAPI::eCDP_MESSAGE_NODE | 4 | Node representing a message in object, component or application. |
CDP::StudioAPI::eCDP_BASE_OBJECT_NODE | 5 | Node representing a baseobject in component or application. |
CDP::StudioAPI::eCDP_PROPERTY_NODE | 6 | Node representing a property in baseobject, object, component or application. |
CDP::StudioAPI::eCDP_SETTING_NODE | 7 | Node representing a setting in property. |
CDP::StudioAPI::eCDP_ENUM_NODE | 8 | Node representing a enum. |
CDP::StudioAPI::eCDP_OPERATOR_BASE_NODE | 9 | Node representing a operatorbase. |
CDP::StudioAPI::eCDP_NODE | 10 | Node representing simplest node. |
CDP::StudioAPI::eCDP_USERTYPE_NODE | 100 | Not to be used. Start of Protocol buffer extension values. |
enum StudioAPI::CDPValueType
This enum CDPValueType defines possible node value types.
Note: Duplicates StudioAPIProtobuf::CDPValueType and should not be changed.
Constant | Value | Description |
---|---|---|
CDP::StudioAPI::eUNDEFINED | 0 | Value type for non value nodes. |
CDP::StudioAPI::eDOUBLE | 1 | C++ double type used for high precision real numbers. |
CDP::StudioAPI::eUINT64 | 2 | C++ uint64_t type used for 64 bit unsigned natural numbers. |
CDP::StudioAPI::eINT64 | 3 | C++ int64_t type used for 64 bit signed natural numbers. |
CDP::StudioAPI::eFLOAT | 4 | C++ float type type used for low precision real numbers. |
CDP::StudioAPI::eUINT | 5 | C++ unsigned int type used for 32 bit unsigned natural numbers. |
CDP::StudioAPI::eINT | 6 | C++ int type used for 32 bit signed natural numbers. |
CDP::StudioAPI::eUSHORT | 7 | C++ unsigned short type used for 16 bit unsigned natural numbers. |
CDP::StudioAPI::eSHORT | 8 | C++ short type used for 16 bit signed natural numbers. |
CDP::StudioAPI::eUCHAR | 9 | C++ unsigned char type used for 8 bit unsigned natural numbers. |
CDP::StudioAPI::eCHAR | 10 | C++ char type used for 8 bit signed natural numbers. |
CDP::StudioAPI::eBOOL | 11 | C++ bool type used for 1 bit true/false values. |
CDP::StudioAPI::eSTRING | 12 | C++ string type used for text values. |
CDP::StudioAPI::eVALUEUSERTYPE | 100 | Not to be used. Start of Protocol buffer extension values. |
typedef StudioAPI::NodeList
Function Documentation
CDPNodePermissionFlags StudioAPI::Permissions(const std::string &permissionString)
std::string StudioAPI::Permissions(CDPNodePermissionFlags permissionFlags)
Get started with CDP Studio today
Let us help you take your great ideas and turn them into the products your customer will love.