Commit 8250da92 authored by claes's avatar claes

*** empty log message ***

parent 5aeed6e7
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
SObject NMps:Class SObject NMps:Class
Object ConvDef $ClassDef 39 Object ConvDef $ClassDef 39
Body SysBody Body SysBody
Attr Editor = pwr_eEditor_Standard Attr Editor = pwr_eEditor_AttrEd
EndBody EndBody
! !
! CONVDEF Runtime Body ! CONVDEF Runtime Body
......
...@@ -10,7 +10,7 @@ SObject NMps:Class ...@@ -10,7 +10,7 @@ SObject NMps:Class
Attr Editor = pwr_eEditor_AttrEd Attr Editor = pwr_eEditor_AttrEd
Attr Method = pwr_eMethod_Standard Attr Method = pwr_eMethod_Standard
EndBody EndBody
Object RtBody $ObjBodyDef Object RtBody $ObjBodyDef 1
Body SysBody Body SysBody
Attr StructName = "NMpsTransConfig" Attr StructName = "NMpsTransConfig"
EndBody EndBody
......
...@@ -68,7 +68,7 @@ ...@@ -68,7 +68,7 @@
#define pwr_cSizObjName 31 #define pwr_cSizObjName 31
#define pwr_cSizPgmName 31 #define pwr_cSizPgmName 31
#define pwr_cSizStructName 31 #define pwr_cSizStructName 31
#define pwr_cSizGraphName 7 #define pwr_cSizGraphName 15
#define pwr_cSizXRef 31 #define pwr_cSizXRef 31
#define pwr_cSizAttrName 31 #define pwr_cSizAttrName 31
#define pwr_cSizPathName 63 #define pwr_cSizPathName 63
......
...@@ -53,8 +53,9 @@ typedef enum { ...@@ -53,8 +53,9 @@ typedef enum {
#define cdh_tixToTid( Vid, Tyg, Tix) (0 + (Vid << 16) + (1 << 15) + (Tyg << 11) + Tix) #define cdh_tixToTid( Vid, Tyg, Tix) (0 + (Vid << 16) + (1 << 15) + (Tyg << 11) + Tix)
#define cdh_cixToOix( Cix, Bix, Aix) (0 + (1 << 31) + (Cix << 18) + (Bix << 15) + Aix) #define cdh_cixToOix( Cix, Bix, Aix) (0 + (1 << 31) + (Cix << 18) + (Bix << 15) + Aix)
#define cdh_tixToOix( Tyg, Tix) (0 + (1 << 31) + (1 << 30) + (Tyg << 26) + (Tix << 15)) #define cdh_tixToOix( Tyg, Tix) (0 + (1 << 31) + (1 << 30) + (Tyg << 26) + (Tix << 15))
#define cdh_oixToBix( Oix) ((Oix >> 15) & 5) #define cdh_oixToBix( Oix) ((Oix >> 15) & 7)
#define cdh_oixToCix( Oix) ((Oix >> 18) & 0xfff) #define cdh_oixToCix( Oix) ((Oix >> 18) & 0xfff)
#define cdh_oixToAix( Oix) (Oix & 0xfff)
typedef struct { typedef struct {
unsigned int oix : 32; unsigned int oix : 32;
......
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
SObject NMps:Class SObject NMps:Class
Object ConvDef $ClassDef 39 Object ConvDef $ClassDef 39
Body SysBody Body SysBody
Attr Editor = pwr_eEditor_Standard Attr Editor = pwr_eEditor_AttrEd
EndBody EndBody
! !
! CONVDEF Runtime Body ! CONVDEF Runtime Body
......
...@@ -10,7 +10,7 @@ SObject NMps:Class ...@@ -10,7 +10,7 @@ SObject NMps:Class
Attr Editor = pwr_eEditor_AttrEd Attr Editor = pwr_eEditor_AttrEd
Attr Method = pwr_eMethod_Standard Attr Method = pwr_eMethod_Standard
EndBody EndBody
Object RtBody $ObjBodyDef Object RtBody $ObjBodyDef 1
Body SysBody Body SysBody
Attr StructName = "NMpsTransConfig" Attr StructName = "NMpsTransConfig"
EndBody EndBody
......
! mps_v.wb_load -- Loads the mps volume
!
! PROVIEW/R
! Copyright (C) 1996 by Comator Process AB.
!
! NOTE !
! This class is defined before class definitions are completed,
! and is thus loaded with DObject etc.
!
!
Volume mps pwr_eClass_ClassVolume 0.0.0.254
EndVolume
...@@ -168,7 +168,7 @@ SObject pwrb:Class ...@@ -168,7 +168,7 @@ SObject pwrb:Class
Attr objname = "And" Attr objname = "And"
Attr graphname = "And" Attr graphname = "And"
Attr debugpar = "Status" Attr debugpar = "Status"
Endbody EndBody
EndObject EndObject
EndObject EndObject
EndSObject EndSObject
...@@ -663,7 +663,7 @@ SObject pwrb:Class ...@@ -663,7 +663,7 @@ SObject pwrb:Class
Attr objname = "ASup" Attr objname = "ASup"
Attr graphname = "ASup" Attr graphname = "ASup"
Attr debugpar = "Action" Attr debugpar = "Action"
Endbody EndBody
EndObject EndObject
Object Template ASup Object Template ASup
Body RtBody Body RtBody
......
...@@ -92,7 +92,7 @@ SObject pwrb:Class ...@@ -92,7 +92,7 @@ SObject pwrb:Class
Attr executeordermethod = 2 Attr executeordermethod = 2
Attr objname = "AtoStr" Attr objname = "AtoStr"
Attr graphname = "AtoStr" Attr graphname = "AtoStr"
Endbody EndBody
EndObject EndObject
Object Template AtoStr Object Template AtoStr
Body RtBody Body RtBody
......
...@@ -215,7 +215,7 @@ SObject pwrb:Class ...@@ -215,7 +215,7 @@ SObject pwrb:Class
Attr objname = "Count" Attr objname = "Count"
Attr graphname = "Count" Attr graphname = "Count"
Attr debugpar = "" Attr debugpar = ""
Endbody EndBody
EndObject EndObject
EndObject EndObject
EndSObject EndSObject
...@@ -86,7 +86,7 @@ SObject pwrb:Class ...@@ -86,7 +86,7 @@ SObject pwrb:Class
Attr objname = "CSub" Attr objname = "CSub"
Attr graphname = "CSub" Attr graphname = "CSub"
Attr debugpar = "in" Attr debugpar = "in"
Endbody EndBody
EndObject EndObject
Object Template CSub Object Template CSub
Body RtBody Body RtBody
......
...@@ -628,7 +628,7 @@ SObject pwrb:Class ...@@ -628,7 +628,7 @@ SObject pwrb:Class
Attr objname = "DSup" Attr objname = "DSup"
Attr graphname = "DSup" Attr graphname = "DSup"
Attr debugpar = "Action" Attr debugpar = "Action"
Endbody EndBody
EndObject EndObject
Object Template DSup Object Template DSup
Body RtBody Body RtBody
......
...@@ -91,7 +91,7 @@ SObject pwrb:Class ...@@ -91,7 +91,7 @@ SObject pwrb:Class
Attr executeordermethod = 2 Attr executeordermethod = 2
Attr objname = "DtoStr" Attr objname = "DtoStr"
Attr graphname = "DtoStr" Attr graphname = "DtoStr"
Endbody EndBody
EndObject EndObject
Object Template DtoStr Object Template DtoStr
Body RtBody Body RtBody
......
...@@ -99,7 +99,7 @@ SObject pwrb:Class ...@@ -99,7 +99,7 @@ SObject pwrb:Class
Attr objname = "Edge" Attr objname = "Edge"
Attr graphname = "Edge" Attr graphname = "Edge"
Attr debugpar = "Status" Attr debugpar = "Status"
Endbody EndBody
EndObject EndObject
EndObject EndObject
EndSObject EndSObject
...@@ -81,7 +81,7 @@ SObject pwrb:Class ...@@ -81,7 +81,7 @@ SObject pwrb:Class
Attr objname = "Inv" Attr objname = "Inv"
Attr graphname = "Inv" Attr graphname = "Inv"
Attr debugpar = "Status" Attr debugpar = "Status"
Endbody EndBody
EndObject EndObject
EndObject EndObject
EndSObject EndSObject
...@@ -91,7 +91,7 @@ SObject pwrb:Class ...@@ -91,7 +91,7 @@ SObject pwrb:Class
Attr executeordermethod = 2 Attr executeordermethod = 2
Attr objname = "ItoStr" Attr objname = "ItoStr"
Attr graphname = "ItoStr" Attr graphname = "ItoStr"
Endbody EndBody
EndObject EndObject
Object Template ItoStr Object Template ItoStr
Body RtBody Body RtBody
......
! pwrb_c_mpsbackup.wb_load -- Defines the class MpsBackup.
!
! PROVIEW/R
! Copyright (C) 1996 by Comator Process AB.
!
! <Description>.
!
! Range ldh_eDId_Base
!
SObject mps:Class
Object MpsBackup $ClassDef 148
Body SysBody
Attr Editor = pwr_eEditor_AttrEd
Attr Method = pwr_eMethod_Standard
EndBody
Object RtBody $ObjBodyDef 1
Body SysBody
Attr StructName = "mpsBackup"
EndBody
Object BackupEnviroment $Attribute 1
Body SysBody
Attr PgmName = "BackupEnviroment"
Attr TypeRef = "pwrs:Type-$Boolean"
EndBody
EndObject
Object EnableBackup $Attribute 2
Body SysBody
Attr PgmName = "EnableBackup"
Attr TypeRef = "pwrs:Type-$Boolean"
EndBody
EndObject
Object LoadBackup $Attribute 3
Body SysBody
Attr PgmName = "LoadBackup"
Attr TypeRef = "pwrs:Type-$Boolean"
EndBody
EndObject
EndObject
EndObject
EndSObject
! pwrb_c_mpsin.wb_load -- Defines the class MpsIn.
!
! PROVIEW/R
! Copyright (C) 1996 by Comator Process AB.
!
! <Description>.
!
! Range ldh_eDId_Base
!
SObject mps:Class
Object MpsIn $ClassDef 149
Body SysBody
Attr Editor = pwr_eEditor_AttrEd
Attr Method = pwr_eMethod_Standard
EndBody
Object RtBody $ObjBodyDef 1
Body SysBody
Attr StructName = "mpsIn"
EndBody
Object Out $Output 1
Body SysBody
Attr PgmName = "Out"
Attr Flags |= PWR_MASK_RTVIRTUAL
Attr TypeRef = "pwrs:Type-$Int32"
Attr GraphName = "remove"
Attr ConPointNr = 0
EndBody
EndObject
Object ExecuteOrder $Intern 2
Body SysBody
Attr PgmName = "ExecuteOrder"
Attr TypeRef = "pwrs:Type-$UInt32"
EndBody
EndObject
Object FilePointer $Intern 3
Body SysBody
Attr PgmName = "FilePointer"
Attr TypeRef = "pwrs:Type-$UInt32"
EndBody
EndObject
Object ObjPosition $Intern 4
Body SysBody
Attr PgmName = "ObjPosition"
Attr TypeRef = "pwrs:Type-$UInt32"
EndBody
EndObject
Object ActiveFlag $Intern 5
Body SysBody
Attr PgmName = "ActiveFlag"
Attr TypeRef = "pwrs:Type-$Boolean"
EndBody
EndObject
Object UpdateCounter $Intern 6
Body SysBody
Attr PgmName = "UpdateCounter"
Attr TypeRef = "pwrs:Type-$UInt32"
EndBody
EndObject
Object TypeOfOperation $Intern 7
Body SysBody
Attr PgmName = "TypeOfOperation"
Attr TypeRef = "pwrs:Type-$UInt8"
EndBody
EndObject
Object TriggMode $Intern 8
Body SysBody
Attr PgmName = "TriggMode"
Attr TypeRef = "pwrs:Type-$UInt8"
EndBody
EndObject
Object Channel $Intern 9
Body SysBody
Attr PgmName = "Channel"
Attr TypeRef = "pwrs:Type-$UInt8"
EndBody
EndObject
Object InputPosition $Intern 10
Body SysBody
Attr PgmName = "InputPosition"
Attr TypeRef = "pwrs:Type-$UInt16"
EndBody
EndObject
Object MtrlObjname $Intern 11
Body SysBody
Attr PgmName = "MtrlObjname"
Attr TypeRef = "pwrs:Type-$String80"
EndBody
EndObject
Object AcceptMtrlTypes $Intern 12
Body SysBody
Attr Flags |= PWR_MASK_ARRAY
Attr Elements = 6
Attr PgmName = "AcceptMtrlTypes"
Attr TypeRef = "pwrs:Type-$Int32"
EndBody
EndObject
Object MaxAcceptMtrlTypes $Intern 13
Body SysBody
Attr PgmName = "MaxAcceptMtrlTypes"
Attr TypeRef = "pwrs:Type-$UInt8"
EndBody
EndObject
Object StartCellRoutine $Intern 14
Body SysBody
Attr PgmName = "StartCellRoutine"
Attr TypeRef = "pwrs:Type-$Boolean"
EndBody
EndObject
Object FrontIndex $Intern 15
Body SysBody
Attr PgmName = "FrontIndex"
Attr TypeRef = "pwrs:Type-$UInt16"
EndBody
EndObject
Object RearIndex $Intern 16
Body SysBody
Attr PgmName = "RearIndex"
Attr TypeRef = "pwrs:Type-$UInt16"
EndBody
EndObject
Object MaxIndexOfCircList $Intern 17
Body SysBody
Attr PgmName = "MaxIndexOfCircList"
Attr TypeRef = "pwrs:Type-$UInt16"
EndBody
EndObject
Object CircList $Intern 18
Body SysBody
Attr Flags |= PWR_MASK_ARRAY
Attr Elements = 15
Attr PgmName = "CircList"
Attr TypeRef = "pwrs:Type-$String80"
EndBody
EndObject
EndObject
Object DevBody $ObjBodyDef 2
Object PlcNode $Buffer 1
Body SysBody
Attr Class = pwr_eClass_PlcNode
EndBody
EndObject
EndObject
Object GraphPlcNode $GraphPlcNode
Body SysBody
Attr object_type = 220
Attr parameters[0] = 0
Attr parameters[1] = 0
Attr parameters[2] = 1
Attr parameters[3] = 0
Attr subwindows = 0
Attr graphmethod = 4
Attr graphindex = 25
Attr default_mask[0] = 0
Attr default_mask[1] = 1
Attr segname_annotation = 1
Attr compmethod = 2
Attr compindex = 1
Attr tracemethod = 0
Attr traceindex = 1
Attr objname = "IN"
Attr graphname = "INcell"
Attr debugpar = ""
EndBody
EndObject
Object Template MpsIn
Body RtBody
Attr UpdateCounter = 1
Attr MaxAcceptMtrlTypes = 6
EndBody
EndObject
EndObject
EndSObject
! pwrb_c_mpsmodelbackup.wb_load -- Defines the class MpsModelBackup.
!
! PROVIEW/R
! Copyright (C) 1996 by Comator Process AB.
!
! <Description>.
!
! Range ldh_eDId_Base
!
SObject mps:Class
Object MpsModelBackup $ClassDef 150
Body SysBody
Attr Editor = pwr_eEditor_AttrEd
Attr Method = pwr_eMethod_Standard
EndBody
Object RtBody $ObjBodyDef 1
Body SysBody
Attr StructName = "mpsModelBackup"
EndBody
Object FileName $Attribute 1
Body SysBody
Attr PgmName = "FileName"
Attr TypeRef = "pwrs:Type-$String80"
EndBody
EndObject
Object ModelName $Attribute 2
Body SysBody
Attr PgmName = "ModelName"
Attr TypeRef = "pwrs:Type-$String80"
EndBody
EndObject
EndObject
EndObject
EndSObject
! pwrb_c_mpsmtrlbackup.wb_load -- Defines the class MpsMtrlBackup.
!
! PROVIEW/R
! Copyright (C) 1996 by Comator Process AB.
!
! <Description>.
!
! Range ldh_eDId_Base
!
SObject mps:Class
Object MpsMtrlBackup $ClassDef 151
Body SysBody
Attr Editor = pwr_eEditor_AttrEd
Attr Method = pwr_eMethod_Standard
EndBody
Object RtBody $ObjBodyDef 1
Body SysBody
Attr StructName = "mpsMtrlBackup"
EndBody
Object FileName $Attribute 1
Body SysBody
Attr PgmName = "FileName"
Attr TypeRef = "pwrs:Type-$String80"
EndBody
EndObject
Object MtrlClass $Attribute 2
Body SysBody
Attr PgmName = "MtrlClass"
Attr TypeRef = "pwrs:Type-$Objid"
EndBody
EndObject
Object MaxNbOfRecords $Attribute 3
Body SysBody
Attr PgmName = "MaxNbOfRecords"
Attr TypeRef = "pwrs:Type-$Int32"
EndBody
EndObject
EndObject
Object Template MpsMtrlBackup
Body RtBody
Attr MaxNbOfRecords = 400
EndBody
EndObject
EndObject
EndSObject
! pwrb_c_mpsout.wb_load -- Defines the class MpsOut.
!
! PROVIEW/R
! Copyright (C) 1996 by Comator Process AB.
!
! <Description>.
!
! Range ldh_eDId_Base
!
SObject mps:Class
Object MpsOut $ClassDef 152
Body SysBody
Attr Editor = pwr_eEditor_AttrEd
Attr Method = pwr_eMethod_Standard
EndBody
Object RtBody $ObjBodyDef 1
Body SysBody
Attr StructName = "mpsOut"
EndBody
Object In $Output 1
Body SysBody
Attr PgmName = "In"
Attr Flags |= PWR_MASK_RTVIRTUAL
Attr TypeRef = "pwrs:Type-$Int32"
Attr GraphName = "load"
Attr ConPointNr = 0
EndBody
EndObject
Object ExecuteOrder $Intern 2
Body SysBody
Attr PgmName = "ExecuteOrder"
Attr TypeRef = "pwrs:Type-$UInt32"
EndBody
EndObject
Object FilePointer $Intern 3
Body SysBody
Attr PgmName = "FilePointer"
Attr TypeRef = "pwrs:Type-$UInt32"
EndBody
EndObject
Object ObjPosition $Intern 4
Body SysBody
Attr PgmName = "ObjPosition"
Attr TypeRef = "pwrs:Type-$UInt32"
EndBody
EndObject
Object ActiveFlag $Intern 5
Body SysBody
Attr PgmName = "ActiveFlag"
Attr TypeRef = "pwrs:Type-$Boolean"
EndBody
EndObject
Object UpdateCounter $Intern 6
Body SysBody
Attr PgmName = "UpdateCounter"
Attr TypeRef = "pwrs:Type-$UInt32"
EndBody
EndObject
Object TypeOfOperation $Intern 7
Body SysBody
Attr PgmName = "TypeOfOperation"
Attr TypeRef = "pwrs:Type-$UInt8"
EndBody
EndObject
Object TriggMode $Intern 8
Body SysBody
Attr PgmName = "TriggMode"
Attr TypeRef = "pwrs:Type-$UInt8"
EndBody
EndObject
Object Channel $Intern 9
Body SysBody
Attr PgmName = "Channel"
Attr TypeRef = "pwrs:Type-$UInt8"
EndBody
EndObject
Object InputPosition $Intern 10
Body SysBody
Attr PgmName = "InputPosition"
Attr TypeRef = "pwrs:Type-$UInt16"
EndBody
EndObject
Object MtrlObjname $Intern 11
Body SysBody
Attr PgmName = "MtrlObjname"
Attr TypeRef = "pwrs:Type-$String80"
EndBody
EndObject
Object AcceptMtrlTypes $Intern 12
Body SysBody
Attr Flags |= PWR_MASK_ARRAY
Attr Elements = 6
Attr PgmName = "AcceptMtrlTypes"
Attr TypeRef = "pwrs:Type-$Int32"
EndBody
EndObject
Object MaxAcceptMtrlTypes $Intern 13
Body SysBody
Attr PgmName = "MaxAcceptMtrlTypes"
Attr TypeRef = "pwrs:Type-$UInt8"
EndBody
EndObject
Object StartCellRoutine $Intern 14
Body SysBody
Attr PgmName = "StartCellRoutine"
Attr TypeRef = "pwrs:Type-$Boolean"
EndBody
EndObject
Object TypeOfFinish $Intern 15
Body SysBody
Attr PgmName = "TypeOfFinish"
Attr TypeRef = "pwrs:Type-$UInt8"
EndBody
EndObject
Object TypeOfSubFinish $Intern 16
Body SysBody
Attr PgmName = "TypeOfSubFinish"
Attr TypeRef = "pwrs:Type-$String80"
EndBody
EndObject
Object TargetPAMSGroup $Intern 17
Body SysBody
Attr PgmName = "TargetPAMSGroup"
Attr TypeRef = "pwrs:Type-$UInt16"
EndBody
EndObject
Object TargetPAMSProcess $Intern 18
Body SysBody
Attr PgmName = "TargetPAMSProcess"
Attr TypeRef = "pwrs:Type-$UInt16"
EndBody
EndObject
Object DeleteFlag $Intern 19
Body SysBody
Attr PgmName = "DeleteFlag"
Attr TypeRef = "pwrs:Type-$Boolean"
EndBody
EndObject
Object ObjidOfReceivCell $Intern 20
Body SysBody
Attr PgmName = "ObjidOfReceivCell"
Attr TypeRef = "pwrs:Type-$UInt32"
EndBody
EndObject
Object ChannelOfReceivCell $Intern 21
Body SysBody
Attr PgmName = "ChannelOfReceivCell"
Attr TypeRef = "pwrs:Type-$UInt32"
EndBody
EndObject
Object FrontIndex $Intern 22
Body SysBody
Attr PgmName = "FrontIndex"
Attr TypeRef = "pwrs:Type-$UInt16"
EndBody
EndObject
Object RearIndex $Intern 23
Body SysBody
Attr PgmName = "RearIndex"
Attr TypeRef = "pwrs:Type-$UInt16"
EndBody
EndObject
Object MaxIndexOfCircList $Intern 24
Body SysBody
Attr PgmName = "MaxIndexOfCircList"
Attr TypeRef = "pwrs:Type-$UInt16"
EndBody
EndObject
Object CircList $Intern 25
Body SysBody
Attr Flags |= PWR_MASK_ARRAY
Attr Elements = 15
Attr PgmName = "CircList"
Attr TypeRef = "pwrs:Type-$String80"
EndBody
EndObject
EndObject
Object DevBody $ObjBodyDef 2
Object PlcNode $Buffer 1
Body SysBody
Attr Class = pwr_eClass_PlcNode
EndBody
EndObject
EndObject
Object GraphPlcNode $GraphPlcNode
Body SysBody
Attr object_type = 225
Attr parameters[0] = 0
Attr parameters[1] = 0
Attr parameters[2] = 1
Attr parameters[3] = 0
Attr subwindows = 0
Attr graphmethod = 4
Attr graphindex = 30
Attr default_mask[0] = 1
Attr default_mask[1] = 0
Attr segname_annotation = 1
Attr compmethod = 2
Attr compindex = 1
Attr tracemethod = 0
Attr traceindex = 1
Attr objname = "OUT"
Attr graphname = "OUTcell"
Attr debugpar = ""
EndBody
EndObject
Object Template MpsOut
Body RtBody
Attr UpdateCounter = 1
Attr MaxAcceptMtrlTypes = 6
Attr TypeOfFinish = 120
Attr DeleteFlag = 0
EndBody
EndObject
EndObject
EndSObject
! pwrb_c_mpsqueue.wb_load -- Defines the class MpsQueue.
!
! PROVIEW/R
! Copyright (C) 1996 by Comator Process AB.
!
! <Description>.
!
! Range ldh_eDId_Base
!
SObject mps:Class
Object MpsQueue $ClassDef 153
Body SysBody
Attr Editor = pwr_eEditor_AttrEd
Attr Method = pwr_eMethod_Standard
EndBody
Object RtBody $ObjBodyDef 1
Body SysBody
Attr StructName = "mpsQueue"
EndBody
Object In $Output 1
Body SysBody
Attr PgmName = "In"
Attr Flags |= PWR_MASK_RTVIRTUAL
Attr TypeRef = "pwrs:Type-$Int32"
Attr GraphName = "load"
Attr ConPointNr = 0
EndBody
EndObject
Object Out $Output 2
Body SysBody
Attr PgmName = "Out"
Attr Flags |= PWR_MASK_RTVIRTUAL
Attr TypeRef = "pwrs:Type-$Int32"
Attr GraphName = "remove"
Attr ConPointNr = 1
EndBody
EndObject
Object ExecuteOrder $Intern 3
Body SysBody
Attr PgmName = "ExecuteOrder"
Attr TypeRef = "pwrs:Type-$UInt32"
EndBody
EndObject
Object FilePointer $Intern 4
Body SysBody
Attr PgmName = "FilePointer"
Attr TypeRef = "pwrs:Type-$UInt32"
EndBody
EndObject
Object ObjPosition $Intern 5
Body SysBody
Attr PgmName = "ObjPosition"
Attr TypeRef = "pwrs:Type-$UInt32"
EndBody
EndObject
Object ActiveFlag $Intern 6
Body SysBody
Attr PgmName = "ActiveFlag"
Attr TypeRef = "pwrs:Type-$Boolean"
EndBody
EndObject
Object UpdateCounter $Intern 7
Body SysBody
Attr PgmName = "UpdateCounter"
Attr TypeRef = "pwrs:Type-$UInt32"
EndBody
EndObject
Object TypeOfOperation $Intern 8
Body SysBody
Attr PgmName = "TypeOfOperation"
Attr TypeRef = "pwrs:Type-$UInt8"
EndBody
EndObject
Object TriggMode $Intern 9
Body SysBody
Attr PgmName = "TriggMode"
Attr TypeRef = "pwrs:Type-$UInt8"
EndBody
EndObject
Object Channel $Intern 10
Body SysBody
Attr PgmName = "Channel"
Attr TypeRef = "pwrs:Type-$UInt8"
EndBody
EndObject
Object InputPosition $Intern 11
Body SysBody
Attr PgmName = "InputPosition"
Attr TypeRef = "pwrs:Type-$UInt16"
EndBody
EndObject
Object MtrlObjname $Intern 12
Body SysBody
Attr PgmName = "MtrlObjname"
Attr TypeRef = "pwrs:Type-$String80"
EndBody
EndObject
Object AcceptMtrlTypes $Intern 13
Body SysBody
Attr Flags |= PWR_MASK_ARRAY
Attr Elements = 6
Attr PgmName = "AcceptMtrlTypes"
Attr TypeRef = "pwrs:Type-$Int32"
EndBody
EndObject
Object MaxAcceptMtrlTypes $Intern 14
Body SysBody
Attr PgmName = "MaxAcceptMtrlTypes"
Attr TypeRef = "pwrs:Type-$UInt8"
EndBody
EndObject
Object StartCellRoutine $Intern 15
Body SysBody
Attr PgmName = "StartCellRoutine"
Attr TypeRef = "pwrs:Type-$Boolean"
EndBody
EndObject
Object FrontIndex $Intern 16
Body SysBody
Attr PgmName = "FrontIndex"
Attr TypeRef = "pwrs:Type-$UInt16"
EndBody
EndObject
Object RearIndex $Intern 17
Body SysBody
Attr PgmName = "RearIndex"
Attr TypeRef = "pwrs:Type-$UInt16"
EndBody
EndObject
Object MaxIndexOfCircList $Intern 18
Body SysBody
Attr PgmName = "MaxIndexOfCircList"
Attr TypeRef = "pwrs:Type-$UInt16"
EndBody
EndObject
Object CircList $Intern 19
Body SysBody
Attr Flags |= PWR_MASK_ARRAY
Attr Elements = 15
Attr PgmName = "CircList"
Attr TypeRef = "pwrs:Type-$String80"
EndBody
EndObject
EndObject
Object DevBody $ObjBodyDef 2
Object PlcNode $Buffer 1
Body SysBody
Attr Class = pwr_eClass_PlcNode
EndBody
EndObject
EndObject
Object GraphPlcNode $GraphPlcNode
Body SysBody
Attr object_type = 221
Attr parameters[0] = 0
Attr parameters[1] = 0
Attr parameters[2] = 2
Attr parameters[3] = 0
Attr subwindows = 0
Attr graphmethod = 4
Attr graphindex = 26
Attr default_mask[0] = 1
Attr default_mask[1] = 1
Attr segname_annotation = 1
Attr compmethod = 2
Attr compindex = 1
Attr tracemethod = 0
Attr traceindex = 1
Attr objname = "QUEUE"
Attr graphname = "QUEUEcell"
Attr debugpar = ""
EndBody
EndObject
Object Template MpsQueue
Body RtBody
Attr UpdateCounter = 1
Attr MaxAcceptMtrlTypes = 6
EndBody
EndObject
EndObject
EndSObject
! pwrb_c_mpsstack.wb_load -- Defines the class MpsStack.
!
! PROVIEW/R
! Copyright (C) 1996 by Comator Process AB.
!
! <Description>.
!
! Range ldh_eDId_Base
!
SObject mps:Class
Object MpsStack $ClassDef 154
Body SysBody
Attr Editor = pwr_eEditor_AttrEd
Attr Method = pwr_eMethod_Standard
EndBody
Object RtBody $ObjBodyDef 1
Body SysBody
Attr StructName = "mpsStack"
EndBody
Object In $Output 1
Body SysBody
Attr PgmName = "In"
Attr Flags |= PWR_MASK_RTVIRTUAL
Attr TypeRef = "pwrs:Type-$Int32"
Attr GraphName = "load"
Attr ConPointNr = 0
EndBody
EndObject
Object Out $Output 2
Body SysBody
Attr PgmName = "Out"
Attr Flags |= PWR_MASK_RTVIRTUAL
Attr TypeRef = "pwrs:Type-$Int32"
Attr GraphName = "remove"
Attr ConPointNr = 1
EndBody
EndObject
Object ExecuteOrder $Intern 3
Body SysBody
Attr PgmName = "ExecuteOrder"
Attr TypeRef = "pwrs:Type-$UInt32"
EndBody
EndObject
Object FilePointer $Intern 4
Body SysBody
Attr PgmName = "FilePointer"
Attr TypeRef = "pwrs:Type-$UInt32"
EndBody
EndObject
Object ObjPosition $Intern 5
Body SysBody
Attr PgmName = "ObjPosition"
Attr TypeRef = "pwrs:Type-$UInt32"
EndBody
EndObject
Object ActiveFlag $Intern 6
Body SysBody
Attr PgmName = "ActiveFlag"
Attr TypeRef = "pwrs:Type-$Boolean"
EndBody
EndObject
Object UpdateCounter $Intern 7
Body SysBody
Attr PgmName = "UpdateCounter"
Attr TypeRef = "pwrs:Type-$UInt32"
EndBody
EndObject
Object TypeOfOperation $Intern 8
Body SysBody
Attr PgmName = "TypeOfOperation"
Attr TypeRef = "pwrs:Type-$UInt8"
EndBody
EndObject
Object TriggMode $Intern 9
Body SysBody
Attr PgmName = "TriggMode"
Attr TypeRef = "pwrs:Type-$UInt8"
EndBody
EndObject
Object Channel $Intern 10
Body SysBody
Attr PgmName = "Channel"
Attr TypeRef = "pwrs:Type-$UInt8"
EndBody
EndObject
Object InputPosition $Intern 11
Body SysBody
Attr PgmName = "InputPosition"
Attr TypeRef = "pwrs:Type-$UInt16"
EndBody
EndObject
Object MtrlObjname $Intern 12
Body SysBody
Attr PgmName = "MtrlObjname"
Attr TypeRef = "pwrs:Type-$String80"
EndBody
EndObject
Object AcceptMtrlTypes $Intern 13
Body SysBody
Attr Flags |= PWR_MASK_ARRAY
Attr Elements = 6
Attr PgmName = "AcceptMtrlTypes"
Attr TypeRef = "pwrs:Type-$Int32"
EndBody
EndObject
Object MaxAcceptMtrlTypes $Intern 14
Body SysBody
Attr PgmName = "MaxAcceptMtrlTypes"
Attr TypeRef = "pwrs:Type-$UInt8"
EndBody
EndObject
Object StartCellRoutine $Intern 15
Body SysBody
Attr PgmName = "StartCellRoutine"
Attr TypeRef = "pwrs:Type-$Boolean"
EndBody
EndObject
Object StackPointer $Intern 16
Body SysBody
Attr PgmName = "StackPointer"
Attr TypeRef = "pwrs:Type-$UInt16"
EndBody
EndObject
Object MaxStackPointer $Intern 17
Body SysBody
Attr PgmName = "MaxStackPointer"
Attr TypeRef = "pwrs:Type-$UInt16"
EndBody
EndObject
Object Stack $Intern 18
Body SysBody
Attr Flags |= PWR_MASK_ARRAY
Attr Elements = 15
Attr PgmName = "Stack"
Attr TypeRef = "pwrs:Type-$String80"
EndBody
EndObject
EndObject
Object DevBody $ObjBodyDef 2
Object PlcNode $Buffer 1
Body SysBody
Attr Class = pwr_eClass_PlcNode
EndBody
EndObject
EndObject
Object GraphPlcNode $GraphPlcNode
Body SysBody
Attr object_type = 223
Attr parameters[0] = 0
Attr parameters[1] = 0
Attr parameters[2] = 2
Attr parameters[3] = 0
Attr subwindows = 0
Attr graphmethod = 4
Attr graphindex = 27
Attr default_mask[0] = 1
Attr default_mask[1] = 1
Attr segname_annotation = 1
Attr compmethod = 2
Attr compindex = 1
Attr tracemethod = 0
Attr traceindex = 1
Attr objname = "STACK"
Attr graphname = "STACKcell"
Attr debugpar = ""
EndBody
EndObject
Object Template MpsStack
Body RtBody
Attr UpdateCounter = 1
Attr MaxAcceptMtrlTypes = 6
EndBody
EndObject
EndObject
EndSObject
! pwrb_c_mpstriggtrp.wb_load -- Defines the class MpsTriggTrp.
!
! PROVIEW/R
! Copyright (C) 1996 by Comator Process AB.
!
! <Description>.
!
! Range ldh_eDId_Base
!
SObject mps:Class
Object MpsTriggTrp $ClassDef 155
Body SysBody
Attr Editor = pwr_eEditor_AttrEd
Attr Method = pwr_eMethod_DevBodyOnly
EndBody
Object RtBody $ObjBodyDef 1
Body SysBody
Attr StructName = "mpsTriggtrp"
EndBody
Object In $Input 1
Body SysBody
Attr PgmName = "In"
Attr Flags |= PWR_MASK_RTVIRTUAL
Attr TypeRef = "pwrs:Type-$Boolean"
Attr GraphName = "in"
Attr ConPointNr = 0
EndBody
EndObject
EndObject
Object DevBody $ObjBodyDef 2
Object PlcNode $Buffer 1
Body SysBody
Attr Class = pwr_eClass_PlcNode
EndBody
EndObject
EndObject
Object GraphPlcNode $GraphPlcNode
Body SysBody
Attr object_type = 227
Attr parameters[0] = 1
Attr parameters[1] = 0
Attr parameters[2] = 0
Attr parameters[3] = 0
Attr subwindows = 0
Attr graphmethod = 4
Attr graphindex = 32
Attr default_mask[0] = 1
Attr default_mask[1] = 0
Attr segname_annotation = 0
Attr compmethod = 34
Attr compindex = 0
Attr tracemethod = 5
Attr traceindex = 1
Attr objname = "TRIGGTRP"
Attr graphname = "TRIGGTRP"
Attr debugpar = "In"
EndBody
EndObject
EndObject
EndSObject
! pwrb_c_mpstrp.wb_load -- Defines the class MpsTrp.
!
! PROVIEW/R
! Copyright (C) 1996 by Comator Process AB.
!
! <Description>.
!
! Range ldh_eDId_Base
!
SObject mps:Class
Object MpsTrp $ClassDef 156
Body SysBody
Attr Editor = pwr_eEditor_AttrEd
Attr Method = pwr_eMethod_Standard
EndBody
Object RtBody $ObjBodyDef 1
Body SysBody
Attr StructName = "mpsTrp"
EndBody
Object In $Input 1
Body SysBody
Attr PgmName = "In"
Attr Flags |= PWR_MASK_RTVIRTUAL
Attr TypeRef = "pwrs:Type-$Int32"
Attr GraphName = "remove"
Attr ConPointNr = 0
EndBody
EndObject
Object InTrigg $Input 2
Body SysBody
Attr PgmName = "InTriggFlag"
Attr TypeRef = "pwrs:Type-$Boolean"
Attr GraphName = "intrigg"
Attr ConPointNr = 1
EndBody
EndObject
Object Out $Input 3
Body SysBody
Attr PgmName = "Out"
Attr Flags |= PWR_MASK_RTVIRTUAL
Attr TypeRef = "pwrs:Type-$Int32"
Attr GraphName = "load"
Attr ConPointNr = 2
EndBody
EndObject
Object ExecuteOrder $Intern 4
Body SysBody
Attr PgmName = "ExecuteOrder"
Attr TypeRef = "pwrs:Type-$UInt32"
EndBody
EndObject
Object TriggFlag $Intern 5
Body SysBody
Attr PgmName = "TriggFlag"
Attr TypeRef = "pwrs:Type-$Boolean"
EndBody
EndObject
Object InTriggOld $Intern 6
Body SysBody
Attr PgmName = "InTriggOld"
Attr TypeRef = "pwrs:Type-$Boolean"
EndBody
EndObject
Object LoggFlag $Intern 7
Body SysBody
Attr PgmName = "LoggFlag"
Attr TypeRef = "pwrs:Type-$Boolean"
EndBody
EndObject
Object StartSenderFlag $Intern 8
Body SysBody
Attr PgmName = "StartFlag"
Attr TypeRef = "pwrs:Type-$Boolean"
EndBody
EndObject
Object StartReceiverFlag $Intern 9
Body SysBody
Attr PgmName = "StartReceiverFlag"
Attr TypeRef = "pwrs:Type-$Boolean"
EndBody
EndObject
Object TriggMode $Intern 10
Body SysBody
Attr PgmName = "TriggMode"
Attr TypeRef = "pwrs:Type-$UInt8"
EndBody
EndObject
Object NumberOfIdToMove $Intern 11
Body SysBody
Attr PgmName = "NumberOfIdToMove"
Attr TypeRef = "pwrs:Type-$UInt16"
EndBody
EndObject
Object NameOfSendCell $Intern 12
Body SysBody
Attr PgmName = "NameOfSendCell"
Attr TypeRef = "pwrs:Type-$String80"
EndBody
EndObject
Object ChannelOfSendCell $Intern 13
Body SysBody
Attr PgmName = "ChannelOfSendCell"
Attr TypeRef = "pwrs:Type-$UInt8"
EndBody
EndObject
Object ObjidOfSendCell $Intern 14
Body SysBody
Attr PgmName = "ObjidOfSendCell"
Attr TypeRef = "pwrs:Type-$UInt32"
EndBody
EndObject
Object NameOfReceivCell $Intern 15
Body SysBody
Attr PgmName = "NameOfReceivCell"
Attr TypeRef = "pwrs:Type-$String80"
EndBody
EndObject
Object ChannelOfReceivCell $Intern 16
Body SysBody
Attr PgmName = "ChannelOfReceivCell"
Attr TypeRef = "pwrs:Type-$UInt8"
EndBody
EndObject
Object ObjidOfReceivCell $Intern 17
Body SysBody
Attr PgmName = "ObjidOfReceivCell"
Attr TypeRef = "pwrs:Type-$UInt32"
EndBody
EndObject
EndObject
Object DevBody $ObjBodyDef 2
Object PlcNode $Buffer 1
Body SysBody
Attr Class = pwr_eClass_PlcNode
EndBody
EndObject
EndObject
Object GraphPlcNode $GraphPlcNode
Body SysBody
Attr object_type = 226
Attr parameters[0] = 3
Attr parameters[1] = 0
Attr parameters[2] = 0
Attr parameters[3] = 0
Attr subwindows = 1
Attr subwindow_class[0] = "pwrb:Class-WindowPlc"
Attr graphmethod = 4
Attr graphindex = 31
Attr default_mask[0] = 1
Attr default_mask[1] = 1
Attr segname_annotation = 1
Attr compmethod = 33
Attr compindex = 1
Attr tracemethod = 0
Attr traceindex = 1
Attr objname = "TRP"
Attr graphname = "TRPcell"
Attr debugpar = ""
EndBody
EndObject
Object Template MpsTrp
Body RtBody
Attr NumberOfIdToMove = 1
Attr ChannelOfSendCell = 1
Attr ChannelOfReceivCell = 1
EndBody
EndObject
EndObject
EndSObject
! pwrb_c_mpstube.wb_load -- Defines the class MpsTube.
!
! PROVIEW/R
! Copyright (C) 1996 by Comator Process AB.
!
! <Description>.
!
! Range ldh_eDId_Base
!
SObject mps:Class
Object MpsTube $ClassDef 157
Body SysBody
Attr Editor = pwr_eEditor_AttrEd
Attr Method = pwr_eMethod_Standard
EndBody
Object RtBody $ObjBodyDef 1
Body SysBody
Attr StructName = "mpsTube"
EndBody
Object InChannel_1 $Output 1
Body SysBody
Attr PgmName = "InChannel_1"
Attr Flags |= PWR_MASK_RTVIRTUAL
Attr TypeRef = "pwrs:Type-$Int32"
Attr GraphName = "load"
Attr ConPointNr = 0
EndBody
EndObject
Object InChannel_2 $Output 2
Body SysBody
Attr PgmName = "InChannel_2"
Attr Flags |= PWR_MASK_RTVIRTUAL
Attr TypeRef = "pwrs:Type-$Int32"
Attr GraphName = "load"
Attr ConPointNr = 1
EndBody
EndObject
Object OutChannel_1 $Output 3
Body SysBody
Attr PgmName = "OutChannel_1"
Attr Flags |= PWR_MASK_RTVIRTUAL
Attr TypeRef = "pwrs:Type-$Int32"
Attr GraphName = "remove"
Attr ConPointNr = 2
EndBody
EndObject
Object OutChannel_2 $Output 4
Body SysBody
Attr PgmName = "OutChannel_2"
Attr Flags |= PWR_MASK_RTVIRTUAL
Attr TypeRef = "pwrs:Type-$Int32"
Attr GraphName = "remove"
Attr ConPointNr = 3
EndBody
EndObject
Object ExecuteOrder $Intern 5
Body SysBody
Attr PgmName = "ExecuteOrder"
Attr TypeRef = "pwrs:Type-$UInt32"
EndBody
EndObject
Object FilePointer $Intern 6
Body SysBody
Attr PgmName = "FilePointer"
Attr TypeRef = "pwrs:Type-$UInt32"
EndBody
EndObject
Object ObjPosition $Intern 7
Body SysBody
Attr PgmName = "ObjPosition"
Attr TypeRef = "pwrs:Type-$UInt32"
EndBody
EndObject
Object ActiveFlag $Intern 8
Body SysBody
Attr PgmName = "ActiveFlag"
Attr TypeRef = "pwrs:Type-$Boolean"
EndBody
EndObject
Object UpdateCounter $Intern 9
Body SysBody
Attr PgmName = "UpdateCounter"
Attr TypeRef = "pwrs:Type-$UInt32"
EndBody
EndObject
Object TypeOfOperation $Intern 10
Body SysBody
Attr PgmName = "TypeOfOperation"
Attr TypeRef = "pwrs:Type-$UInt8"
EndBody
EndObject
Object TriggMode $Intern 11
Body SysBody
Attr PgmName = "TriggMode"
Attr TypeRef = "pwrs:Type-$UInt8"
EndBody
EndObject
Object Channel $Intern 12
Body SysBody
Attr PgmName = "Channel"
Attr TypeRef = "pwrs:Type-$UInt8"
EndBody
EndObject
Object InputPosition $Intern 13
Body SysBody
Attr PgmName = "InputPosition"
Attr TypeRef = "pwrs:Type-$UInt16"
EndBody
EndObject
Object MtrlObjname $Intern 14
Body SysBody
Attr PgmName = "MtrlObjname"
Attr TypeRef = "pwrs:Type-$String80"
EndBody
EndObject
Object AcceptMtrlTypes $Intern 15
Body SysBody
Attr Flags |= PWR_MASK_ARRAY
Attr Elements = 6
Attr PgmName = "AcceptMtrlTypes"
Attr TypeRef = "pwrs:Type-$Int32"
EndBody
EndObject
Object MaxAcceptMtrlTypes $Intern 16
Body SysBody
Attr PgmName = "MaxAcceptMtrlTypes"
Attr TypeRef = "pwrs:Type-$UInt8"
EndBody
EndObject
Object StartCellRoutine $Intern 17
Body SysBody
Attr PgmName = "StartCellRoutine"
Attr TypeRef = "pwrs:Type-$Boolean"
EndBody
EndObject
Object FrontIndex $Intern 18
Body SysBody
Attr PgmName = "FrontIndex"
Attr TypeRef = "pwrs:Type-$UInt16"
EndBody
EndObject
Object RearIndex $Intern 19
Body SysBody
Attr PgmName = "RearIndex"
Attr TypeRef = "pwrs:Type-$UInt16"
EndBody
EndObject
Object MaxIndexOfCircList $Intern 20
Body SysBody
Attr PgmName = "MaxIndexOfCircList"
Attr TypeRef = "pwrs:Type-$UInt16"
EndBody
EndObject
Object CircList $Intern 21
Body SysBody
Attr Flags |= PWR_MASK_ARRAY
Attr Elements = 15
Attr PgmName = "CircList"
Attr TypeRef = "pwrs:Type-$String80"
EndBody
EndObject
EndObject
Object DevBody $ObjBodyDef 2
Object PlcNode $Buffer 1
Body SysBody
Attr Class = pwr_eClass_PlcNode
EndBody
EndObject
EndObject
Object GraphPlcNode $GraphPlcNode
Body SysBody
Attr object_type = 224
Attr parameters[0] = 0
Attr parameters[1] = 0
Attr parameters[2] = 4
Attr parameters[3] = 0
Attr subwindows = 0
Attr graphmethod = 4
Attr graphindex = 29
Attr default_mask[0] = 3
Attr default_mask[1] = 3
Attr segname_annotation = 1
Attr compmethod = 2
Attr compindex = 1
Attr tracemethod = 0
Attr traceindex = 1
Attr objname = "TUBE"
Attr graphname = "TUBEcell"
Attr debugpar = ""
EndBody
EndObject
Object Template MpsTube
Body RtBody
Attr UpdateCounter = 1
Attr MaxAcceptMtrlTypes = 6
EndBody
EndObject
EndObject
EndSObject
! pwrb_c_mpsware.wb_load -- Defines the class MpsWare.
!
! PROVIEW/R
! Copyright (C) 1996 by Comator Process AB.
!
! <Description>.
!
! Range ldh_eDId_Base
!
SObject mps:Class
Object MpsWare $ClassDef 158
Body SysBody
Attr Editor = pwr_eEditor_AttrEd
Attr Method = pwr_eMethod_Standard
EndBody
Object RtBody $ObjBodyDef 1
Body SysBody
Attr StructName = "mpsWare"
EndBody
Object In $Output 1
Body SysBody
Attr PgmName = "In"
Attr Flags |= PWR_MASK_RTVIRTUAL
Attr TypeRef = "pwrs:Type-$Int32"
Attr GraphName = "load"
Attr ConPointNr = 0
EndBody
EndObject
Object Out $Output 2
Body SysBody
Attr PgmName = "Out"
Attr Flags |= PWR_MASK_RTVIRTUAL
Attr TypeRef = "pwrs:Type-$Int32"
Attr GraphName = "remove"
Attr ConPointNr = 1
EndBody
EndObject
Object ExecuteOrder $Intern 3
Body SysBody
Attr PgmName = "ExecuteOrder"
Attr TypeRef = "pwrs:Type-$UInt32"
EndBody
EndObject
Object FilePointer $Intern 4
Body SysBody
Attr PgmName = "FilePointer"
Attr TypeRef = "pwrs:Type-$UInt32"
EndBody
EndObject
Object ObjPosition $Intern 5
Body SysBody
Attr PgmName = "ObjPosition"
Attr TypeRef = "pwrs:Type-$UInt32"
EndBody
EndObject
Object ActiveFlag $Intern 6
Body SysBody
Attr PgmName = "ActiveFlag"
Attr TypeRef = "pwrs:Type-$Boolean"
EndBody
EndObject
Object UpdateCounter $Intern 7
Body SysBody
Attr PgmName = "UpdateCounter"
Attr TypeRef = "pwrs:Type-$UInt32"
EndBody
EndObject
Object TypeOfOperation $Intern 8
Body SysBody
Attr PgmName = "TypeOfOperation"
Attr TypeRef = "pwrs:Type-$UInt8"
EndBody
EndObject
Object TriggMode $Intern 9
Body SysBody
Attr PgmName = "TriggMode"
Attr TypeRef = "pwrs:Type-$UInt8"
EndBody
EndObject
Object Channel $Intern 10
Body SysBody
Attr PgmName = "Channel"
Attr TypeRef = "pwrs:Type-$UInt8"
EndBody
EndObject
Object InputPosition $Intern 11
Body SysBody
Attr PgmName = "InputPosition"
Attr TypeRef = "pwrs:Type-$UInt16"
EndBody
EndObject
Object MtrlObjname $Intern 12
Body SysBody
Attr PgmName = "MtrlObjname"
Attr TypeRef = "pwrs:Type-$String80"
EndBody
EndObject
Object AcceptMtrlTypes $Intern 13
Body SysBody
Attr Flags |= PWR_MASK_ARRAY
Attr Elements = 6
Attr PgmName = "AcceptMtrlTypes"
Attr TypeRef = "pwrs:Type-$Int32"
EndBody
EndObject
Object MaxAcceptMtrlTypes $Intern 14
Body SysBody
Attr PgmName = "MaxAcceptMtrlTypes"
Attr TypeRef = "pwrs:Type-$UInt8"
EndBody
EndObject
Object StartCellRoutine $Intern 15
Body SysBody
Attr PgmName = "StartCellRoutine"
Attr TypeRef = "pwrs:Type-$Boolean"
EndBody
EndObject
Object MaxWareContent $Intern 16
Body SysBody
Attr PgmName = "MaxWareContent"
Attr TypeRef = "pwrs:Type-$UInt16"
EndBody
EndObject
Object WareContent $Intern 17
Body SysBody
Attr PgmName = "WareContent"
Attr TypeRef = "pwrs:Type-$UInt16"
EndBody
EndObject
Object Ware $Intern 18
Body SysBody
Attr Flags |= PWR_MASK_ARRAY
Attr Elements = 15
Attr PgmName = "Ware"
Attr TypeRef = "pwrs:Type-$String80"
EndBody
EndObject
EndObject
Object DevBody $ObjBodyDef 2
Object PlcNode $Buffer 1
Body SysBody
Attr Class = pwr_eClass_PlcNode
EndBody
EndObject
EndObject
Object GraphPlcNode $GraphPlcNode
Body SysBody
Attr object_type = 222
Attr parameters[0] = 0
Attr parameters[1] = 0
Attr parameters[2] = 2
Attr parameters[3] = 0
Attr subwindows = 0
Attr graphmethod = 4
Attr graphindex = 28
Attr default_mask[0] = 1
Attr default_mask[1] = 1
Attr segname_annotation = 1
Attr compmethod = 2
Attr compindex = 1
Attr tracemethod = 0
Attr traceindex = 1
Attr objname = "WARE"
Attr graphname = "WAREcell"
Attr debugpar = ""
EndBody
EndObject
Object Template MpsWare
Body RtBody
Attr UpdateCounter = 1
Attr MaxAcceptMtrlTypes = 6
Attr WareContent = 0
EndBody
EndObject
EndObject
EndSObject
...@@ -149,7 +149,7 @@ SObject pwrb:Class ...@@ -149,7 +149,7 @@ SObject pwrb:Class
Attr objname = "Or" Attr objname = "Or"
Attr graphname = "Or" Attr graphname = "Or"
Attr debugpar = "Status" Attr debugpar = "Status"
Endbody EndBody
EndObject EndObject
EndObject EndObject
EndSObject EndSObject
SObject pwrb:Class SObject pwrb:Class
! !
Object Pb_Ai $ClassDef 293 Object Pb_Ai $ClassDef 293
! !
! !
Body SysBody Body SysBody
...@@ -15,73 +15,73 @@ SObject pwrb:Class ...@@ -15,73 +15,73 @@ SObject pwrb:Class
! !
! Description of object ! Description of object
! !
Object Description $Attribute 1 Object Description $Attribute 1
Body SysBody Body SysBody
Attr TypeRef = "pwrs:Type-$String80" Attr TypeRef = "pwrs:Type-$String80"
EndBody EndBody
EndObject EndObject
! !
Object Process $Attribute 2 Object Process $Attribute 2
Body SysBody Body SysBody
Attr TypeRef = "pwrs:Type-$UInt16" Attr TypeRef = "pwrs:Type-$UInt16"
EndBody EndBody
EndObject EndObject
! !
Object ThreadObject $Attribute 3 Object ThreadObject $Attribute 3
Body SysBody Body SysBody
Attr TypeRef = "pwrs:Type-$Objid" Attr TypeRef = "pwrs:Type-$Objid"
EndBody EndBody
EndObject EndObject
! !
Object NumberOfChannels $Attribute 4 Object NumberOfChannels $Attribute 4
Body SysBody Body SysBody
Attr TypeRef = "pwrs:Type-$UInt8" Attr TypeRef = "pwrs:Type-$UInt8"
EndBody EndBody
EndObject EndObject
! !
Object BytesPerChannel $Attribute 5 Object BytesPerChannel $Attribute 5
Body SysBody Body SysBody
Attr TypeRef = "pwrs:Type-$UInt8" Attr TypeRef = "pwrs:Type-$UInt8"
EndBody EndBody
EndObject EndObject
! !
Object Status $Attribute 6 Object Status $Attribute 6
Body SysBody Body SysBody
Attr TypeRef = "pwrs:Type-$UInt8" Attr TypeRef = "pwrs:Type-$UInt8"
Attr Flags |= PWR_MASK_NOEDIT Attr Flags |= PWR_MASK_NOEDIT
Attr Flags |= PWR_MASK_INVISIBLE Attr Flags |= PWR_MASK_INVISIBLE
EndBody EndBody
EndObject EndObject
! !
Object BytesOfInput $Attribute 7 Object BytesOfInput $Attribute 7
Body SysBody Body SysBody
Attr TypeRef = "pwrs:Type-$UInt16" Attr TypeRef = "pwrs:Type-$UInt16"
Attr Flags |= PWR_MASK_NOEDIT Attr Flags |= PWR_MASK_NOEDIT
Attr Flags |= PWR_MASK_INVISIBLE Attr Flags |= PWR_MASK_INVISIBLE
EndBody EndBody
EndObject EndObject
! !
Object BytesOfOutput $Attribute 8 Object BytesOfOutput $Attribute 8
Body SysBody Body SysBody
Attr TypeRef = "pwrs:Type-$UInt16" Attr TypeRef = "pwrs:Type-$UInt16"
Attr Flags |= PWR_MASK_NOEDIT Attr Flags |= PWR_MASK_NOEDIT
Attr Flags |= PWR_MASK_INVISIBLE Attr Flags |= PWR_MASK_INVISIBLE
EndBody EndBody
EndObject EndObject
! !
Object OffsetInputs $Attribute 9 Object OffsetInputs $Attribute 9
Body SysBody Body SysBody
Attr TypeRef = "pwrs:Type-$UInt16" Attr TypeRef = "pwrs:Type-$UInt16"
Attr Flags |= PWR_MASK_NOEDIT Attr Flags |= PWR_MASK_NOEDIT
Attr Flags |= PWR_MASK_INVISIBLE Attr Flags |= PWR_MASK_INVISIBLE
EndBody EndBody
EndObject EndObject
! !
Object OffsetOutputs $Attribute 10 Object OffsetOutputs $Attribute 10
Body SysBody Body SysBody
Attr TypeRef = "pwrs:Type-$UInt16" Attr TypeRef = "pwrs:Type-$UInt16"
Attr Flags |= PWR_MASK_NOEDIT Attr Flags |= PWR_MASK_NOEDIT
Attr Flags |= PWR_MASK_INVISIBLE Attr Flags |= PWR_MASK_INVISIBLE
EndBody EndBody
EndObject EndObject
! !
...@@ -89,14 +89,14 @@ SObject pwrb:Class ...@@ -89,14 +89,14 @@ SObject pwrb:Class
! !
Object Template Pb_Ai Object Template Pb_Ai
Body RtBody Body RtBody
Attr NumberOfChannels = 8 Attr NumberOfChannels = 8
Attr BytesPerChannel = 2 Attr BytesPerChannel = 2
Attr Process = 1 Attr Process = 1
Attr Status = 0 Attr Status = 0
Attr BytesOfInput = 0 Attr BytesOfInput = 0
Attr BytesOfOutput = 0 Attr BytesOfOutput = 0
Attr OffsetInputs = 0 Attr OffsetInputs = 0
Attr OffsetOutputs = 0 Attr OffsetOutputs = 0
EndBody EndBody
EndObject ! Template EndObject ! Template
! !
......
...@@ -242,7 +242,7 @@ SObject pwrb:Class ...@@ -242,7 +242,7 @@ SObject pwrb:Class
Attr objname = "Pulse" Attr objname = "Pulse"
Attr graphname = "Pulse" Attr graphname = "Pulse"
Attr debugpar = "" Attr debugpar = ""
Endbody EndBody
EndObject EndObject
Object Template Pulse Object Template Pulse
Body DevBody Body DevBody
......
...@@ -117,7 +117,7 @@ SObject pwrb:Class ...@@ -117,7 +117,7 @@ SObject pwrb:Class
Attr objname = "SR_R" Attr objname = "SR_R"
Attr graphname = "SR_R" Attr graphname = "SR_R"
Attr debugpar = "Status" Attr debugpar = "Status"
Endbody EndBody
EndObject EndObject
EndObject EndObject
EndSObject EndSObject
...@@ -117,7 +117,7 @@ SObject pwrb:Class ...@@ -117,7 +117,7 @@ SObject pwrb:Class
Attr objname = "SR_S" Attr objname = "SR_S"
Attr graphname = "SR_S" Attr graphname = "SR_S"
Attr debugpar = "Status" Attr debugpar = "Status"
Endbody EndBody
EndObject EndObject
EndObject EndObject
EndSObject EndSObject
...@@ -103,7 +103,7 @@ SObject pwrb:Class ...@@ -103,7 +103,7 @@ SObject pwrb:Class
Attr executeordermethod = 2 Attr executeordermethod = 2
Attr objname = "Strcat" Attr objname = "Strcat"
Attr graphname = "Strcat" Attr graphname = "Strcat"
Endbody EndBody
EndObject EndObject
EndObject EndObject
EndSObject EndSObject
......
...@@ -102,7 +102,7 @@ SObject pwrb:Class ...@@ -102,7 +102,7 @@ SObject pwrb:Class
Attr executeordermethod = 2 Attr executeordermethod = 2
Attr objname = "SubStr" Attr objname = "SubStr"
Attr graphname = "SubStr" Attr graphname = "SubStr"
Endbody EndBody
EndObject EndObject
Object Template SubStr Object Template SubStr
Body RtBody Body RtBody
......
...@@ -236,7 +236,7 @@ SObject pwrb:Class ...@@ -236,7 +236,7 @@ SObject pwrb:Class
Attr objname = "Timer" Attr objname = "Timer"
Attr graphname = "Timer" Attr graphname = "Timer"
Attr debugpar = "" Attr debugpar = ""
Endbody EndBody
EndObject EndObject
Object Template Timer Object Template Timer
Body DevBody Body DevBody
......
...@@ -234,7 +234,7 @@ SObject pwrb:Class ...@@ -234,7 +234,7 @@ SObject pwrb:Class
Attr objname = "Wait" Attr objname = "Wait"
Attr graphname = "Wait" Attr graphname = "Wait"
Attr debugpar = "" Attr debugpar = ""
Endbody EndBody
EndObject EndObject
Object Template Wait Object Template Wait
Body DevBody Body DevBody
......
...@@ -256,7 +256,7 @@ SObject pwrb:Class ...@@ -256,7 +256,7 @@ SObject pwrb:Class
Attr objname = "Waith" Attr objname = "Waith"
Attr graphname = "Waith" Attr graphname = "Waith"
Attr debugpar = "Status" Attr debugpar = "Status"
Endbody EndBody
EndObject EndObject
EndObject EndObject
EndSObject EndSObject
...@@ -91,7 +91,7 @@ SObject pwrb:Class ...@@ -91,7 +91,7 @@ SObject pwrb:Class
Attr objname = "XOr" Attr objname = "XOr"
Attr graphname = "XOr" Attr graphname = "XOr"
Attr debugpar = "Status" Attr debugpar = "Status"
Endbody EndBody
EndObject EndObject
EndObject EndObject
EndSObject EndSObject
! pwrb_ch_mpsclasses.wb_load -- mps:Class hierarchy.
!
! PROVIEW/R
! Copyright (C) 1996 by Comator Process AB.
!
! <Description>.
!
!
SObject mps:
Object Class $ClassHier
EndObject
EndSObject
! pwrb_l_mps.wb_load -- Defines layouts for MPS objects.
!
! PROVIEW/R
! Copyright (C) 1996 by Comator Process AB.
!
! <Description>.
!
!
SObject wb:layout-Configurator-w1-AllClasses
Object mps $GroupRef
EndObject
EndSObject
!
SObject wb:layout-PlcEditor-w1
Object MPS $Group
Object MpsIn $Group
EndObject
Object MpsOut $Group
EndObject
Object MpsQueue $Group
EndObject
Object MpsStack $Group
EndObject
Object MpsTriggTrp $Group
EndObject
Object MpsTrp $Group
EndObject
Object MpsTube $Group
EndObject
Object MpsWare $Group
EndObject
EndObject
EndSObject
...@@ -12,7 +12,6 @@ SObject pwrs:Class ...@@ -12,7 +12,6 @@ SObject pwrs:Class
Attr Editor = pwr_eEditor_AttrEd Attr Editor = pwr_eEditor_AttrEd
Attr Method = pwr_eMethod_SysBody Attr Method = pwr_eMethod_SysBody
Attr Flags |= pwr_mClassDef_System Attr Flags |= pwr_mClassDef_System
Attr Flags |= pwr_mClassDef_DevOnly
EndBody EndBody
Object SysBody $ObjBodyDef 1 Object SysBody $ObjBodyDef 1
Body SysBody Body SysBody
...@@ -72,3 +71,11 @@ SObject pwrs:Class ...@@ -72,3 +71,11 @@ SObject pwrs:Class
EndObject EndObject
EndObject EndObject
EndSObject EndSObject
...@@ -12,7 +12,6 @@ SObject pwrs:Class ...@@ -12,7 +12,6 @@ SObject pwrs:Class
Attr Editor = pwr_eEditor_AttrEd Attr Editor = pwr_eEditor_AttrEd
Attr Method = pwr_eMethod_SysBody Attr Method = pwr_eMethod_SysBody
Attr Flags |= pwr_mClassDef_System Attr Flags |= pwr_mClassDef_System
Attr Flags |= pwr_mClassDef_DevOnly
EndBody EndBody
Object SysBody $ObjBodyDef 1 Object SysBody $ObjBodyDef 1
Body SysBody Body SysBody
...@@ -23,6 +22,24 @@ SObject pwrs:Class ...@@ -23,6 +22,24 @@ SObject pwrs:Class
Attr TypeRef = "pwrs:Type-$String40" Attr TypeRef = "pwrs:Type-$String40"
EndBody EndBody
EndObject EndObject
Object FilterName $Attribute 2
Body SysBody
Attr TypeRef = "pwrs:Type-$String80"
EndBody
EndObject
Object FilterArguments $Attribute 3
Body SysBody
Attr TypeRef = "pwrs:Type-$String40"
Attr Flags |= PWR_MASK_ARRAY
Attr Elements = 5
EndBody
EndObject
Object Filter $Attribute 4
Body SysBody
Attr TypeRef = "pwrs:Type-$UInt32"
Attr Flags |= PWR_MASK_INVISIBLE
EndBody
EndObject
EndObject EndObject
Object Template $MenuCascade Object Template $MenuCascade
Body SysBody Body SysBody
......
...@@ -12,7 +12,6 @@ SObject pwrs:Class ...@@ -12,7 +12,6 @@ SObject pwrs:Class
Attr Editor = pwr_eEditor_AttrEd Attr Editor = pwr_eEditor_AttrEd
Attr Method = pwr_eMethod_SysBody Attr Method = pwr_eMethod_SysBody
Attr Flags |= pwr_mClassDef_System Attr Flags |= pwr_mClassDef_System
Attr Flags |= pwr_mClassDef_DevOnly
EndBody EndBody
EndObject EndObject
EndSObject EndSObject
...@@ -11,9 +11,9 @@ SObject pwrs:Type ...@@ -11,9 +11,9 @@ SObject pwrs:Type
Object $GraphName $TypeDef 1 Object $GraphName $TypeDef 1
Body SysBody Body SysBody
Attr Type = pwr_eType_String Attr Type = pwr_eType_String
Attr Size = 8 Attr Size = 16
Attr TypeRef = "pwrs:Type-$String" Attr TypeRef = "pwrs:Type-$String"
Attr Elements = 8 Attr Elements = 16
EndBody EndBody
EndObject EndObject
......
...@@ -20,31 +20,31 @@ SObject SSAB:Class ...@@ -20,31 +20,31 @@ SObject SSAB:Class
! !
! Parameter Description ! Parameter Description
! !
Object LoggFile $Param 1 Object LoggFile $Attribute 1
Body SysBody Body SysBody
Attr TypeRef = "pwrs:Type-$String40" Attr TypeRef = "pwrs:Type-$String40"
EndBody EndBody
EndObject EndObject
Object NewVersion $Param 2 Object NewVersion $Attribute 2
Body SysBody Body SysBody
Attr TypeRef = "pwrs:Type-$Boolean" Attr TypeRef = "pwrs:Type-$Boolean"
Attr Flags |= PWR_MASK_INVISIBLE Attr Flags |= PWR_MASK_INVISIBLE
Attr Flags |= PWR_MASK_STATE Attr Flags |= PWR_MASK_STATE
EndBody EndBody
EndObject EndObject
Object Identity $Param 3 Object Identity $Attribute 3
Body SysBody Body SysBody
Attr TypeRef = "pwrs:Type-$UInt32" Attr TypeRef = "pwrs:Type-$UInt32"
EndBody EndBody
EndObject EndObject
Object LoggCount $Param 4 Object LoggCount $Attribute 4
Body SysBody Body SysBody
Attr TypeRef = "pwrs:Type-$UInt32" Attr TypeRef = "pwrs:Type-$UInt32"
Attr Flags |= PWR_MASK_INVISIBLE Attr Flags |= PWR_MASK_INVISIBLE
Attr Flags |= PWR_MASK_STATE Attr Flags |= PWR_MASK_STATE
EndBody EndBody
EndObject EndObject
Object FileOpenCount $Param 5 Object FileOpenCount $Attribute 5
Body SysBody Body SysBody
Attr TypeRef = "pwrs:Type-$UInt32" Attr TypeRef = "pwrs:Type-$UInt32"
Attr Flags |= PWR_MASK_INVISIBLE Attr Flags |= PWR_MASK_INVISIBLE
......
pwrs 0.0.0.1 pwrs 0.0.0.1
pwrb 0.0.0.2 pwrb 0.0.0.2
nmps 0.0.1.1
tlog 0.0.1.2
ssab 0.0.1.3
...@@ -41,6 +41,23 @@ void wb_adef::check() ...@@ -41,6 +41,23 @@ void wb_adef::check()
if ( evenSts()) throw wb_error(m_sts); if ( evenSts()) throw wb_error(m_sts);
} }
wb_adef wb_adef::next()
{
pwr_tStatus sts;
check();
return wb_adef( m_adrep->next( &sts));
}
wb_adef wb_adef::prev()
{
pwr_tStatus sts;
check();
return wb_adef( m_adrep->prev( &sts));
}
// get objects runtime body size // get objects runtime body size
size_t wb_adef::size() size_t wb_adef::size()
{ {
...@@ -101,3 +118,21 @@ pwr_tOid wb_adef::boid() ...@@ -101,3 +118,21 @@ pwr_tOid wb_adef::boid()
check(); check();
return m_adrep->boid(); return m_adrep->boid();
} }
char *wb_adef::name()
{
check();
return m_adrep->name();
}
wb_name wb_adef::longName()
{
check();
return m_adrep->longName();
}
void wb_adef::body( void **p)
{
check();
m_adrep->body( p);
}
...@@ -44,11 +44,12 @@ public: ...@@ -44,11 +44,12 @@ public:
pwr_tOix bix(); pwr_tOix bix();
pwr_tOid boid(); pwr_tOid boid();
wb_adef next() { return *this;} // Fix wb_adef next();
wb_adef prev() { return *this;} // Fix wb_adef prev();
wb_name name() { wb_name n; return n;} // Fix char *name();
wb_name name(ldh_eName type) { wb_name n; return n;} // Fix wb_name longName();
void body( void **p);
private: private:
void check(); void check();
......
...@@ -18,6 +18,104 @@ wb_adrep *wb_adrep::ref() ...@@ -18,6 +18,104 @@ wb_adrep *wb_adrep::ref()
wb_adrep::wb_adrep( wb_orepdbs& o): m_nRef(0), m_orep(&o), m_sts(LDH__SUCCESS) wb_adrep::wb_adrep( wb_orepdbs& o): m_nRef(0), m_orep(&o), m_sts(LDH__SUCCESS)
{ {
m_orep->ref(); m_orep->ref();
pwr_tStatus sts;
switch ( m_orep->cid()) {
case pwr_eClass_Param:
{
pwr_sParam attr;
m_orep->m_vrep->readBody( &sts, m_orep, cdh_eBix_sys, (void *) &attr);
if ( EVEN(sts)) throw wb_error(sts);
strcpy( m_pgmname, attr.Info.PgmName);
m_size = attr.Info.Size;
m_type = attr.Info.Type;
m_offset = attr.Info.Offset;
m_elements = attr.Info.Elements;
m_paramindex = attr.Info.ParamIndex;
m_flags = attr.Info.Flags;
m_tid = attr.TypeRef;
break;
}
case pwr_eClass_Intern:
case pwr_eClass_Input:
case pwr_eClass_Output:
{
pwr_sIntern attr;
m_orep->m_vrep->readBody( &sts, m_orep, cdh_eBix_sys, (void *) &attr);
if ( EVEN(sts)) throw wb_error(sts);
strcpy( m_pgmname, attr.Info.PgmName);
m_size = attr.Info.Size;
m_type = attr.Info.Type;
m_offset = attr.Info.Offset;
m_elements = attr.Info.Elements;
m_paramindex = attr.Info.ParamIndex;
m_flags = attr.Info.Flags;
m_tid = attr.TypeRef;
break;
}
case pwr_eClass_ObjXRef:
{
pwr_sObjXRef attr;
m_orep->m_vrep->readBody( &sts, m_orep, cdh_eBix_sys, (void *) &attr);
if ( EVEN(sts)) throw wb_error(sts);
strcpy( m_pgmname, attr.Info.PgmName);
m_size = attr.Info.Size;
m_type = attr.Info.Type;
m_offset = attr.Info.Offset;
m_elements = attr.Info.Elements;
m_paramindex = attr.Info.ParamIndex;
m_flags = attr.Info.Flags;
m_tid = 0;
break;
}
case pwr_eClass_AttrXRef:
{
pwr_sAttrXRef attr;
m_orep->m_vrep->readBody( &sts, m_orep, cdh_eBix_sys, (void *) &attr);
if ( EVEN(sts)) throw wb_error(sts);
strcpy( m_pgmname, attr.Info.PgmName);
m_size = attr.Info.Size;
m_type = attr.Info.Type;
m_offset = attr.Info.Offset;
m_elements = attr.Info.Elements;
m_paramindex = attr.Info.ParamIndex;
m_flags = attr.Info.Flags;
m_tid = 0;
break;
}
case pwr_eClass_Buffer:
{
pwr_sBuffer attr;
m_orep->m_vrep->readBody( &sts, m_orep, cdh_eBix_sys, (void *) &attr);
if ( EVEN(sts)) throw wb_error(sts);
strcpy( m_pgmname, attr.Info.PgmName);
m_size = attr.Info.Size;
m_type = attr.Info.Type;
m_offset = attr.Info.Offset;
m_elements = attr.Info.Elements;
m_paramindex = attr.Info.ParamIndex;
m_flags = attr.Info.Flags;
m_tid = 0;
break;
}
default:
throw wb_error(LDH__NYI);
}
} }
wb_adrep::~wb_adrep() wb_adrep::~wb_adrep()
...@@ -25,6 +123,26 @@ wb_adrep::~wb_adrep() ...@@ -25,6 +123,26 @@ wb_adrep::~wb_adrep()
m_orep->unref(); m_orep->unref();
} }
wb_adrep *wb_adrep::next( pwr_tStatus *sts)
{
wb_orep *orep = m_orep->after( sts);
if ( EVEN(*sts))
return 0;
wb_adrep *adrep = new wb_adrep( (wb_orepdbs& ) *orep);
return adrep;
}
wb_adrep *wb_adrep::prev( pwr_tStatus *sts)
{
wb_orep *orep = m_orep->before( sts);
if ( EVEN(*sts))
return 0;
wb_adrep *adrep = new wb_adrep( (wb_orepdbs& ) *orep);
return adrep;
}
wb_cdrep *wb_adrep::cdrep() wb_cdrep *wb_adrep::cdrep()
{ {
return new wb_cdrep( this); return new wb_cdrep( this);
...@@ -37,15 +155,17 @@ wb_bdrep *wb_adrep::bdrep() ...@@ -37,15 +155,17 @@ wb_bdrep *wb_adrep::bdrep()
pwr_tOid wb_adrep::aoid() pwr_tOid wb_adrep::aoid()
{ {
pwr_tOid oid; return m_orep->oid();
//return m_a->oid;
return oid;
} }
size_t wb_adrep::size() int wb_adrep::aix()
{ {
return 0; return cdh_oixToAix( m_orep->oid().oix);
}
int wb_adrep::bix()
{
return cdh_oixToBix( m_orep->oid().oix);
} }
pwr_sAttrRef wb_adrep::aref() pwr_sAttrRef wb_adrep::aref()
...@@ -91,3 +211,45 @@ wb_vrep *wb_adrep::vrep() const ...@@ -91,3 +211,45 @@ wb_vrep *wb_adrep::vrep() const
if (EVEN(m_sts)) throw wb_error(m_sts); if (EVEN(m_sts)) throw wb_error(m_sts);
return m_orep->m_vrep; return m_orep->m_vrep;
} }
char *wb_adrep::name()
{
return m_orep->name();
}
wb_name wb_adrep::longName()
{
return m_orep->longName();
}
void wb_adrep::body( void **p)
{
pwr_tStatus sts;
int size;
switch ( m_orep->cid()) {
case pwr_eClass_Param:
size = sizeof( pwr_sParam);
break;
case pwr_eClass_Intern:
case pwr_eClass_Input:
case pwr_eClass_Output:
size = sizeof( pwr_sIntern);
break;
case pwr_eClass_ObjXRef:
size = sizeof( pwr_sObjXRef);
break;
case pwr_eClass_AttrXRef:
size = sizeof( pwr_sAttrXRef);
break;
case pwr_eClass_Buffer:
size = sizeof( pwr_sBuffer);
break;
default:
throw wb_error(LDH__NYI);
}
*p = calloc( 1, size);
m_orep->m_vrep->readBody( &sts, m_orep, cdh_eBix_sys, *p);
if ( EVEN(sts)) throw wb_error(sts);
}
...@@ -14,6 +14,15 @@ class wb_adrep ...@@ -14,6 +14,15 @@ class wb_adrep
wb_orepdbs *m_orep; wb_orepdbs *m_orep;
pwr_tStatus m_sts; pwr_tStatus m_sts;
size_t m_size;
pwr_eType m_type;
int m_offset;
int m_elements;
int m_paramindex;
int m_flags;
pwr_tTid m_tid;
pwr_tPgmName m_pgmname;
friend class wb_bdrep; friend class wb_bdrep;
friend class wb_cdrep; friend class wb_cdrep;
...@@ -24,24 +33,28 @@ class wb_adrep ...@@ -24,24 +33,28 @@ class wb_adrep
void unref(); void unref();
wb_adrep *ref(); wb_adrep *ref();
wb_adrep *next( pwr_tStatus *sts);
wb_adrep *prev( pwr_tStatus *sts);
wb_bdrep *bdrep(); wb_bdrep *bdrep();
wb_cdrep *cdrep(); wb_cdrep *cdrep();
pwr_sAttrRef aref(); pwr_sAttrRef aref();
size_t size(); // get objects runtime body size size_t size() {return m_size;}
int offset() {return 0;}; // Fix int offset() {return m_offset;}
int type() const {return 0;} // Fix pwr_eType type() const {return m_type;}
int nElement() {return 0;} // Fix pwr_tTid tid() {return m_tid;}
int index() {return 0;} // Fix int nElement() {return m_elements;}
int index() {return m_paramindex;}
pwr_tOid aoid(); pwr_tOid aoid();
int aix() {return 0;} // Fix int aix();
pwr_tCid cid(); pwr_tCid cid();
int bix() {return 0;} // Fix int bix();
int flags() {return 0;} // Fix int flags() {return m_flags;}
pwr_tOid boid(); pwr_tOid boid();
wb_name name() { wb_name n; return n;} // Fix // get attribute name char *name();
wb_name name(ldh_eName type) { wb_name n; return n; } // Fix wb_name longName();
void body( void **p);
wb_vrep *vrep() const; wb_vrep *vrep() const;
}; };
......
...@@ -65,3 +65,36 @@ size_t wb_bdrep::size() ...@@ -65,3 +65,36 @@ size_t wb_bdrep::size()
return body.Size; return body.Size;
} }
int wb_bdrep::nAttribute()
{
pwr_tStatus sts;
int attr_count = 0;
wb_orepdbs *old;
wb_orepdbs *orep = (wb_orepdbs *)m_orep->m_vrep->first( &sts, m_orep);
while ( ODD(sts)) {
switch ( orep->cid()) {
case pwr_eClass_Param:
case pwr_eClass_Intern:
case pwr_eClass_Input:
case pwr_eClass_Output:
case pwr_eClass_ObjXRef:
case pwr_eClass_AttrXRef:
attr_count++;
break;
default:
;
}
old = orep;
orep = (wb_orepdbs *)orep->after( &sts);
old->ref();
old->unref();
}
return attr_count;
}
pwr_tOid wb_bdrep::boid()
{
return m_orep->oid();
}
...@@ -27,9 +27,9 @@ public: ...@@ -27,9 +27,9 @@ public:
pwr_sAttrRef aref() { pwr_sAttrRef a; return a;} // Fix pwr_sAttrRef aref() { pwr_sAttrRef a; return a;} // Fix
size_t size(); size_t size();
int nAttribute() { return 0;} // Fix int nAttribute();
cdh_eBix bix(); cdh_eBix bix();
pwr_tOid boid() { pwr_tOid o; return o;} // Fix pwr_tOid boid();
wb_name name() { wb_name n; return n;} // Fix // get attribute name wb_name name() { wb_name n; return n;} // Fix // get attribute name
......
...@@ -78,12 +78,16 @@ wb_vrep *wb_erep::volume(pwr_tStatus *sts, char *name) // Fix ...@@ -78,12 +78,16 @@ wb_vrep *wb_erep::volume(pwr_tStatus *sts, char *name) // Fix
{ {
vrep_iterator it; vrep_iterator it;
for ( it = m_vrepdb.begin(); it != m_vrepdb.end(); it++) { for ( it = m_vrepdb.begin(); it != m_vrepdb.end(); it++) {
if ( cdh_NoCaseStrcmp( it->second->name(), name) == 0) if ( cdh_NoCaseStrcmp( it->second->name(), name) == 0) {
*sts = LDH__SUCCESS;
return it->second; return it->second;
}
} }
for ( it = m_vrepdbs.begin(); it != m_vrepdbs.end(); it++) { for ( it = m_vrepdbs.begin(); it != m_vrepdbs.end(); it++) {
if ( cdh_NoCaseStrcmp( it->second->name(), name) == 0) if ( cdh_NoCaseStrcmp( it->second->name(), name) == 0) {
*sts = LDH__SUCCESS;
return it->second; return it->second;
}
} }
*sts = LDH__NOSUCHVOL; *sts = LDH__NOSUCHVOL;
return 0; return 0;
...@@ -297,10 +301,9 @@ void wb_erep::loadCommonMeta( pwr_tStatus *status) ...@@ -297,10 +301,9 @@ void wb_erep::loadCommonMeta( pwr_tStatus *status)
cdh_StringToVolumeId( vol_array[1], &vid); cdh_StringToVolumeId( vol_array[1], &vid);
cout << "Loading volume: " << vname << " " << vid << endl; cout << "Loading volume: " << vname << " " << vid << endl;
wb_vrepdbs *vrep = new wb_vrepdbs( this, vname);
try { try {
wb_vrepdbs *vrep = new wb_vrepdbs( this, vname);
vrep->load(); vrep->load();
// vrep->name( vol_array[0]);
addDbs( &sts, vrep); addDbs( &sts, vrep);
} }
catch ( wb_error& e) { catch ( wb_error& e) {
......
...@@ -567,16 +567,15 @@ ldh_GetObjectBodyDef(ldh_tSession session, pwr_tCid cid, char *bname, ...@@ -567,16 +567,15 @@ ldh_GetObjectBodyDef(ldh_tSession session, pwr_tCid cid, char *bname,
wb_bdef b = c.bdef(bname); wb_bdef b = c.bdef(bname);
if (!b) return b.sts(); if (!b) return b.sts();
*bdef = (ldh_sParDef *) calloc(1, sizeof(ldh_sParDef) * b.nAttribute()); *rows = b.nAttribute();
*bdef = (ldh_sParDef *) calloc(1, sizeof(ldh_sParDef) * *rows);
if (*bdef == NULL) return LDH__INSVIRMEM; if (*bdef == NULL) return LDH__INSVIRMEM;
for (wb_adef a = b.adef(); a; a = a.next()) { for (wb_adef a = b.adef(); a; a = a.next()) {
//for (wb_adef a = b.adef(); a; a++) { strcpy((*bdef)[a.index()].ParName, a.name());
// do something a.size(); a.name(); (*bdef)[a.index()].ParLevel = 1;
strcpy((*bdef)[a.index()].ParName, a.name().c_str()); (*bdef)[a.index()].ParClass = (pwr_eClass)a.cid();
(*bdef)[a.index()].ParLevel = 1; a.body( (void **) &(*bdef)[a.index()].Par);
(*bdef)[a.index()].ParClass = (pwr_eClass)a.cid();
//(*bdef)[a.index()].Par = (void *) obp->body;
} }
return LDH__SUCCESS; return LDH__SUCCESS;
......
#include "wb_merep.h" #include "wb_merep.h"
#include "wb_erep.h" #include "wb_erep.h"
#include "wb_attrname.h"
#include "wb_ldh_msg.h" #include "wb_ldh_msg.h"
...@@ -127,6 +128,7 @@ wb_tdrep *wb_merep::tdrep( pwr_tStatus *sts, pwr_tTid tid) ...@@ -127,6 +128,7 @@ wb_tdrep *wb_merep::tdrep( pwr_tStatus *sts, pwr_tTid tid)
*sts = LDH__NOSUCHVOL; *sts = LDH__NOSUCHVOL;
return 0; return 0;
} }
*sts = LDH__SUCCESS;
return it->second->tdrep( tid); return it->second->tdrep( tid);
} }
...@@ -150,3 +152,51 @@ wb_tdrep *wb_merep::tdrep( pwr_tStatus *sts, wb_name name) ...@@ -150,3 +152,51 @@ wb_tdrep *wb_merep::tdrep( pwr_tStatus *sts, wb_name name)
return 0; return 0;
} }
int wb_merep::getAttrInfoRec( wb_attrname *attr, int bix, pwr_tCid cid, int *size,
int *offset, pwr_tTid *tid, int *elements,
pwr_eType *type, int level)
{
pwr_tStatus sts;
wb_cdrep *cd = cdrep( &sts, cid);
if ( EVEN(sts)) return 0;
wb_bdrep *bd = cd->bdrep( &sts, bix);
if ( EVEN(sts)) {
delete cd;
return 0;
}
wb_adrep *adrep = bd->adrep( &sts, attr->attribute(level));
if ( EVEN(sts)) {
delete cd;
delete bd;
return 0;
}
if ( attr->hasAttrIndex( level)) {
int index = attr->attrIndex( level);
if ( index >= adrep->nElement())
return 0;
*offset += adrep->offset() + index * adrep->size() / adrep->nElement();
*size = adrep->size() / adrep->nElement();
}
else {
*offset += adrep->offset();
*size = adrep->size();
}
if ( attr->hasAttribute( level + 1)) {
// Fix , Subclass: get cid from type of attr
if ( !getAttrInfoRec( attr, bix, cid, size, offset, tid, elements, type,
level + 1))
return 0;
}
*tid = adrep->tid();
*type = adrep->type();
*elements = adrep->nElement();
delete cd;
delete bd;
delete adrep;
return 1;
}
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
#define wb_merep_h #define wb_merep_h
#include "wb_mvrep.h" #include "wb_mvrep.h"
#include "wb_attrname.h"
#include <map> #include <map>
using namespace std; using namespace std;
...@@ -32,6 +33,11 @@ class wb_merep { ...@@ -32,6 +33,11 @@ class wb_merep {
wb_tdrep *tdrep( pwr_tStatus *sts, const wb_adrep& a); wb_tdrep *tdrep( pwr_tStatus *sts, const wb_adrep& a);
wb_tdrep *tdrep( pwr_tStatus *sts, pwr_tTid tid); wb_tdrep *tdrep( pwr_tStatus *sts, pwr_tTid tid);
wb_tdrep *tdrep( pwr_tStatus *sts, wb_name name); wb_tdrep *tdrep( pwr_tStatus *sts, wb_name name);
int getAttrInfoRec( wb_attrname *attr, int bix, pwr_tCid cid, int *size,
int *offset, pwr_tTid *tid, int *elements,
pwr_eType *type, int level);
}; };
#endif #endif
...@@ -100,9 +100,11 @@ wb_nrep::wb_nrep( char *n) throw (wb_error) : num_seg(0), num_attr(0), vol_len(0 ...@@ -100,9 +100,11 @@ wb_nrep::wb_nrep( char *n) throw (wb_error) : num_seg(0), num_attr(0), vol_len(0
} }
if ( seg_cnt) if ( seg_cnt)
seg = (wb_namesegments *) calloc( seg_cnt, sizeof( wb_namesegments)); seg = (wb_namesegments *) calloc( seg_cnt, sizeof( wb_namesegments));
if ( attr_cnt) if ( attr_cnt) {
attr = (wb_nameattributes *) calloc( attr_cnt, sizeof( wb_nameattributes)); attr = (wb_nameattributes *) calloc( attr_cnt, sizeof( wb_nameattributes));
for ( int i = 0; i < attr_cnt; i++)
attr[i].index = -1;
}
strcpy( oname, n); strcpy( oname, n);
parse(); parse();
} }
...@@ -231,7 +233,7 @@ void wb_nrep::parse () throw (wb_error) ...@@ -231,7 +233,7 @@ void wb_nrep::parse () throw (wb_error)
throw wb_error(LDH__BADNAME); throw wb_error(LDH__BADNAME);
} else { } else {
attr[num_attr].len = nameDiff( s, oname) - attr[num_attr].offs; attr[num_attr].len = nameDiff( s, oname) - attr[num_attr].offs;
attr[num_attr].index = 0; attr[num_attr].index = -1;
state = 4; state = 4;
} }
break; break;
......
...@@ -31,6 +31,7 @@ wb_tdrep::wb_tdrep( wb_mvrep *mvrep, pwr_tTid tid) : m_nRef(0) ...@@ -31,6 +31,7 @@ wb_tdrep::wb_tdrep( wb_mvrep *mvrep, pwr_tTid tid) : m_nRef(0)
if ( EVEN(m_sts)) throw wb_error( m_sts); if ( EVEN(m_sts)) throw wb_error( m_sts);
m_orep->ref(); m_orep->ref();
init();
m_sts = LDH__SUCCESS; m_sts = LDH__SUCCESS;
} }
...@@ -43,6 +44,7 @@ wb_tdrep::wb_tdrep( wb_mvrep *mvrep, wb_name name) : m_nRef(0) ...@@ -43,6 +44,7 @@ wb_tdrep::wb_tdrep( wb_mvrep *mvrep, wb_name name) : m_nRef(0)
if ( EVEN(m_sts)) throw wb_error( m_sts); if ( EVEN(m_sts)) throw wb_error( m_sts);
m_orep->ref(); m_orep->ref();
init();
m_sts = LDH__SUCCESS; m_sts = LDH__SUCCESS;
} }
...@@ -53,6 +55,7 @@ wb_tdrep::wb_tdrep( wb_mvrep *mvrep, const wb_adrep& a) : m_nRef(0) ...@@ -53,6 +55,7 @@ wb_tdrep::wb_tdrep( wb_mvrep *mvrep, const wb_adrep& a) : m_nRef(0)
if ( EVEN(m_sts)) throw wb_error( m_sts); if ( EVEN(m_sts)) throw wb_error( m_sts);
m_orep->ref(); m_orep->ref();
init();
m_sts = LDH__SUCCESS; m_sts = LDH__SUCCESS;
} }
...@@ -64,10 +67,48 @@ wb_tdrep::wb_tdrep( const wb_adrep& a) : m_nRef(0) ...@@ -64,10 +67,48 @@ wb_tdrep::wb_tdrep( const wb_adrep& a) : m_nRef(0)
m_sts = sts; m_sts = sts;
m_orep = tdrep->m_orep; m_orep = tdrep->m_orep;
m_orep->ref(); m_orep->ref();
init();
delete tdrep; delete tdrep;
} }
pwr_tTid wb_tdrep::tid() pwr_tTid wb_tdrep::tid()
{ {
return cdh_TypeObjidToId( m_orep->oid()); return cdh_TypeObjidToId( m_orep->oid());
} }
void wb_tdrep::init()
{
pwr_tStatus sts;
switch ( m_orep->cid()) {
case pwr_eClass_TypeDef:
{
pwr_sTypeDef body;
m_orep->m_vrep->readBody( &sts, m_orep, cdh_eBix_sys, (void *) &body);
if ( EVEN(sts)) throw wb_error(sts);
m_size = body.Size;
m_type = body.Type;
m_elements = body.Elements;
m_typeref = body.TypeRef;
break;
}
case pwr_eClass_Type:
{
pwr_sTypeDef body;
m_orep->m_vrep->readBody( &sts, m_orep, cdh_eBix_sys, (void *) &body);
if ( EVEN(sts)) throw wb_error(sts);
m_size = body.Size;
m_type = body.Type;
m_elements = 1;
m_typeref = (pwr_tTid) body.Type;
break;
}
default:
throw wb_error(LDH__NYI);
}
}
...@@ -16,6 +16,11 @@ class wb_tdrep ...@@ -16,6 +16,11 @@ class wb_tdrep
wb_orepdbs *m_orep; wb_orepdbs *m_orep;
int m_sts; int m_sts;
pwr_eType m_type;
size_t m_size;
int m_elements;
pwr_tTid m_typeref;
public: public:
wb_tdrep(); wb_tdrep();
wb_tdrep(wb_mvrep *, pwr_tTid); wb_tdrep(wb_mvrep *, pwr_tTid);
...@@ -26,15 +31,19 @@ public: ...@@ -26,15 +31,19 @@ public:
void unref(); void unref();
wb_tdrep *ref(); wb_tdrep *ref();
size_t size() { return 0;} // Fix // get objects runtime body size size_t size() { return m_size;}
pwr_tTid tid(); pwr_tTid tid();
pwr_eType type() { return (pwr_eType)0;} // Fix pwr_tTid typeRef() {return m_typeref;}
int nElement() { return 0;} // Fix pwr_eType type() { return m_type;}
int nElement() { return m_elements;}
wb_name name() { wb_name n; return n;} // Fix // get type name wb_name name() { wb_name n; return n;} // Fix // get type name
wb_name name(ldh_eName type) { wb_name n; return n;} // Fix wb_name name(ldh_eName type) { wb_name n; return n;} // Fix
pwr_tStatus sts() { return m_sts;} pwr_tStatus sts() { return m_sts;}
private:
void init();
}; };
#endif #endif
...@@ -96,6 +96,8 @@ public: ...@@ -96,6 +96,8 @@ public:
virtual void iterRbody(wb_dbs *) = 0; virtual void iterRbody(wb_dbs *) = 0;
virtual void iterDbody(wb_dbs *) = 0; virtual void iterDbody(wb_dbs *) = 0;
virtual void objectName(wb_orep *o, char *str) = 0; virtual void objectName(wb_orep *o, char *str) = 0;
virtual bool isCommonMeta() const { return false;}
virtual bool isMeta() const { return false;}
}; };
#endif #endif
...@@ -17,9 +17,12 @@ wb_vrep *wb_vrepdbs::ref() ...@@ -17,9 +17,12 @@ wb_vrep *wb_vrepdbs::ref()
wb_vrepdbs::wb_vrepdbs(wb_erep *erep, const char *fileName) : m_erep(erep) wb_vrepdbs::wb_vrepdbs(wb_erep *erep, const char *fileName) : m_erep(erep)
{ {
m_merep = new wb_merep(m_erep, (wb_mvrep *)this);
strcpy(m_fileName, fileName); strcpy(m_fileName, fileName);
m_isDbsenvLoaded = false; m_isDbsenvLoaded = false;
if ( isCommonMeta())
m_merep = m_erep->merep();
else
m_merep = new wb_merep(m_erep, (wb_mvrep *)this);
} }
dbs_sEnv * dbs_sEnv *
...@@ -49,7 +52,10 @@ wb_vrepdbs::load() ...@@ -49,7 +52,10 @@ wb_vrepdbs::load()
{ {
pwr_tStatus sts; pwr_tStatus sts;
bool rsts = ( dbsenv() != 0); bool rsts = ( dbsenv() != 0);
m_merep->addDbs(&sts, (wb_mvrep *)this); // only if i am a class volume
if ( isMeta())
m_merep->addDbs(&sts, (wb_mvrep *)this);
return rsts; return rsts;
} }
...@@ -178,7 +184,7 @@ wb_vrepdbs::abort(pwr_tStatus *sts) ...@@ -178,7 +184,7 @@ wb_vrepdbs::abort(pwr_tStatus *sts)
bool bool
wb_vrepdbs::writeAttribute(pwr_tStatus *sts, wb_orep *o, cdh_eBix bix, unsigned int offset, unsigned int size, void *p) wb_vrepdbs::writeAttribute(pwr_tStatus *sts, wb_orep *o, cdh_eBix bix, unsigned int offset, unsigned int size, void *p)
{ {
//*sts = LDH__NYI; *sts = LDH__NYI;
return false; return false;
} }
...@@ -186,8 +192,20 @@ wb_vrepdbs::writeAttribute(pwr_tStatus *sts, wb_orep *o, cdh_eBix bix, unsigned ...@@ -186,8 +192,20 @@ wb_vrepdbs::writeAttribute(pwr_tStatus *sts, wb_orep *o, cdh_eBix bix, unsigned
void * void *
wb_vrepdbs::readAttribute(pwr_tStatus *sts, wb_orep *o, cdh_eBix bix, unsigned int offset, unsigned int size, void *p) wb_vrepdbs::readAttribute(pwr_tStatus *sts, wb_orep *o, cdh_eBix bix, unsigned int offset, unsigned int size, void *p)
{ {
//*sts = LDH__NYI; *sts = LDH__SUCCESS;
return 0;
dbs_sObject *op = ((wb_orepdbs *)o)->o();
void *bp = dbs_Body(sts, dbsenv(), op, bix);
if (bp == 0)
return 0;
if (p) {
memcpy(p, bp, MIN(op->rbody.size, size));
return p;
}
return bp;
} }
...@@ -457,3 +475,4 @@ wb_vrepdbs::objectName(wb_orep *o, char *str) ...@@ -457,3 +475,4 @@ wb_vrepdbs::objectName(wb_orep *o, char *str)
dbs_ObjectToName(&sts, dbsenv(), ((wb_orepdbs *)o)->o(), str); dbs_ObjectToName(&sts, dbsenv(), ((wb_orepdbs *)o)->o(), str);
} }
...@@ -101,6 +101,8 @@ public: ...@@ -101,6 +101,8 @@ public:
virtual void iterObject (wb_dbs *); virtual void iterObject (wb_dbs *);
virtual void iterRbody (wb_dbs *); virtual void iterRbody (wb_dbs *);
virtual void iterDbody (wb_dbs *); virtual void iterDbody (wb_dbs *);
virtual bool isCommonMeta() const { return true;}
virtual bool isMeta() const { return (cid() == pwr_eClass_ClassVolume);}
}; };
......
...@@ -136,7 +136,10 @@ int wb_vrepwbl::load( char *fname) ...@@ -136,7 +136,10 @@ int wb_vrepwbl::load( char *fname)
int i; int i;
char file_spec[200]; char file_spec[200];
if (1) { if ( strstr( fname, ".wb_load") != 0) {
load_files( fname);
}
else {
// Load all wb_load files in directory // Load all wb_load files in directory
// Load volume // Load volume
...@@ -305,7 +308,7 @@ int wb_vrepwbl::getTypeInfo( char *name, pwr_tTid *tid, pwr_eType *type, int *si ...@@ -305,7 +308,7 @@ int wb_vrepwbl::getTypeInfo( char *name, pwr_tTid *tid, pwr_eType *type, int *si
ref_wblnode n = findType( tname); ref_wblnode n = findType( tname);
if ( n) { if ( n) {
*tid = n->m_tid; *tid = n->m_tid;
*type = (pwr_eType) n->ty_tid; *type = (pwr_eType) n->ty_type;
*size = n->ty_size; *size = n->ty_size;
*elements = 1; *elements = 1;
return 1; return 1;
...@@ -451,7 +454,7 @@ int wb_vrepwbl::getTypeInfo( pwr_tTid tid, pwr_eType *type, int *size, ...@@ -451,7 +454,7 @@ int wb_vrepwbl::getTypeInfo( pwr_tTid tid, pwr_eType *type, int *size,
if ( n) { if ( n) {
if ( !n->is_built) if ( !n->is_built)
n->build( 0); n->build( 0);
*type = (pwr_eType) n->ty_tid; *type = (pwr_eType) n->ty_type;
*size = n->ty_size; *size = n->ty_size;
*elements = 1; *elements = 1;
} }
...@@ -524,42 +527,41 @@ int wb_vrepwbl::getClassInfo( pwr_tCid cid, int *rsize, int *dsize) ...@@ -524,42 +527,41 @@ int wb_vrepwbl::getClassInfo( pwr_tCid cid, int *rsize, int *dsize)
} }
#define IF_ATTR( attribute, type, elem, level) \ #define IF_ATTR( attribute, etype, elem, level) \
if ( attr->attributeIsEqual( #attribute, level)) { \ if ( attr->attributeIsEqual( #attribute, level)) { \
*size = sizeof( o.attribute); \ *size = sizeof( o.attribute); \
*offset = (unsigned long) &o.attribute - (unsigned long) &o; \ *offset = (unsigned long) &o.attribute - (unsigned long) &o; \
*tid = type; \ *tid = *type = etype; \
*elements = elem; } *elements = elem; }
int wb_vrepwbl::getAttrInfo( char *attr, int bix, pwr_tCid cid, int *size, int wb_vrepwbl::getAttrInfo( char *attr, int bix, pwr_tCid cid, int *size,
int *offset, pwr_tTid *tid, int *elements) int *offset, pwr_tTid *tid, int *elements, pwr_eType *type)
{ {
char attr_name[200];
int a_size; int a_size;
int a_offset = 0; int a_offset = 0;
pwr_tTid a_tid; pwr_tTid a_tid;
int a_elements; int a_elements;
pwr_eType a_type;
strcpy( attr_name, "."); wb_attrname aname( attr);
strcat( attr_name, attr);
wb_name aname( attr_name);
if ( aname.evenSts()) return 0; if ( aname.evenSts()) return 0;
if ( getAttrInfoRec( &aname, bix, cid, &a_size, &a_offset, if ( getAttrInfoRec( &aname, bix, cid, &a_size, &a_offset,
&a_tid, &a_elements, 0)) { &a_tid, &a_elements, &a_type, 0)) {
*size = a_size; *size = a_size;
*offset = a_offset; *offset = a_offset;
*tid = a_tid; *tid = a_tid;
*elements = a_elements; *elements = a_elements;
*type = a_type;
return 1; return 1;
} }
return 0; return 0;
} }
int wb_vrepwbl::getAttrInfoRec( wb_name *attr, int bix, pwr_tCid cid, int *size, int wb_vrepwbl::getAttrInfoRec( wb_attrname *attr, int bix, pwr_tCid cid, int *size,
int *offset, pwr_tTid *tid, int *elements, int level) int *offset, pwr_tTid *tid, int *elements, pwr_eType *type,
int level)
{ {
switch( cid) { switch( cid) {
case pwr_eClass_Type: case pwr_eClass_Type:
...@@ -571,13 +573,13 @@ int wb_vrepwbl::getAttrInfoRec( wb_name *attr, int bix, pwr_tCid cid, int *size, ...@@ -571,13 +573,13 @@ int wb_vrepwbl::getAttrInfoRec( wb_name *attr, int bix, pwr_tCid cid, int *size,
if ( attr->attributeIsEqual("Type", level)) { if ( attr->attributeIsEqual("Type", level)) {
*size = sizeof( o.Type); *size = sizeof( o.Type);
*offset = (unsigned long) &o.Type - (unsigned long) &o; *offset = (unsigned long) &o.Type - (unsigned long) &o;
*tid = pwr_eType_TypeId; *tid = *type = pwr_eType_TypeId;
*elements = 1; *elements = 1;
} }
else if ( attr->attributeIsEqual( "Size", level)) { else if ( attr->attributeIsEqual( "Size", level)) {
*size = sizeof( o.Size); *size = sizeof( o.Size);
*offset = (unsigned long) &o.Size - (unsigned long) &o; *offset = (unsigned long) &o.Size - (unsigned long) &o;
*tid = pwr_eType_Int32; *tid = *type = pwr_eType_Int32;
*elements = 1; *elements = 1;
} }
return 1; return 1;
...@@ -648,43 +650,43 @@ int wb_vrepwbl::getAttrInfoRec( wb_name *attr, int bix, pwr_tCid cid, int *size, ...@@ -648,43 +650,43 @@ int wb_vrepwbl::getAttrInfoRec( wb_name *attr, int bix, pwr_tCid cid, int *size,
if ( attr->attributeIsEqual( "PgmName", level)) { if ( attr->attributeIsEqual( "PgmName", level)) {
*size = sizeof( o.Info.PgmName); *size = sizeof( o.Info.PgmName);
*offset = (unsigned long) &o.Info.PgmName - (unsigned long) &o; *offset = (unsigned long) &o.Info.PgmName - (unsigned long) &o;
*tid = pwr_eType_String; *tid = *type = pwr_eType_String;
*elements = 1; *elements = 1;
} }
if ( attr->attributeIsEqual( "Type", level)) { if ( attr->attributeIsEqual( "Type", level)) {
*size = sizeof( o.Info.Type); *size = sizeof( o.Info.Type);
*offset = (unsigned long) &o.Info.Type - (unsigned long) &o; *offset = (unsigned long) &o.Info.Type - (unsigned long) &o;
*tid = pwr_eType_UInt32; *tid = *type = pwr_eType_UInt32;
*elements = 1; *elements = 1;
} }
if ( attr->attributeIsEqual( "Offset", level)) { if ( attr->attributeIsEqual( "Offset", level)) {
*size = sizeof( o.Info.Offset); *size = sizeof( o.Info.Offset);
*offset = (unsigned long) &o.Info.Offset - (unsigned long) &o; *offset = (unsigned long) &o.Info.Offset - (unsigned long) &o;
*tid = pwr_eType_UInt32; *tid = *type = pwr_eType_UInt32;
*elements = 1; *elements = 1;
} }
if ( attr->attributeIsEqual( "Size", level)) { if ( attr->attributeIsEqual( "Size", level)) {
*size = sizeof( o.Info.Size); *size = sizeof( o.Info.Size);
*offset = (unsigned long) &o.Info.Size - (unsigned long) &o; *offset = (unsigned long) &o.Info.Size - (unsigned long) &o;
*tid = pwr_eType_UInt32; *tid = *type = pwr_eType_UInt32;
*elements = 1; *elements = 1;
} }
if ( attr->attributeIsEqual( "Flags", level)) { if ( attr->attributeIsEqual( "Flags", level)) {
*size = sizeof( o.Info.Flags); *size = sizeof( o.Info.Flags);
*offset = (unsigned long) &o.Info.Flags - (unsigned long) &o; *offset = (unsigned long) &o.Info.Flags - (unsigned long) &o;
*tid = pwr_eType_UInt32; *tid = *type = pwr_eType_UInt32;
*elements = 1; *elements = 1;
} }
if ( attr->attributeIsEqual( "Elements", level)) { if ( attr->attributeIsEqual( "Elements", level)) {
*size = sizeof( o.Info.Elements); *size = sizeof( o.Info.Elements);
*offset = (unsigned long) &o.Info.Elements - (unsigned long) &o; *offset = (unsigned long) &o.Info.Elements - (unsigned long) &o;
*tid = pwr_eType_UInt32; *tid = *type = pwr_eType_UInt32;
*elements = 1; *elements = 1;
} }
if ( attr->attributeIsEqual( "ParamIndex", level)) { if ( attr->attributeIsEqual( "ParamIndex", level)) {
*size = sizeof( o.Info.ParamIndex); *size = sizeof( o.Info.ParamIndex);
*offset = (unsigned long) &o.Info.ParamIndex - (unsigned long) &o; *offset = (unsigned long) &o.Info.ParamIndex - (unsigned long) &o;
*tid = pwr_eType_UInt32; *tid = *type = pwr_eType_UInt32;
*elements = 1; *elements = 1;
} }
else IF_ATTR( TypeRef, pwr_eType_TypeId, 1, level) else IF_ATTR( TypeRef, pwr_eType_TypeId, 1, level)
...@@ -731,16 +733,20 @@ int wb_vrepwbl::getAttrInfoRec( wb_name *attr, int bix, pwr_tCid cid, int *size, ...@@ -731,16 +733,20 @@ int wb_vrepwbl::getAttrInfoRec( wb_name *attr, int bix, pwr_tCid cid, int *size,
*size = n_attr->a_size; *size = n_attr->a_size;
} }
if ( attr->hasAttribute( level + 1)) { if ( attr->hasAttribute( level + 1)) {
if ( !getAttrInfoRec( attr, bix, cid, size, offset, tid, elements, level + 1)) // Fix , Subclass: get cid from type of attr
if ( !getAttrInfoRec( attr, bix, cid, size, offset, tid, elements, type,
level + 1))
// Fix , search in other volumes
return 0; return 0;
} }
*tid = n_attr->a_tid; *tid = n_attr->a_tid;
*elements = n_attr->a_elements; *elements = n_attr->a_elements;
*type = n_attr->a_type;
return 1; return 1;
} }
else { else {
// Search type in other volumes TODO... // Search type in other volumes
return 0; return m_erep->merep()->getAttrInfoRec( attr, bix, cid, size, offset, tid, elements, type, level);
} }
} }
} }
...@@ -749,13 +755,31 @@ int wb_vrepwbl::getAttrInfoRec( wb_name *attr, int bix, pwr_tCid cid, int *size, ...@@ -749,13 +755,31 @@ int wb_vrepwbl::getAttrInfoRec( wb_name *attr, int bix, pwr_tCid cid, int *size,
int wb_vrepwbl::nameToOid( char *name, pwr_tOid *oid) int wb_vrepwbl::nameToOid( char *name, pwr_tOid *oid)
{ {
if ( strncmp( name, "_O", 2) == 0) {
cdh_StringToObjid( name, oid);
return 1;
}
ref_wblnode n = find( name); ref_wblnode n = find( name);
if ( n) { if ( n) {
*oid = n->m_oid; *oid = n->m_oid;
return 1; return 1;
} }
// TODO global
return 0; // Search in other volume
pwr_tStatus sts;
wb_orep *orep = m_erep->object( &sts, name);
if ( EVEN(sts))
return 0;
else {
*oid = orep->oid();
// Delete
orep->ref();
orep->unref();
return 1;
}
} }
int wb_vrepwbl::getTemplateBody( pwr_tCid cid, int bix, int *size, void **body) int wb_vrepwbl::getTemplateBody( pwr_tCid cid, int bix, int *size, void **body)
...@@ -848,15 +872,17 @@ int wb_vrepwbl::getTemplateBody( pwr_tCid cid, int bix, int *size, void **body) ...@@ -848,15 +872,17 @@ int wb_vrepwbl::getTemplateBody( pwr_tCid cid, int bix, int *size, void **body)
*size = bdrep->size(); *size = bdrep->size();
delete bdrep; delete bdrep;
*body = calloc( 1, *size); if ( *size) {
cdrep->templateBody( &sts, (cdh_eBix) bix, body); *body = calloc( 1, *size);
delete cdrep; cdrep->templateBody( &sts, (cdh_eBix) bix, *body);
if ( EVEN(sts)) { if ( EVEN(sts)) {
free( body); free( body);
return 0; delete cdrep;
return 0;
}
} }
delete cdrep;
return 1; return 1;
} }
} }
...@@ -989,7 +1015,7 @@ wb_orep *wb_vrepwbl::object(pwr_tStatus *sts) ...@@ -989,7 +1015,7 @@ wb_orep *wb_vrepwbl::object(pwr_tStatus *sts)
{ {
wb_orepwbl *orep = 0; wb_orepwbl *orep = 0;
if ( volume_node->o_fch) { if ( volume_node && volume_node->o_fch) {
orep = new wb_orepwbl( (wb_vrepwbl *)this, volume_node->o_fch); orep = new wb_orepwbl( (wb_vrepwbl *)this, volume_node->o_fch);
*sts = LDH__SUCCESS; *sts = LDH__SUCCESS;
} }
......
...@@ -11,6 +11,7 @@ ...@@ -11,6 +11,7 @@
#include "wb_wblnode.h" #include "wb_wblnode.h"
#include "wb_wblfile.h" #include "wb_wblfile.h"
#include "wb_erep.h" #include "wb_erep.h"
#include "wb_attrname.h"
#define WBL_FILEMAX 500 #define WBL_FILEMAX 500
#define wbl_eBix_SysBody 1 #define wbl_eBix_SysBody 1
...@@ -92,9 +93,10 @@ public: ...@@ -92,9 +93,10 @@ public:
int *elements); int *elements);
int getClassInfo( pwr_tCid cid, int *rsize, int *dsize); int getClassInfo( pwr_tCid cid, int *rsize, int *dsize);
int getAttrInfo( char *attr, int bix, pwr_tCid cid, int *size, int getAttrInfo( char *attr, int bix, pwr_tCid cid, int *size,
int *offset, pwr_tTid *tid, int *elements); int *offset, pwr_tTid *tid, int *elements, pwr_eType *type);
int getAttrInfoRec( wb_name *attr, int bix, pwr_tCid cid, int *size, int getAttrInfoRec( wb_attrname *attr, int bix, pwr_tCid cid, int *size,
int *offset, pwr_tTid *tid, int *elements, int level); int *offset, pwr_tTid *tid, int *elements,
pwr_eType *type, int level);
ref_wblnode findObject( pwr_tOix oix); ref_wblnode findObject( pwr_tOix oix);
ref_wblnode findClass( char *name); ref_wblnode findClass( char *name);
ref_wblnode findType( char *name); ref_wblnode findType( char *name);
......
This diff is collapsed.
...@@ -46,11 +46,10 @@ OREQ ...@@ -46,11 +46,10 @@ OREQ
WS : (' ' WS : (' '
| '\t' | '\t'
| '\n' {newline();} | '\n' {newline();}
| '\r') | '\r')+
{ _ttype = antlr::Token::SKIP; } { _ttype = antlr::Token::SKIP; }
; ;
COMMENT COMMENT
: "!" : "!"
(~'\n')* '\n' (~'\n')* '\n'
...@@ -104,12 +103,14 @@ options { ...@@ -104,12 +103,14 @@ options {
{$setType(OID);} {$setType(OID);}
| (DIGITS '.') => DIGITS '.' ('0'..'9')* (('e'|'E') ('+'|'-')? ('0'..'9')+)? | (DIGITS '.') => DIGITS '.' ('0'..'9')* (('e'|'E') ('+'|'-')? ('0'..'9')+)?
{$setType(NUM_FLOAT);} {$setType(NUM_FLOAT);}
| '-' DIGITS '.' ('0'..'9')* (('e'|'E') ('+'|'-')? ('0'..'9')+)? | ('-' DIGITS '.') => '-' DIGITS '.' ('0'..'9')* (('e'|'E') ('+'|'-')? ('0'..'9')+)?
{$setType(NUM_FLOAT);} {$setType(NUM_FLOAT);}
| '.' ('0'..'9')+ (('e'|'E') ('+'|'-')? ('0'..'9')+)? | '.' ('0'..'9')+ (('e'|'E') ('+'|'-')? ('0'..'9')+)?
{$setType(NUM_FLOAT);} {$setType(NUM_FLOAT);}
| DIGITS | DIGITS
{$setType(INT);} {$setType(INT);}
| '-' DIGITS
{$setType(INT);}
| ('a'..'z'|'A'..'Z'|'$'|'_'|SWEC) ('a'..'z'|'A'..'Z'|'0'..'9'|'$'|'_'|SWEC)* | ('a'..'z'|'A'..'Z'|'$'|'_'|SWEC) ('a'..'z'|'A'..'Z'|'0'..'9'|'$'|'_'|SWEC)*
; ;
......
This diff is collapsed.
...@@ -83,6 +83,13 @@ public: ...@@ -83,6 +83,13 @@ public:
{ {
CommonAST::initialize(t); CommonAST::initialize(t);
line_number = t->getLine(); line_number = t->getLine();
// Test
static int last = 0;
if ( (line_number % 1000) == 0 && line_number != last) {
printf( "Line: %d\n", line_number);
last = line_number;
}
} }
void setText(const std::string& txt) void setText(const std::string& txt)
...@@ -209,6 +216,7 @@ public: ...@@ -209,6 +216,7 @@ public:
// Type and Typedef stuff // Type and Typedef stuff
pwr_tTid ty_tid; pwr_tTid ty_tid;
pwr_eType ty_type;
int ty_elements; int ty_elements;
int ty_size; int ty_size;
...@@ -223,6 +231,7 @@ public: ...@@ -223,6 +231,7 @@ public:
int a_elements; int a_elements;
int a_flags; int a_flags;
int a_index; int a_index;
pwr_eType a_type;
// Template object stuff // Template object stuff
}; };
......
...@@ -100,8 +100,8 @@ void wb_wblparser::volume() { ...@@ -100,8 +100,8 @@ void wb_wblparser::volume() {
match(OID); match(OID);
{ {
for (;;) { for (;;) {
if ((LA(1)==OBJECT)) { if ((LA(1)==BODY)) {
object(); body();
astFactory.addASTChild(currentAST, ANTLR_USE_NAMESPACE(antlr)RefAST(returnAST)); astFactory.addASTChild(currentAST, ANTLR_USE_NAMESPACE(antlr)RefAST(returnAST));
} }
else { else {
...@@ -111,6 +111,19 @@ void wb_wblparser::volume() { ...@@ -111,6 +111,19 @@ void wb_wblparser::volume() {
} }
_loop6:; _loop6:;
} }
{
for (;;) {
if ((LA(1)==OBJECT)) {
object();
astFactory.addASTChild(currentAST, ANTLR_USE_NAMESPACE(antlr)RefAST(returnAST));
}
else {
goto _loop8;
}
}
_loop8:;
}
ref_wblnode tmp3_AST = static_cast<ref_wblnode>(ANTLR_USE_NAMESPACE(antlr)nullAST); ref_wblnode tmp3_AST = static_cast<ref_wblnode>(ANTLR_USE_NAMESPACE(antlr)nullAST);
tmp3_AST = astFactory.create(LT(1)); tmp3_AST = astFactory.create(LT(1));
astFactory.addASTChild(currentAST, ANTLR_USE_NAMESPACE(antlr)RefAST(tmp3_AST)); astFactory.addASTChild(currentAST, ANTLR_USE_NAMESPACE(antlr)RefAST(tmp3_AST));
...@@ -142,11 +155,11 @@ void wb_wblparser::sobject() { ...@@ -142,11 +155,11 @@ void wb_wblparser::sobject() {
astFactory.addASTChild(currentAST, ANTLR_USE_NAMESPACE(antlr)RefAST(returnAST)); astFactory.addASTChild(currentAST, ANTLR_USE_NAMESPACE(antlr)RefAST(returnAST));
} }
else { else {
goto _loop9; goto _loop11;
} }
} }
_loop9:; _loop11:;
} }
ref_wblnode tmp5_AST = static_cast<ref_wblnode>(ANTLR_USE_NAMESPACE(antlr)nullAST); ref_wblnode tmp5_AST = static_cast<ref_wblnode>(ANTLR_USE_NAMESPACE(antlr)nullAST);
tmp5_AST = astFactory.create(LT(1)); tmp5_AST = astFactory.create(LT(1));
...@@ -202,11 +215,11 @@ void wb_wblparser::object() { ...@@ -202,11 +215,11 @@ void wb_wblparser::object() {
astFactory.addASTChild(currentAST, ANTLR_USE_NAMESPACE(antlr)RefAST(returnAST)); astFactory.addASTChild(currentAST, ANTLR_USE_NAMESPACE(antlr)RefAST(returnAST));
} }
else { else {
goto _loop13; goto _loop15;
} }
} }
_loop13:; _loop15:;
} }
{ {
for (;;) { for (;;) {
...@@ -215,11 +228,11 @@ void wb_wblparser::object() { ...@@ -215,11 +228,11 @@ void wb_wblparser::object() {
astFactory.addASTChild(currentAST, ANTLR_USE_NAMESPACE(antlr)RefAST(returnAST)); astFactory.addASTChild(currentAST, ANTLR_USE_NAMESPACE(antlr)RefAST(returnAST));
} }
else { else {
goto _loop15; goto _loop17;
} }
} }
_loop15:; _loop17:;
} }
ref_wblnode tmp7_AST = static_cast<ref_wblnode>(ANTLR_USE_NAMESPACE(antlr)nullAST); ref_wblnode tmp7_AST = static_cast<ref_wblnode>(ANTLR_USE_NAMESPACE(antlr)nullAST);
tmp7_AST = astFactory.create(LT(1)); tmp7_AST = astFactory.create(LT(1));
...@@ -274,6 +287,43 @@ void wb_wblparser::cid() { ...@@ -274,6 +287,43 @@ void wb_wblparser::cid() {
returnAST = cid_AST; returnAST = cid_AST;
} }
void wb_wblparser::body() {
returnAST = static_cast<ref_wblnode>(ANTLR_USE_NAMESPACE(antlr)nullAST);
ANTLR_USE_NAMESPACE(antlr)ASTPair currentAST;
ref_wblnode body_AST = static_cast<ref_wblnode>(ANTLR_USE_NAMESPACE(antlr)nullAST);
try { // for error handling
ref_wblnode tmp10_AST = static_cast<ref_wblnode>(ANTLR_USE_NAMESPACE(antlr)nullAST);
tmp10_AST = astFactory.create(LT(1));
astFactory.makeASTRoot(currentAST, ANTLR_USE_NAMESPACE(antlr)RefAST(tmp10_AST));
match(BODY);
{
for (;;) {
if ((LA(1)==ATTRIBUTE||LA(1)==BUFFER)) {
attribute();
astFactory.addASTChild(currentAST, ANTLR_USE_NAMESPACE(antlr)RefAST(returnAST));
}
else {
goto _loop20;
}
}
_loop20:;
}
ref_wblnode tmp11_AST = static_cast<ref_wblnode>(ANTLR_USE_NAMESPACE(antlr)nullAST);
tmp11_AST = astFactory.create(LT(1));
astFactory.addASTChild(currentAST, ANTLR_USE_NAMESPACE(antlr)RefAST(tmp11_AST));
match(ENDBODY);
body_AST = ref_wblnode(currentAST.root);
}
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
reportError(ex);
consume();
consumeUntil(_tokenSet_4);
}
returnAST = body_AST;
}
void wb_wblparser::oix() { void wb_wblparser::oix() {
returnAST = static_cast<ref_wblnode>(ANTLR_USE_NAMESPACE(antlr)nullAST); returnAST = static_cast<ref_wblnode>(ANTLR_USE_NAMESPACE(antlr)nullAST);
ANTLR_USE_NAMESPACE(antlr)ASTPair currentAST; ANTLR_USE_NAMESPACE(antlr)ASTPair currentAST;
...@@ -283,18 +333,18 @@ void wb_wblparser::oix() { ...@@ -283,18 +333,18 @@ void wb_wblparser::oix() {
switch ( LA(1)) { switch ( LA(1)) {
case VALUE: case VALUE:
{ {
ref_wblnode tmp10_AST = static_cast<ref_wblnode>(ANTLR_USE_NAMESPACE(antlr)nullAST); ref_wblnode tmp12_AST = static_cast<ref_wblnode>(ANTLR_USE_NAMESPACE(antlr)nullAST);
tmp10_AST = astFactory.create(LT(1)); tmp12_AST = astFactory.create(LT(1));
astFactory.addASTChild(currentAST, ANTLR_USE_NAMESPACE(antlr)RefAST(tmp10_AST)); astFactory.addASTChild(currentAST, ANTLR_USE_NAMESPACE(antlr)RefAST(tmp12_AST));
match(VALUE); match(VALUE);
oix_AST = ref_wblnode(currentAST.root); oix_AST = ref_wblnode(currentAST.root);
break; break;
} }
case INT: case INT:
{ {
ref_wblnode tmp11_AST = static_cast<ref_wblnode>(ANTLR_USE_NAMESPACE(antlr)nullAST); ref_wblnode tmp13_AST = static_cast<ref_wblnode>(ANTLR_USE_NAMESPACE(antlr)nullAST);
tmp11_AST = astFactory.create(LT(1)); tmp13_AST = astFactory.create(LT(1));
astFactory.addASTChild(currentAST, ANTLR_USE_NAMESPACE(antlr)RefAST(tmp11_AST)); astFactory.addASTChild(currentAST, ANTLR_USE_NAMESPACE(antlr)RefAST(tmp13_AST));
match(INT); match(INT);
oix_AST = ref_wblnode(currentAST.root); oix_AST = ref_wblnode(currentAST.root);
break; break;
...@@ -308,48 +358,11 @@ void wb_wblparser::oix() { ...@@ -308,48 +358,11 @@ void wb_wblparser::oix() {
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) { catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
reportError(ex); reportError(ex);
consume(); consume();
consumeUntil(_tokenSet_4); consumeUntil(_tokenSet_5);
} }
returnAST = oix_AST; returnAST = oix_AST;
} }
void wb_wblparser::body() {
returnAST = static_cast<ref_wblnode>(ANTLR_USE_NAMESPACE(antlr)nullAST);
ANTLR_USE_NAMESPACE(antlr)ASTPair currentAST;
ref_wblnode body_AST = static_cast<ref_wblnode>(ANTLR_USE_NAMESPACE(antlr)nullAST);
try { // for error handling
ref_wblnode tmp12_AST = static_cast<ref_wblnode>(ANTLR_USE_NAMESPACE(antlr)nullAST);
tmp12_AST = astFactory.create(LT(1));
astFactory.makeASTRoot(currentAST, ANTLR_USE_NAMESPACE(antlr)RefAST(tmp12_AST));
match(BODY);
{
for (;;) {
if ((LA(1)==ATTRIBUTE||LA(1)==BUFFER)) {
attribute();
astFactory.addASTChild(currentAST, ANTLR_USE_NAMESPACE(antlr)RefAST(returnAST));
}
else {
goto _loop18;
}
}
_loop18:;
}
ref_wblnode tmp13_AST = static_cast<ref_wblnode>(ANTLR_USE_NAMESPACE(antlr)nullAST);
tmp13_AST = astFactory.create(LT(1));
astFactory.addASTChild(currentAST, ANTLR_USE_NAMESPACE(antlr)RefAST(tmp13_AST));
match(ENDBODY);
body_AST = ref_wblnode(currentAST.root);
}
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
reportError(ex);
consume();
consumeUntil(_tokenSet_4);
}
returnAST = body_AST;
}
void wb_wblparser::attribute() { void wb_wblparser::attribute() {
returnAST = static_cast<ref_wblnode>(ANTLR_USE_NAMESPACE(antlr)nullAST); returnAST = static_cast<ref_wblnode>(ANTLR_USE_NAMESPACE(antlr)nullAST);
ANTLR_USE_NAMESPACE(antlr)ASTPair currentAST; ANTLR_USE_NAMESPACE(antlr)ASTPair currentAST;
...@@ -427,11 +440,11 @@ void wb_wblparser::attribute() { ...@@ -427,11 +440,11 @@ void wb_wblparser::attribute() {
astFactory.addASTChild(currentAST, ANTLR_USE_NAMESPACE(antlr)RefAST(returnAST)); astFactory.addASTChild(currentAST, ANTLR_USE_NAMESPACE(antlr)RefAST(returnAST));
} }
else { else {
goto _loop23; goto _loop25;
} }
} }
_loop23:; _loop25:;
} }
ref_wblnode tmp19_AST = static_cast<ref_wblnode>(ANTLR_USE_NAMESPACE(antlr)nullAST); ref_wblnode tmp19_AST = static_cast<ref_wblnode>(ANTLR_USE_NAMESPACE(antlr)nullAST);
tmp19_AST = astFactory.create(LT(1)); tmp19_AST = astFactory.create(LT(1));
...@@ -449,7 +462,7 @@ void wb_wblparser::attribute() { ...@@ -449,7 +462,7 @@ void wb_wblparser::attribute() {
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) { catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
reportError(ex); reportError(ex);
consume(); consume();
consumeUntil(_tokenSet_5); consumeUntil(_tokenSet_6);
} }
returnAST = attribute_AST; returnAST = attribute_AST;
} }
...@@ -506,7 +519,7 @@ void wb_wblparser::value() { ...@@ -506,7 +519,7 @@ void wb_wblparser::value() {
catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) { catch (ANTLR_USE_NAMESPACE(antlr)RecognitionException& ex) {
reportError(ex); reportError(ex);
consume(); consume();
consumeUntil(_tokenSet_5); consumeUntil(_tokenSet_6);
} }
returnAST = value_AST; returnAST = value_AST;
} }
...@@ -586,11 +599,14 @@ const ANTLR_USE_NAMESPACE(antlr)BitSet wb_wblparser::_tokenSet_2(_tokenSet_2_dat ...@@ -586,11 +599,14 @@ const ANTLR_USE_NAMESPACE(antlr)BitSet wb_wblparser::_tokenSet_2(_tokenSet_2_dat
const unsigned long wb_wblparser::_tokenSet_3_data_[] = { 274727984UL, 0UL, 0UL, 0UL }; const unsigned long wb_wblparser::_tokenSet_3_data_[] = { 274727984UL, 0UL, 0UL, 0UL };
// OBJECT ENDOBJECT BODY INT OID VALUE // OBJECT ENDOBJECT BODY INT OID VALUE
const ANTLR_USE_NAMESPACE(antlr)BitSet wb_wblparser::_tokenSet_3(_tokenSet_3_data_,4); const ANTLR_USE_NAMESPACE(antlr)BitSet wb_wblparser::_tokenSet_3(_tokenSet_3_data_,4);
const unsigned long wb_wblparser::_tokenSet_4_data_[] = { 1072UL, 0UL, 0UL, 0UL }; const unsigned long wb_wblparser::_tokenSet_4_data_[] = { 1200UL, 0UL, 0UL, 0UL };
// OBJECT ENDOBJECT BODY // OBJECT ENDOBJECT ENDVOLUME BODY
const ANTLR_USE_NAMESPACE(antlr)BitSet wb_wblparser::_tokenSet_4(_tokenSet_4_data_,4); const ANTLR_USE_NAMESPACE(antlr)BitSet wb_wblparser::_tokenSet_4(_tokenSet_4_data_,4);
const unsigned long wb_wblparser::_tokenSet_5_data_[] = { 30720UL, 0UL, 0UL, 0UL }; const unsigned long wb_wblparser::_tokenSet_5_data_[] = { 1072UL, 0UL, 0UL, 0UL };
// ENDBODY ATTRIBUTE BUFFER ENDBUFFER // OBJECT ENDOBJECT BODY
const ANTLR_USE_NAMESPACE(antlr)BitSet wb_wblparser::_tokenSet_5(_tokenSet_5_data_,4); const ANTLR_USE_NAMESPACE(antlr)BitSet wb_wblparser::_tokenSet_5(_tokenSet_5_data_,4);
const unsigned long wb_wblparser::_tokenSet_6_data_[] = { 30720UL, 0UL, 0UL, 0UL };
// ENDBODY ATTRIBUTE BUFFER ENDBUFFER
const ANTLR_USE_NAMESPACE(antlr)BitSet wb_wblparser::_tokenSet_6(_tokenSet_6_data_,4);
...@@ -23,7 +23,7 @@ unit ...@@ -23,7 +23,7 @@ unit
; ;
volume volume
: VOLUME^ cid OID (object)* ENDVOLUME : VOLUME^ cid OID (body)* (object)* ENDVOLUME
; ;
sobject sobject
......
...@@ -31,8 +31,8 @@ public: ...@@ -31,8 +31,8 @@ public:
public: void sobject(); public: void sobject();
public: void object(); public: void object();
public: void cid(); public: void cid();
public: void oix();
public: void body(); public: void body();
public: void oix();
public: void attribute(); public: void attribute();
public: void value(); public: void value();
public: void oname(); public: void oname();
...@@ -56,6 +56,8 @@ private: ...@@ -56,6 +56,8 @@ private:
static const ANTLR_USE_NAMESPACE(antlr)BitSet _tokenSet_4; static const ANTLR_USE_NAMESPACE(antlr)BitSet _tokenSet_4;
static const unsigned long _tokenSet_5_data_[]; static const unsigned long _tokenSet_5_data_[];
static const ANTLR_USE_NAMESPACE(antlr)BitSet _tokenSet_5; static const ANTLR_USE_NAMESPACE(antlr)BitSet _tokenSet_5;
static const unsigned long _tokenSet_6_data_[];
static const ANTLR_USE_NAMESPACE(antlr)BitSet _tokenSet_6;
}; };
#endif /*INC_wb_wblparser_hpp_*/ #endif /*INC_wb_wblparser_hpp_*/
...@@ -4225,6 +4225,8 @@ int WNav::get_rootlist() ...@@ -4225,6 +4225,8 @@ int WNav::get_rootlist()
menu_p->title); menu_p->title);
if ( ODD(sts)) if ( ODD(sts))
class_cnt++; class_cnt++;
else
printf( "** Unknown window root class: %s\n", menu_p->title);
} }
if ( !class_cnt) if ( !class_cnt)
return sts; return sts;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment