libiec61850  1.2.0
Macros | Functions
Helper functions to create common data classes (CDC) using the dynamic model API

Macros

#define CDC_OPTION_PICS_SUBST   (1 << 0)
 optional parts of CDCs More...
 
#define CDC_OPTION_BLK_ENA   (1 << 1)
 
#define CDC_OPTION_DESC   (1 << 2)
 
#define CDC_OPTION_DESC_UNICODE   (1 << 3)
 
#define CDC_OPTION_AC_DLNDA   (1 << 4)
 
#define CDC_OPTION_AC_DLN   (1 << 5)
 
#define CDC_OPTION_UNIT   (1 << 6)
 
#define CDC_OPTION_FROZEN_VALUE   (1 << 7)
 
#define CDC_OPTION_ADDR   (1 << 8)
 
#define CDC_OPTION_ADDINFO   (1 << 9)
 
#define CDC_OPTION_INST_MAG   (1 << 10)
 
#define CDC_OPTION_RANGE   (1 << 11)
 
#define CDC_OPTION_UNIT_MULTIPLIER   (1 << 12)
 
#define CDC_OPTION_AC_SCAV   (1 << 13)
 
#define CDC_OPTION_MIN   (1 << 14)
 
#define CDC_OPTION_MAX   (1 << 15)
 
#define CDC_OPTION_AC_CLC_O   (1 << 16)
 
#define CDC_OPTION_RANGE_ANG   (1 << 17)
 
#define CDC_OPTION_PHASE_A   (1 << 18)
 
#define CDC_OPTION_PHASE_B   (1 << 19)
 
#define CDC_OPTION_PHASE_C   (1 << 20)
 
#define CDC_OPTION_PHASE_NEUT   (1 << 21)
 
#define CDC_OPTION_PHASES_ABC   (CDC_OPTION_PHASE_A | CDC_OPTION_PHASE_B | CDC_OPTION_PHASE_C)
 
#define CDC_OPTION_PHASES_ALL   (CDC_OPTION_PHASE_A | CDC_OPTION_PHASE_B | CDC_OPTION_PHASE_C | CDC_OPTION_PHASE_NEUT)
 
#define CDC_OPTION_STEP_SIZE   (1 << 22)
 
#define CDC_OPTION_ANGLE_REF   (1 << 23)
 
#define CDC_OPTION_DPL_HWREV   (1 << 17)
 
#define CDC_OPTION_DPL_SWREV   (1 << 18)
 
#define CDC_OPTION_DPL_SERNUM   (1 << 19)
 
#define CDC_OPTION_DPL_MODEL   (1 << 20)
 
#define CDC_OPTION_DPL_LOCATION   (1 << 21)
 
#define CDC_OPTION_AC_LN0_M   (1 << 24)
 
#define CDC_OPTION_AC_LN0_EX   (1 << 25)
 
#define CDC_OPTION_AC_DLD_M   (1 << 26)
 
#define CDC_CTL_MODEL_NONE   0
 Control model types. More...
 
#define CDC_CTL_MODEL_DIRECT_NORMAL   1
 
#define CDC_CTL_MODEL_SBO_NORMAL   2
 
#define CDC_CTL_MODEL_DIRECT_ENHANCED   3
 
#define CDC_CTL_MODEL_SBO_ENHANCED   4
 
#define CDC_CTL_MODEL_HAS_CANCEL   (1 << 4)
 
#define CDC_CTL_MODEL_IS_TIME_ACTIVATED   (1 << 5)
 
#define CDC_CTL_OPTION_ORIGIN   (1 << 6)
 
#define CDC_CTL_OPTION_CTL_NUM   (1 << 7)
 
#define CDC_CTL_OPTION_ST_SELD   (1 << 8)
 
#define CDC_CTL_OPTION_OP_RCVD   (1 << 9)
 
#define CDC_CTL_OPTION_OP_OK   (1 << 10)
 
#define CDC_CTL_OPTION_T_OP_OK   (1 << 11)
 
