Class Attribute
Version 1.0
Modified 26-MAY-2023 14:29:29.00
 Definition of an attribute.
 The Attribute object reside in a class volume as a child of an ObjBodyDef object.

SysBody attributes pwr_sClass_Attribute
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.
Int32 Filler   LongWord size alignment.


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
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       Only read access in runtime environment. Pointers should
                        not be interpreted by an object editor.
 PWR_MASK_CLASS         Attribute is specified by a class.
 PWR_MASK_SUPERCLASS    Attribute specifies the superclass for a class.
 PWR_MASK_BUFFER        Attribute is a 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.
 PWR_MASK_DISABLEATTR   Attribute can be disabled and a disable attribute is
                        defined..
 PWR_MASK_RTHIDE        Attribute is not viewed in runtime.
 PWR_MASK_NEWATTRIBUTE  Internal flag indicating that this attribute is created
                        in the last session.

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.

Filler Attribute
Class Attribute
Type Int32
Flags NOWBL | INVISIBLE | RTHIDE
Body SysBody
 LongWord size alignment.