Documentation Home Page RT-LAB Home Page
Pour la documentation en FRANÇAIS, utilisez l'outil de traduction de votre navigateur Chrome, Edge ou Safari. Voir un exemple.

C-API | OP_OBJECT_TYPE

Description

Gives the type of an RT-LAB object.

There are both single objects and list objects. Objects may own list objects and list objects may own many objects of their corresponding type.

Usage

typedef enum{

// SINGLE OBJECTS

OP_TYPE_INVALID,

OP_TYPE_UNKNOWN,

OP_TYPE_RTLAB,

OP_TYPE_PROJECT,

OP_TYPE_MODEL,

OP_TYPE_SUBSYSTEM,

OP_TYPE_CLIENT,

OP_TYPE_SELECTION,

OP_TYPE_TARGET,

OP_TYPE_ENVIRONMENT_VARIABLE,

OP_TYPE_DRIVE_PATH_MAPPING,

OP_TYPE_TRANSFER_FILE,

OP_TYPE_PARAMETER,

OP_TYPE_VARIABLE,

OP_TYPE_SIGNAL,

OP_TYPE_ALIAS,

OP_TYPE_LIVELAB,

OP_TYPE_LIMIT,

// LIST OBJECTS

OP_TYPE_LIST_FLAG,

OP_TYPE_UNKNOWN_LIST,

OP_TYPE_RTLAB_LIST,

OP_TYPE_PROJECT_LIST,

OP_TYPE_MODEL_LIST,

OP_TYPE_SUBSYSTEM_LIST,

OP_TYPE_CLIENT_LIST,

OP_TYPE_SELECTION_LIST,

OP_TYPE_TARGET_LIST,

OP_TYPE_ENVIRONMENT_VARIABLE_LIST,

OP_TYPE_DRIVE_PATH_MAPPING_LIST,

OP_TYPE_TRANSFER_FILE_LIST,

OP_TYPE_PARAMETER_LIST,

OP_TYPE_VARIABLE_LIST,

OP_TYPE_SIGNAL_LIST,

OP_TYPE_ALIAS_LIST,

OP_TYPE_LIVELAB_LIST,

OP_TYPE_LIMIT_LIST

}OP_OBJECT_TYPE;


Elements
  • OP_TYPE_INVALID (-1): This object is not a valid RT-LAB object.
  • OP_TYPE_UNKNOWN (0): This object is an RT-LAB object but the type is currently unknown or of no interest.
  • OP_TYPE_RTLAB (1): This object is RT-LAB as a whole. This is the object that contains the default values for many settings. The fixed reference ID of this object is OP_RTLAB_OBJ. There is exactly one (1) instance of this type.
  • OP_TYPE_PROJECT (2): This object is a project. Currently, only one project is supported per Controller and has a fixed reference ID OP_SINGLE_PROJECT.
  • OP_TYPE_MODEL (3): This object is a model. There may be anywhere between 0 and 253 Models per project.
  • OP_TYPE_SUBSYSTEM (4): This object is a subsystem. There may be anywhere between 1 and 253 Subsystemsper Model.
  • OP_TYPE_CLIENT (5): This object is a client. A client represents an entity that issues commands to RT-LAB. Each client has its own connection handle.
  • OP_TYPE_SELECTION (6): This object is a selection. Selections contain symbolic links to other RT-LAB objects. Each client has its own selection.
  • OP_TYPE_TARGET (7): This object is a target. A target executes one or more of a model’s subsystems.
  • OP_TYPE_ENVIRONMENT_VARIABLE (8): This object is an environment variable. Many objects many own environment variables.
  • OP_TYPE_DRIVE_PATH_MAPPING (9): This object is a drive/path mapping.
  • OP_TYPE_TRANSFER_FILE (10): This object is a transfer file.
  • OP_TYPE_PARAMETER (11): This object is a parameter. Parameters are model subsystem block settings.
  • OP_TYPE_VARIABLE (12): This object is a variable.
  • OP_TYPE_SIGNAL (13): This object is a signal.
  • OP_TYPE_ALIAS (14): This object is an alias.
  • OP_TYPE_LIVELAB (15): This object is LiveLab as a whole. There is exactly one (1) instance of this type.
  • OP_TYPE_LIMIT (16): This object is not a valid RT-LAB object, but will always be the last single object.
  • OP_TYPE_LIST_FLAG (64): This value is used to differentiate single objects from lists of objects.
  • OP_TYPE_UNKNOWN_LIST (64): This list object is an RT-LAB object list but the type is currently unknown or of no interest.
  • OP_TYPE_RTLAB_LIST (65): This list object is not a valid RT-LAB object list since OP_RTLAB_OBJ is the parent of all objects and does not have a parent list.
  • OP_TYPE_PROJECT_LIST (66): This list object contains project. Currently only one project is supported and has the fixed reference ID OP_SINGLE_PROJECT.
  • OP_TYPE_MODEL_LIST (67): This lsit object contains models.
  • OP_TYPE_SUBSYSTEM_LIST (68): This list object contains subsystems.
  • OP_TYPE_CLIENT_LIST (69): This list object contains clients.
  • OP_TYPE_SELECTION_LIST (70): This list object contains selections.
  • OP_TYPE_TARGET_LIST (71): This list object contains targets.
  • OP_TYPE_ENVIRONMENT_VARIABLE_LIST (72): This list object contains environment variables.
  • OP_TYPE_DRIVE_PATH_MAPPING_LIST (73): This list object contains drive/path mappings.
  • OP_TYPE_TRANSFER_FILE_LIST (74): This list object contains transfer files.
  • OP_TYPE_PARAMETER_LIST (75): This list object contains parameters.
  • OP_TYPE_VARIABLE_LIST (76): This list object contains variables.
  • OP_TYPE_SIGNAL_LIST (77): This list object contains signals.
  • OP_TYPE_ALIAS_LIST (78): This list object contains aliases.
  • OP_TYPE_LIVELAB_LIST (79): This list object contains LiveLab objects.
  • OP_TYPE_LIMIT_LIST (80): This list object is not a valid RT-LAB object, but will always be the last list object.
Notes

OP_RTLAB_OBJ is of type OP_TYPE_RTLAB and directly or indirectly owns all other objects.

OP_RTLAB_OBJ owns an object of type OP_TYPE_PROJECT_LIST which owns an object of type OP_TYPE_PROJECT with reference ID OP_SINGLE_PROJECT. This is the only project currently supported. The intermediate object of type OP_TYPE_PROJECT_LIST may seem superfluous. It is merely present to maintain the paradigm of single objects owning lists and lists owning single objects.

Related ItemsOP_ALIAS_INFO.
Library and Header

WINDOWSLINUX
Static LibraryOpalApi.lib-
Dynamic LibraryOpalApi.dlllibOpalApi.so
Header FileOpalApi.hOpalApi.h

OPAL-RT TECHNOLOGIES, Inc. | 1751, rue Richardson, bureau 1060 | Montréal, Québec Canada H3K 1G6 | opal-rt.com | +1 514-935-2323
Follow OPAL-RT: LinkedIn | Facebook | YouTube | X/Twitter