#define CDC_CTL_OPTION_SBO_TIMEOUT   (1 << 12)
 
#define CDC_CTL_OPTION_SBO_CLASS   (1 << 13)
 
#define CDC_CTL_OPTION_OPER_TIMEOUT   (1 << 14)
 
#define CDC_OPTION_61400_MIN_MX_VAL   (1 << 10)
 
#define CDC_OPTION_61400_MAX_MX_VAL   (1 << 11)
 
#define CDC_OPTION_61400_TOT_AV_VAL   (1 << 12)
 
#define CDC_OPTION_61400_SDV_VAL   (1 << 13)
 
#define CDC_OPTION_61400_INC_RATE   (1 << 14)
 
#define CDC_OPTION_61400_DEC_RATE   (1 << 15)
 
#define CDC_OPTION_61400_SP_ACS   (1 << 16)
 
#define CDC_OPTION_61400_CHA_PER_RS   (1 << 17)
 
#define CDC_OPTION_61400_CM_ACS   (1 << 18)
 
#define CDC_OPTION_61400_TM_TOT   (1 << 19)
 
#define CDC_OPTION_61400_COUNTING_DAILY   (1 << 20)
 
#define CDC_OPTION_61400_COUNTING_MONTHLY   (1 << 21)
 
#define CDC_OPTION_61400_COUNTING_YEARLY   (1 << 22)
 
#define CDC_OPTION_61400_COUNTING_TOTAL   (1 << 23)
 
#define CDC_OPTION_61400_COUNTING_ALL   (CDC_OPTION_61400_COUNTING_DAILY | CDC_OPTION_61400_COUNTING_MONTHLY | CDC_OPTION_61400_COUNTING_YEARLY | CDC_OPTION_61400_COUNTING_TOTAL)
 

Functions

DataAttribute * CAC_AnalogueValue_create (const char *name, ModelNode *parent, FunctionalConstraint fc, uint8_t triggerOptions, bool isIntegerNotFloat)
 
DataAttribute * CAC_ValWithTrans_create (const char *name, ModelNode *parent, FunctionalConstraint fc, uint8_t triggerOptions, bool hasTransientIndicator)
 create a ValWithTrans constructed data attribute More...
 
DataAttribute * CAC_Vector_create (const char *name, ModelNode *parent, uint32_t options, FunctionalConstraint fc, uint8_t triggerOptions)
 
DataAttribute * CAC_Point_create (const char *name, ModelNode *parent, FunctionalConstraint fc, uint8_t triggerOptions, bool hasZVal)
 
DataAttribute * CAC_ScaledValueConfig_create (const char *name, ModelNode *parent)
 
DataAttribute * CAC_Unit_create (const char *name, ModelNode *parent, bool hasMagnitude)
 
DataAttribute * CDA_OperBoolean (ModelNode *parent, bool isTImeActivated)
 
DataObject * CDC_SPS_create (const char *dataObjectName, ModelNode *parent, uint32_t options)
 
DataObject * CDC_DPS_create (const char *dataObjectName, ModelNode *parent, uint32_t options)
 
DataObject * CDC_INS_create (const char *dataObjectName, ModelNode *parent, uint32_t options)
 
DataObject * CDC_ENS_create (const char *dataObjectName, ModelNode *parent, uint32_t options)
 
DataObject * CDC_BCR_create (const char *dataObjectName, ModelNode *parent, uint32_t options)
 
DataObject * CDC_VSS_create (const char *dataObjectName, ModelNode *parent, uint32_t options)
 
DataObject * CDC_SEC_create (const char *dataObjectName, ModelNode *parent, uint32_t options)
 create a new SEC (Security violation) CDC instance (data object) More...
 
DataObject * CDC_MV_create (const char *dataObjectName, ModelNode *parent, uint32_t options, bool isIntegerNotFloat)
 create a new MV (Measured value) CDC instance (data object) More...
 
DataObject * CDC_CMV_create (const char *dataObjectName, ModelNode *parent, uint32_t options)
 
