Class Attribute


Version     1.0     29-JUL-2022 08:44:19.00

Description

  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


Attribute PgmName

Type      PgmName
Flags     
Body      SysBody
Class     $Attribute

Description
  Name for the element the c-struct.

Attribute Type

Type      Int32
Flags     NOEDIT | NOWBL
Body      SysBody
Class     $Attribute

Description
  Compiled system type.

Attribute Offset

Type      UInt32
Flags     NOEDIT | NOWBL
Body      SysBody
Class     $Attribute

Description
  Compiled offset in body.

Attribute Size

Type      UInt32
Flags     
Body      SysBody
Class     $Attribute

Description
  Compiled size, number of bytes.

Attribute Flags

Type      AdefFlags
Flags     
Body      SysBody
Class     $Attribute

Description
  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.

Attribute Elements

Type      UInt32
Flags     
Body      SysBody
Class     $Attribute

Description
  If array, number of elements..

Attribute ParamIndex

Type      UInt32
Flags     NOEDIT | NOWBL
Body      SysBody
Class     $Attribute

Description
  Index of attribute within a body.

Attribute TypeRef

Type      TypeId
Flags     ALWAYSWBL
Body      SysBody
Class     $Attribute

Description
  Reference to the object defining the type.

Attribute Filler

Type      Int32
Flags     NOWBL | INVISIBLE | RTHIDE
Body      SysBody
Class     $Attribute

Description
  LongWord size alignment.