Class Input
Version 1.0
Modified 26-MAY-2023 14:29:29.00
 Definition of an input attribute.
 Input attributes are used in plc-objects, and are displayed as input pins
 on the plc symbol. The input contains a pointer and a value. If the input
 is connected in the plc editor, the value is fetched from the connected
 attribute, otherwise the value is fetched from the local value in the
 input attribute. The local value can be set in the object editor.
 If the PWR_MASK_RTVIRTUAL bit is set in the Flag word, the input does not
 exist in runtime, and no local value can be set.
 The Input object reside in a class volume as a child of an ObjBodyDef object.

SysBody attributes pwr_sClass_Input
PgmName PgmName   Name for the element the c-struct.
Int32 Type   Compiled system type.
UInt32 Offset   Compiled offset in body.
UInt32 Size   Compiled size, number of bytes.
AdefFlags Flags   Bitmask for attribute properties.
UInt32 Elements   If array, number of elements..
UInt32 ParamIndex   Index of attribute within a body.
TypeId TypeRef   Reference to the object defining the type.
GraphName GraphName   Name displayed in plc editor.
UInt32 InputType   Direction of input or output pin.
UInt32 NiNaAnnot   The value will be displayed in the plc symbol.
Boolean NiNaCond   Special condition for an annotation to be drawn or not.
Boolean NiNaSegments   Special condition for the number of segments to be displayed for an objid.
UInt32 DebAnnot   Not used.
UInt32 ConPointNr   Connection point in plc symbol for this attribute.


Template Object
Elements 1


Attributes detail


PgmName Attribute
Class Attribute
Type PgmName
Flags
Body SysBody
 Name for the element the c-struct.

Type Attribute
Class Attribute
Type Int32
Flags NOEDIT | NOWBL
Body SysBody
 Compiled system type.

Offset Attribute
Class Attribute
Type UInt32
Flags NOEDIT | NOWBL
Body SysBody
 Compiled offset in body.

Size Attribute
Class Attribute
Type UInt32
Flags NOEDIT | NOWBL
Body SysBody
 Compiled size, number of bytes.

Flags Attribute
Class Attribute
Type AdefFlags
Flags
Body SysBody
 Bitmask for attribute properties.

 PWR_MASK_POINTER       Attribute is a pointer.
 PWR_MASK_ARRAY         Attribute is an array.
 PWR_MASK_STATE         Value will not be loaded from develompent database.
 PWR_MASK_CONST         Value is a constant.
 PWR_MASK_RTVIRTUAL     Attribute doesn't exist in runtime environment
 PWR_MASK_DEVBODYREF    Used for input and output attributes, where the
                        connection refers another object which is found
                        in the first attribute of type Objid in DevBody.
 PWR_MASK_OBJIDSELF     Contains the objects own objid. Used in timer attributes.
 PWR_MASK_NOEDIT        Value can't be changed in object editor.
 PWR_MASK_INVISIBLE     Attribute will not be displayed in object editor.
 PWR_MASK_REFDIRECT     If an AttrRef, should not give value pointed to.
 PWR_MASK_NOINVERT      Can't be inverted in plc editor.
 PWR_MASK_NOREMOVE      Can't be removed in plc editor.
 PWR_MASK_RTDBREF       Contains an rtdb reference.
 PWR_MASK_PRIVATE       Should not be interpreted by an object editor.
 PWR_MASK_ISCLASS       Attribute is specified by a class.
 PWR_MASK_SUBCLASS      ...
 PWR_MASK_BUFFER        ...
 PWR_MASK_NOWBL         Attribute will not be to printed to wb_load file.
 PWR_MASK_ALWAYSWBL     Attribute is always printed to wb_load file.

Elements Attribute
Class Attribute
Type UInt32
Flags
Body SysBody
 If array, number of elements..

ParamIndex Attribute
Class Attribute
Type UInt32
Flags NOEDIT | NOWBL
Body SysBody
 Index of attribute within a body.

TypeRef Attribute
Class Attribute
Type TypeId
Flags ALWAYSWBL
Body SysBody
 Reference to the object defining the type.

GraphName Attribute
Class Attribute
Type GraphName
Flags
Body SysBody
 Name displayed in plc editor.

InputType Attribute
Class Attribute
Type UInt32
Flags
Body SysBody
 Direction of input or output pin.
 Implemented in graphmethod 16 only.
 0: Ordinare direction, left for inputs and right for outputs.
 1: Pin positioned on top of symbol, direction up
 2: Pin positioned on bottom of symbol, direction down

NiNaAnnot Attribute
Class Attribute
Type UInt32
Flags
Body SysBody
 The value will be displayed in the plc symbol. The plc symbol
 contains places where individual text can be drawn, annotations.
 The annotations are numbered, and NiNaAnnot is the number of the
 annotation where the value of the attribute will be drawn.

NiNaCond Attribute
Class Attribute
Type Boolean
Flags
Body SysBody
 Special condition for an annotation to be drawn or not.
 In some cases, the condition whether an attribute should be displayed
 in an annotation or not, can be configured from the object editor.
 If NiNaCond is true, the condition will be fetched from an attribute
 named Show'attributename' in devbody.
 For example, the DSup object has an attribute ShowDetectText which
 is the condition for DetectText to be displayed in the plc symbol.

NiNaSegments Attribute
Class Attribute
Type Boolean
Flags
Body SysBody
 Special condition for the number of segments to be displayed for an
 objid.
 In some cases, the number of name segments for an objid attribute
 that should be displayed in an annotatation, can be configured from
 the object editor.
 If NiNaSegments is true, the number of segments will be fetched
 from an attribute named 'attributename'Segments in devbody.
 For example, the GetDi object has an attribute SigChanConSegments
 which contains the number of segments of SigChanCon to be displayed
 in the plc symbol.

DebAnnot Attribute
Class Attribute
Type UInt32
Flags
Body SysBody
 Not used.

ConPointNr Attribute
Class Attribute
Type UInt32
Flags
Body SysBody
 Number of the connection point for this attribute.
 Used only in graphmethod 4.
 Graphmethod 4 contains a number of symbols with fix number of input
 and output pins. ConPointNr relates an attribute to a specific input
 or output pin.