DataObject * CDC_SAV_create (const char *dataObjectName, ModelNode *parent, uint32_t options, bool isIntegerNotFloat)
 create a new SAV (Sampled analog value) CDC instance (data object) More...
 
DataObject * CDC_LPL_create (const char *dataObjectName, ModelNode *parent, uint32_t options)
 create a new LPL (Logical node name plate) CDC instance (data object) More...
 
DataObject * CDC_DPL_create (const char *dataObjectName, ModelNode *parent, uint32_t options)
 create a new DPL (Device name plate) CDC instance (data object) More...
 
DataObject * CDC_HST_create (const char *dataObjectName, ModelNode *parent, uint32_t options, uint16_t maxPts)
 
DataObject * CDC_ACD_create (const char *dataObjectName, ModelNode *parent, uint32_t options)
 Directional protection activation information (ACD) More...
 
DataObject * CDC_ACT_create (const char *dataObjectName, ModelNode *parent, uint32_t options)
 Protection activation information (ACT) More...
 
DataObject * CDC_SPG_create (const char *dataObjectName, ModelNode *parent, uint32_t options)
 Single point setting (SPG) More...
 
DataObject * CDC_VSG_create (const char *dataObjectName, ModelNode *parent, uint32_t options)
 Visible string setting (VSG) More...
 
DataObject * CDC_ENG_create (const char *dataObjectName, ModelNode *parent, uint32_t options)
 Enumerated status setting (ENG) More...
 
DataObject * CDC_ING_create (const char *dataObjectName, ModelNode *parent, uint32_t options)
 Integer status setting (ING) More...
 
DataObject * CDC_ASG_create (const char *dataObjectName, ModelNode *parent, uint32_t options, bool isIntegerNotFloat)
 Analogue Setting (ASG) More...
 
DataObject * CDC_WYE_create (const char *dataObjectName, ModelNode *parent, uint32_t options)
 Phase to ground/neutral related measured values of a three-phase system (WYE) More...
 
DataObject * CDC_DEL_create (const char *dataObjectName, ModelNode *parent, uint32_t options)
 Phase to phase related measured values of a three-phase system (DEL) More...
 
DataObject * CDC_SPC_create (const char *dataObjectName, ModelNode *parent, uint32_t options, uint32_t controlOptions)
 Controllable single point (SPC) More...
 
DataObject * CDC_DPC_create (const char *dataObjectName, ModelNode *parent, uint32_t options, uint32_t controlOptions)
 Controllable double point (DPC) More...
 
DataObject * CDC_INC_create (const char *dataObjectName, ModelNode *parent, uint32_t options, uint32_t controlOptions)
 Controllable integer status (INC) More...
 
DataObject * CDC_ENC_create (const char *dataObjectName, ModelNode *parent, uint32_t options, uint32_t controlOptions)
 Controllable enumerated status (ENC) More...
 
DataObject * CDC_BSC_create (const char *dataObjectName, ModelNode *parent, uint32_t options, uint32_t controlOptions, bool hasTransientIndicator)
 Controllable enumerated status (ENC) More...
 
DataObject * CDC_APC_create (const char *dataObjectName, ModelNode *parent, uint32_t options, uint32_t controlOptions, bool isIntegerNotFloat)
 Controllable analogue process value (APC) More...
 
DataObject * CDC_SPV_create (const char *dataObjectName, ModelNode *parent, uint32_t options, uint32_t controlOptions, uint32_t wpOptions, bool hasChaManRs)
 
DataObject * CDC_STV_create (const char *dataObjectName, ModelNode *parent, uint32_t options, uint32_t controlOptions, uint32_t wpOptions, bool hasOldStatus)
 
DataObject * CDC_CMD_create (const char *dataObjectName, ModelNode *parent, uint32_t options, uint32_t controlOptions, uint32_t wpOptions, bool hasOldStatus, bool hasCmTm, bool hasCmCt)
 
DataObject * CDC_ALM_create (const char *dataObjectName, ModelNode *parent, uint32_t options, uint32_t controlOptions, uint32_t wpOptions, bool hasOldStatus)
 
DataObject * CDC_CTE_create (const char *dataObjectName, ModelNode *parent, uint32_t options, uint32_t controlOptions, uint32_t wpOptions, bool hasHisRs)
 
DataObject * CDC_TMS_create (const char *dataObjectName, ModelNode *parent, uint32_t options, uint32_t controlOptions, uint32_t wpOptions, bool hasHisRs)
 

Detailed Description

Currently supports CDCs from IEC 61850-7-3:2010 (Edition 2)

Macro Definition Documentation

#define CDC_CTL_MODEL_DIRECT_ENHANCED   3
#define CDC_CTL_MODEL_DIRECT_NORMAL   1
#define CDC_CTL_MODEL_HAS_CANCEL   (1 << 4)
#define CDC_CTL_MODEL_IS_TIME_ACTIVATED   (1 << 5)
#define CDC_CTL_MODEL_NONE   0

Control model types.

#define CDC_CTL_MODEL_SBO_ENHANCED   4
#define CDC_CTL_MODEL_SBO_NORMAL   2
#define CDC_CTL_OPTION_CTL_NUM   (1 << 7)
#define CDC_CTL_OPTION_OP_OK   (1 << 10)
#define CDC_CTL_OPTION_OP_RCVD   (1 << 9)
#define CDC_CTL_OPTION_OPER_TIMEOUT   (1 << 14)
#define CDC_CTL_OPTION_ORIGIN   (1 << 6)
#define CDC_CTL_OPTION_SBO_CLASS   (1 << 13)
#define CDC_CTL_OPTION_SBO_TIMEOUT   (1 << 12)
#define CDC_CTL_OPTION_ST_SELD   (1 << 8)
#define CDC_CTL_OPTION_T_OP_OK   (1 << 11)
#define CDC_OPTION_61400_CHA_PER_RS   (1 << 17)

Time periodical reset (hourly/daily/weekly/monthly)

#define CDC_OPTION_61400_CM_ACS   (1 << 18)

Command access level

All counting data

#define CDC_OPTION_61400_COUNTING_DAILY   (1 << 20)

Daily counting data

#define CDC_OPTION_61400_COUNTING_MONTHLY   (1 << 21)

Monthly counting data

#define CDC_OPTION_61400_COUNTING_TOTAL   (1 << 23)

Total counting data

#define CDC_OPTION_61400_COUNTING_YEARLY   (1 << 22)

Yearly counting data

#define CDC_OPTION_61400_DEC_RATE   (1 << 15)

Rate of decrease

#define CDC_OPTION_61400_INC_RATE   (1 << 14)

Rate of increase

#define CDC_OPTION_61400_MAX_MX_VAL   (1 << 11)

Maximum measured value

#define CDC_OPTION_61400_MIN_MX_VAL   (1 << 10)

Minimum measured value

#define CDC_OPTION_61400_SDV_VAL   (1 << 13)

Standard deviation of data

#define CDC_OPTION_61400_SP_ACS   (1 << 16)

Setpoint or parameter access level (low/medium/high)

#define CDC_OPTION_61400_TM_TOT   (1 << 19)

Total time duration of a state

#define CDC_OPTION_61400_TOT_AV_VAL   (1 << 12)

Total average value of data

#define CDC_OPTION_AC_CLC_O   (1 << 16)
#define CDC_OPTION_AC_DLD_M   (1 << 26)
#define CDC_OPTION_AC_DLN   (1 << 5)

Add dataNs (data namespace) required for extended CDCs

#define CDC_OPTION_AC_DLNDA   (1 << 4)

Add cdcNs and cdcName required when a CDC is an extension to the standard

#define CDC_OPTION_AC_LN0_EX   (1 << 25)
#define CDC_OPTION_AC_LN0_M   (1 << 24)

Add mandatory data attributes for LLN0 (e.g. LBL configRef)

#define CDC_OPTION_AC_SCAV   (1 << 13)
#define CDC_OPTION_ADDINFO   (1 << 9)
#define CDC_OPTION_ADDR   (1 << 8)
#define CDC_OPTION_ANGLE_REF   (1 << 23)
#define CDC_OPTION_BLK_ENA   (1 << 1)
#define CDC_OPTION_DESC   (1 << 2)

Add d (description) data attribute

#define CDC_OPTION_DESC_UNICODE   (1 << 3)

Add dU (unicode description) data attribute

#define CDC_OPTION_DPL_HWREV   (1 << 17)

Options that are only valid for DPL CDC

#define CDC_OPTION_DPL_LOCATION   (1 << 21)
#define CDC_OPTION_DPL_MODEL   (1 << 20)
#define CDC_OPTION_DPL_SERNUM   (1 << 19)
#define CDC_OPTION_DPL_SWREV   (1 << 18)
#define CDC_OPTION_FROZEN_VALUE   (1 << 7)
#define CDC_OPTION_INST_MAG   (1 << 10)
#define CDC_OPTION_MAX   (1 << 15)
#define CDC_OPTION_MIN   (1 << 14)
#define CDC_OPTION_PHASE_A   (1 << 18)
#define CDC_OPTION_PHASE_B   (1 << 19)
#define CDC_OPTION_PHASE_C   (1 << 20)
#define CDC_OPTION_PHASE_NEUT   (1 << 21)
#define CDC_OPTION_PHASES_ABC   (CDC_OPTION_PHASE_A | CDC_OPTION_PHASE_B | CDC_OPTION_PHASE_C)
#define CDC_OPTION_PICS_SUBST   (1 << 0)

optional parts of CDCs

#define CDC_OPTION_RANGE   (1 << 11)
#define CDC_OPTION_RANGE_ANG   (1 << 17)
#define CDC_OPTION_STEP_SIZE   (1 << 22)
#define CDC_OPTION_UNIT   (1 << 6)

Add the unit data attribute

#define CDC_OPTION_UNIT_MULTIPLIER   (1 << 12)

Function Documentation

DataAttribute* CAC_AnalogueValue_create ( const char *  name,
ModelNode *  parent,
FunctionalConstraint  fc,
uint8_t  triggerOptions,
bool  isIntegerNotFloat 
)
DataAttribute* CAC_Point_create ( const char *  name,
ModelNode *  parent,
FunctionalConstraint  fc,
uint8_t  triggerOptions,
bool  hasZVal 
)
DataAttribute* CAC_ScaledValueConfig_create ( const char *  name,
ModelNode *  parent 
)
DataAttribute* CAC_Unit_create ( const char *  name,
ModelNode *  parent,
bool  hasMagnitude 
)
DataAttribute* CAC_ValWithTrans_create ( const char *  name,
ModelNode *  parent,
FunctionalConstraint  fc,
uint8_t  triggerOptions,
bool  hasTransientIndicator 
)

create a ValWithTrans constructed data attribute

Parameters
hasTransInd
DataAttribute* CAC_Vector_create ( const char *  name,
ModelNode *  parent,
uint32_t  options,
FunctionalConstraint  fc,
uint8_t  triggerOptions 
)

CDC_OPTION_AC_CLC_O

DataAttribute* CDA_OperBoolean ( ModelNode *  parent,
bool  isTImeActivated 
)
DataObject* CDC_ACD_create ( const char *  dataObjectName,
ModelNode *  parent,
uint32_t  options 
)

Directional protection activation information (ACD)

Allowed parent types are LogicalNode and DataObject.

possible options: CDC_OPTION_PHASE_A CDC_OPTION_PHASE_B CDC_OPTION_PHASE_C CDC_OPTION_PHASE_NEUT CDC_OPTION_PHASES_ABC CDC_OPTION_PHASES_ALL standard (include standard optional elements like extension namespaces and descriptions (d, dU).

Parameters
dataObjectNamethe name of the new object
parentthe parent of the new data object (either a LogicalNode or another DataObject)
optionsbit mask to encode required optional elements
DataObject* CDC_ACT_create ( const char *  dataObjectName,
ModelNode *  parent,
uint32_t  options 
)

Protection activation information (ACT)

DataObject* CDC_ALM_create ( const char *  dataObjectName,
ModelNode *  parent,
uint32_t  options,
uint32_t  controlOptions,
uint32_t  wpOptions,
bool  hasOldStatus 
)
DataObject* CDC_APC_create ( const char *  dataObjectName,
ModelNode *  parent,
uint32_t  options,
uint32_t  controlOptions,
bool  isIntegerNotFloat 
)

Controllable analogue process value (APC)

CDC_OPTION_IS_TIME_ACTICATED

substitution options CDC_OPTION_BLK_ENA standard description and namespace options

Parameters
dataObjectNamethe name of the new object
parentthe parent of the new data object (either a LogicalNode or another DataObject)
optionsbit mask to encode required optional elements
controlOptionsspecify which control model to set as default and other control specific options
isIntegerNotFloat
DataObject* CDC_ASG_create ( const char *  dataObjectName,
ModelNode *  parent,
uint32_t  options,
bool  isIntegerNotFloat 
)

Analogue Setting (ASG)

possible options: CDC_OPTION_UNIT CDC_OPTION_MIN CDC_OPTION_MAX CDC_OPTION_STEP_SIZE standard (include standard optional elements like extension namespaces and descriptions (d, dU).

DataObject* CDC_BCR_create ( const char *  dataObjectName,
ModelNode *  parent,
uint32_t  options 
)
DataObject* CDC_BSC_create ( const char *  dataObjectName,
ModelNode *  parent,
uint32_t  options,
uint32_t  controlOptions,
bool  hasTransientIndicator 
)

Controllable enumerated status (ENC)

CDC_OPTION_IS_TIME_ACTICATED

substitution options CDC_OPTION_BLK_ENA standard description and namespace options

Parameters
dataObjectNamethe name of the new object
parentthe parent of the new data object (either a LogicalNode or another DataObject)
optionsbit mask to encode required optional elements
controlOptionsspecify which control model to set as default and other control specific options
hasTransientIndicatorspecifies if the step position information contains the transient indicator
DataObject* CDC_CMD_create ( const char *  dataObjectName,
ModelNode *  parent,
uint32_t  options,
uint32_t  controlOptions,
uint32_t  wpOptions,
bool  hasOldStatus,
bool  hasCmTm,
bool  hasCmCt 
)
DataObject* CDC_CMV_create ( const char *  dataObjectName,
ModelNode *  parent,
uint32_t  options 
)

CDC_OPTION_INST_MAG CDC_OPTION_RANGE

DataObject* CDC_CTE_create ( const char *  dataObjectName,
ModelNode *  parent,
uint32_t  options,
uint32_t  controlOptions,
uint32_t  wpOptions,
bool  hasHisRs 
)
DataObject* CDC_DEL_create ( const char *  dataObjectName,
ModelNode *  parent,
uint32_t  options 
)

Phase to phase related measured values of a three-phase system (DEL)

possible options: CDC_OPTION_ANGLE_REF

DataObject* CDC_DPC_create ( const char *  dataObjectName,
ModelNode *  parent,
uint32_t  options,
uint32_t  controlOptions 
)

Controllable double point (DPC)

CDC_OPTION_IS_TIME_ACTICATED

substitution options CDC_OPTION_BLK_ENA standard description and namespace options

Parameters
dataObjectNamethe name of the new object
parentthe parent of the new data object (either a LogicalNode or another DataObject)
optionsbit mask to encode required optional elements
defaultControlModelspecify which control model to set as default.
DataObject* CDC_DPL_create ( const char *  dataObjectName,
ModelNode *  parent,
uint32_t  options 
)

create a new DPL (Device name plate) CDC instance (data object)

Allowed parent type is LogicalNode

possible options: CDC_OPTION_DPL_HWREV (includes "hwRev") CDC_OPTION_DPL_SWREV (includes "swRev") CDC_OPTION_DPL_SERNUM (includes "serNum") CDC_OPTION_DPL_MODEL (includes "model") CDC_OPTION_DPL_LOCATION (includes "location") standard options: CDC_OPTION_AC_DLNDA (include "cdcNs" and "cdcName") CDC_OPTION_AC_DLN (includes "dataNs")

Parameters
dataObjectNamethe name of the new object
parentthe parent of the new data object (either a LogicalNode or another DataObject)
optionsbit mask to encode required optional elements
Returns
new DataObject instance
DataObject* CDC_DPS_create ( const char *  dataObjectName,
ModelNode *  parent,
uint32_t  options 
)
DataObject* CDC_ENC_create ( const char *  dataObjectName,
ModelNode *  parent,
uint32_t  options,
uint32_t  controlOptions 
)

Controllable enumerated status (ENC)

CDC_OPTION_IS_TIME_ACTICATED

substitution options CDC_OPTION_BLK_ENA standard description and namespace options

Parameters
dataObjectNamethe name of the new object
parentthe parent of the new data object (either a LogicalNode or another DataObject)
optionsbit mask to encode required optional elements
defaultControlModelspecify which control model to set as default.
DataObject* CDC_ENG_create ( const char *  dataObjectName,
ModelNode *  parent,
uint32_t  options 
)

Enumerated status setting (ENG)

Parameters
dataObjectNamethe name of the new object
parentthe parent of the new data object (either a LogicalNode or another DataObject)
optionsbit mask to encode required optional elements
DataObject* CDC_ENS_create ( const char *  dataObjectName,
ModelNode *  parent,
uint32_t  options 
)
DataObject* CDC_HST_create ( const char *  dataObjectName,
ModelNode *  parent,
uint32_t  options,
uint16_t  maxPts 
)
DataObject* CDC_INC_create ( const char *  dataObjectName,
ModelNode *  parent,
uint32_t  options,
uint32_t  controlOptions 
)

Controllable integer status (INC)

CDC_OPTION_IS_TIME_ACTICATED

CDC_OPTION_MIN CDC_OPTION_MAX CDC_OPTION_STEP_SIZE

substitution options CDC_OPTION_BLK_ENA standard description and namespace options

Parameters
dataObjectNamethe name of the new object
parentthe parent of the new data object (either a LogicalNode or another DataObject)
optionsbit mask to encode required optional elements
defaultControlModelspecify which control model to set as default.
DataObject* CDC_ING_create ( const char *  dataObjectName,
ModelNode *  parent,
uint32_t  options 
)

Integer status setting (ING)

possible options: CDC_OPTION_UNIT CDC_OPTION_MIN CDC_OPTION_MAX CDC_OPTION_STEP_SIZE standard (include standard optional elements like extension namespaces and descriptions (d, dU).

DataObject* CDC_INS_create ( const char *  dataObjectName,
ModelNode *  parent,
uint32_t  options 
)
DataObject* CDC_LPL_create ( const char *  dataObjectName,
ModelNode *  parent,
uint32_t  options 
)

create a new LPL (Logical node name plate) CDC instance (data object)

Allowed parent type is LogicalNode

possible options: CDC_OPTION_AC_LN0_M (includes "configRev") CDC_OPTION_AC_LN0_EX (includes "ldNs") CDC_OPTION_AC_DLD_M (includes "lnNs") standard options: CDC_OPTION_DESC (includes "d") CDC_OPTION_DESC_UNICODE (include "du") CDC_OPTION_AC_DLNDA (include "cdcNs" and "cdcName") CDC_OPTION_AC_DLN (includes "dataNs")

Parameters
dataObjectNamethe name of the new object
parentthe parent of the new data object (either a LogicalNode or another DataObject)
optionsbit mask to encode required optional elements
Returns
new DataObject instance
DataObject* CDC_MV_create ( const char *  dataObjectName,
ModelNode *  parent,
uint32_t  options,
bool  isIntegerNotFloat 
)

create a new MV (Measured value) CDC instance (data object)

Allowed parent types are LogicalNode and DataObject.

possible options: CDC_OPTION_INST_MAG CDC_OPTION_RANGE CDC_OPTION_PICS_SUBST standard (include standard optional elements like extension namespaces and descriptions (d, dU).

Parameters
dataObjectNamethe name of the new object
parentthe parent of the new data object (either a LogicalNode or another DataObject)
optionsbit mask to encode required optional elements
isIntegerNotFloatif true the AnalogueValue instance have integer instead of float
DataObject* CDC_SAV_create ( const char *  dataObjectName,
ModelNode *  parent,
uint32_t  options,
bool  isIntegerNotFloat 
)

create a new SAV (Sampled analog value) CDC instance (data object)

Allowed parent types are LogicalNode and DataObject.

possible options: CDC_OPTION_UNIT CDC_OPTION_AC_SCAV CDC_OPTION_MIN CDC_OPTION_MAX standard (include standard optional elements like extension namespaces and descriptions (d, dU).

Parameters
dataObjectNamethe name of the new object
parentthe parent of the new data object (either a LogicalNode or another DataObject)
optionsbit mask to encode required optional elements
isIntegerNotFloatif true the AnalogueValue instance have integer instead of float
DataObject* CDC_SEC_create ( const char *  dataObjectName,
ModelNode *  parent,
uint32_t  options 
)

create a new SEC (Security violation) CDC instance (data object)

Allowed parent types are LogicalNode and DataObject.

options: standard (include standard optional elements like extension namespaces and descriptions (d, dU).

CDC_OPTION_ADDR (address of the client causing the security violation) CDC_OPTION_ADDINFO (additional info text)

Parameters
dataObjectNamethe name of the new object
parentthe parent of the new data object (either a LogicalNode or another DataObject)
optionsbit mask to encode required optional elements
DataObject* CDC_SPC_create ( const char *  dataObjectName,
ModelNode *  parent,
uint32_t  options,
uint32_t  controlOptions 
)

Controllable single point (SPC)

Parameters
controlOptionsspecify which control model to set as default and other control related options
DataObject* CDC_SPG_create ( const char *  dataObjectName,
ModelNode *  parent,
uint32_t  options 
)

Single point setting (SPG)

Parameters
dataObjectNamethe name of the new object
parentthe parent of the new data object (either a LogicalNode or another DataObject)
optionsbit mask to encode required optional elements
DataObject* CDC_SPS_create ( const char *  dataObjectName,
ModelNode *  parent,
uint32_t  options 
)
DataObject* CDC_SPV_create ( const char *  dataObjectName,
ModelNode *  parent,
uint32_t  options,
uint32_t  controlOptions,
uint32_t  wpOptions,
bool  hasChaManRs 
)
DataObject* CDC_STV_create ( const char *  dataObjectName,
ModelNode *  parent,
uint32_t  options,
uint32_t  controlOptions,
uint32_t  wpOptions,
bool  hasOldStatus 
)
DataObject* CDC_TMS_create ( const char *  dataObjectName,
ModelNode *  parent,
uint32_t  options,
uint32_t  controlOptions,
uint32_t  wpOptions,
bool  hasHisRs 
)
DataObject* CDC_VSG_create ( const char *  dataObjectName,
ModelNode *  parent,
uint32_t  options 
)

Visible string setting (VSG)

Parameters
dataObjectNamethe name of the new object
parentthe parent of the new data object (either a LogicalNode or another DataObject)
optionsbit mask to encode required optional elements
DataObject* CDC_VSS_create ( const char *  dataObjectName,
ModelNode *  parent,
uint32_t  options 
)
DataObject* CDC_WYE_create ( const char *  dataObjectName,
ModelNode *  parent,
uint32_t  options 
)

Phase to ground/neutral related measured values of a three-phase system (WYE)

possible options: CDC_OPTION_ANGLE_REF