

== org.vishia.fbcl.readOdg.wrOdgGraphicData.otx ========================================================

== GBlock in Graphic Overview ==

  [0] @3'20(20..39, 33..61)  g_3_29_47 :mdlInp FB=$module_StateM1Parallel:$Module_StateM1Parallel  
  [1] @3'30(28..41, 95..99)  Hold||WorkA :state FB=Hold:State_OFB  
  [2] @3'30(29..46, 65..70)  *Off :state FB=Off:State_OFB  
  [3] @3'30(30..45, 84..89)  *Run||WorkA :state FB=Run:State_OFB  
  [4] @3'20(25..53, 79..111)  ||WorkA-Work :state FB=WorkA:State_OFB  
  [5] @3'40(36..51, 105..109)  Finish1||WorkA :state FB=Finish1:State_OFB  
  [6] @3'20(24..75, 75..112)  Work :state FB=Work:State_OFB  
  [7] @3'40(44..58, 115..117)  g_3_51_116 :stransEvent   
  [8] @3'60(56..71, 94..98)  StepX2||WorkB :state FB=StepX2:State_OFB  
  [9] @3'60(56..71, 104..108)  Finish2||WorkB :state FB=Finish2:State_OFB  
  [10] @3'50(54..74, 79..111)  ||WorkB-Work :state FB=WorkB:State_OFB  
  [11] @3'60(58..73, 83..87)  *Run2||WorkB :state FB=Run2:State_OFB  


== GBlock in Graphic with pins ==

  [0] @3'20(20..39, 33..61)  g_3_29_47 :mdlInp FB=$module_StateM1Parallel:$Module_StateM1Parallel  
    @3'20(21..41, 36..38)  DinMdl:startGuard "=:startGuard:Z"
  
    @3'20(21..40, 51..53)  DinMdl:shouldQuit "=:shouldQuit:Z"
  
    @3'40(38..40, 34..36)  EvinMdl:start "start"
  
    @3'40(38..40, 39..41)  EvinMdl:abort "abort"
  
    @3'40(38..40, 41..43)  EvinMdl:pause "pause"
  
    @3'40(38..40, 43..45)  EvinMdl:cont "cont"
  
    @3'40(38..40, 45..47)  EvinMdl:ready "ready"
  
    @3'20(25..40, 47..49)  DinMdl:condA "=:condA:Z"
  
    @3'20(25..40, 49..51)  DinMdl:condB "=:condB:Z"
  
    @3'40(38..40, 53..55)  EvinMdl:quit "quit"
  
    @3'40(38..40, 55..57)  EvUpdinMdl:upd "upd"
  
    @3'40(37..41, 59..61)  threadMdl:thrDev1 "thrDev1 "
    

  [1] @3'30(28..41, 95..99)  Hold||WorkA :state FB=Hold:State_OFB    

  [2] @3'30(29..46, 65..70)  *Off :state FB=Off:State_OFB    

  [3] @3'30(30..45, 84..89)  *Run||WorkA :state FB=Run:State_OFB    

  [4] @3'20(25..53, 79..111)  ||WorkA-Work :state FB=WorkA:State_OFB    

  [5] @3'40(36..51, 105..109)  Finish1||WorkA :state FB=Finish1:State_OFB    

  [6] @3'20(24..75, 75..112)  Work :state FB=Work:State_OFB    

  [7] @3'40(44..58, 115..117)  g_3_51_116 :stransEvent     

  [8] @3'60(56..71, 94..98)  StepX2||WorkB :state FB=StepX2:State_OFB    

  [9] @3'60(56..71, 104..108)  Finish2||WorkB :state FB=Finish2:State_OFB    

  [10] @3'50(54..74, 79..111)  ||WorkB-Work :state FB=WorkB:State_OFB    

  [11] @3'60(58..73, 83..87)  *Run2||WorkB :state FB=Run2:State_OFB    



== GBlock in Graphic, Details:





== Xref in Graphic Detail==
  



== Demux in Graphic Detail==
  

  

== Expression by name in Graphic Detail ==




== GStates in Graphic, Details:

 : Map<Integer, OdgGBlock>

[1] @3'30(28..41, 95..99)  Hold||WorkA @3'30(28..41, 95..99)  ==FBlock== Hold:State_OFB
  parent=||WorkA-Work  
  Pins:
  fbPinSrc---stateTrans('cont')--> state=*Run||WorkA.'' @3'30(30..45, 84..89)
  fbPinDst<---stateTrans('pause')--- state=*Run||WorkA.'' @3'30(30..45, 84..89)
 : Map<Integer, OdgGBlock>

[2] @3'30(29..46, 65..70)  **Off @3'30(29..46, 65..70)  ==FBlock== Off:State_OFB  
  Pins:
  fbPinSrc---stateTrans('start [startGuard]')--> state=Work.'' @3'20(24..75, 75..112)
  fbPinDst<---stateTransChg('quit[shouldQuit]')--- stransEvent=g_3_51_116.'' @3'40(44..58, 115..117)
  fbPinDst<---stateTrans('abort')--- state=Work.'' @3'20(24..75, 75..112)
 : Map<Integer, OdgGBlock>

[3] @3'30(30..45, 84..89)  **Run||WorkA @3'30(30..45, 84..89)  ==FBlock== Run:State_OFB
  parent=||WorkA-Work  
  Pins:
  fbPinSrc---stateTrans('ready[condA]')--> state=Finish1||WorkA.'' @3'40(36..51, 105..109)
  fbPinSrc---stateTrans('pause')--> state=Hold||WorkA.'' @3'30(28..41, 95..99)
  fbPinDst<---stateTrans('cont')--- state=Hold||WorkA.'' @3'30(28..41, 95..99)
 : Map<Integer, OdgGBlock>

[4] @3'20(25..53, 79..111)  ||WorkA-Work @3'20(25..53, 79..111)  ==FBlock== WorkA:State_OFB
  parent=Work  
  Pins:
 : Map<Integer, OdgGBlock>

[5] @3'40(36..51, 105..109)  Finish1||WorkA @3'40(36..51, 105..109)  ==FBlock== Finish1:State_OFB
  parent=||WorkA-Work  
  Pins:
  fbPinSrc---stateTransChg--> stransEvent=g_3_51_116.'' @3'40(44..58, 115..117)
  fbPinDst<---stateTrans('ready[condA]')--- state=*Run||WorkA.'' @3'30(30..45, 84..89)
 : Map<Integer, OdgGBlock>

[6] @3'20(24..75, 75..112)  Work @3'20(24..75, 75..112)  ==FBlock== Work:State_OFB  
  Pins:
  fbPinSrc---stateTrans('abort')--> state=*Off.'' @3'30(29..46, 65..70)
  fbPinDst<---stateTrans('start [startGuard]')--- state=*Off.'' @3'30(29..46, 65..70)
 : Map<Integer, OdgGBlock>

[8] @3'60(56..71, 94..98)  StepX2||WorkB @3'60(56..71, 94..98)  ==FBlock== StepX2:State_OFB
  parent=||WorkB-Work  
  Pins:
  fbPinSrc---stateTrans('ready')--> state=Finish2||WorkB.'' @3'60(56..71, 104..108)
  fbPinDst<---stateTrans('ready[condB]')--- state=*Run2||WorkB.'' @3'60(58..73, 83..87)
 : Map<Integer, OdgGBlock>

[9] @3'60(56..71, 104..108)  Finish2||WorkB @3'60(56..71, 104..108)  ==FBlock== Finish2:State_OFB
  parent=||WorkB-Work  
  Pins:
  fbPinSrc---stateTransChg--> stransEvent=g_3_51_116.'' @3'40(44..58, 115..117)
  fbPinDst<---stateTrans('ready')--- state=StepX2||WorkB.'' @3'60(56..71, 94..98)
 : Map<Integer, OdgGBlock>

[10] @3'50(54..74, 79..111)  ||WorkB-Work @3'50(54..74, 79..111)  ==FBlock== WorkB:State_OFB
  parent=Work  
  Pins:
  fbPinSrc---stateTransParent--> state=*Run2||WorkB.'' @3'60(58..73, 83..87)
 : Map<Integer, OdgGBlock>

[11] @3'60(58..73, 83..87)  **Run2||WorkB @3'60(58..73, 83..87)  ==FBlock== Run2:State_OFB
  parent=||WorkB-Work  
  Pins:
  fbPinSrc---stateTrans('ready[condB]')--> state=StepX2||WorkB.'' @3'60(56..71, 94..98)
  fbPinDst<---stateTransParent--- state=||WorkB-Work.'' @3'50(54..74, 79..111)




== GStateTransCond in Graphic Detail ==


[7] @3'40(44..58, 115..117) g_3_51_116 =stransEvent  ==StateTransCond== ''



== FBlock instances in the module ==

  Finish1
  Finish2
  Hold
  Off
  Run
  Run2
  StepX2
  Work
  WorkA
  WorkB

== All FBlock instances in the module ==


  
  
  FBlock kind=TheModule "$module_StateM1Parallel :$Module_StateM1Parallel"
  
  
  FBlock kind=State "Finish1 :State_OFB"
  
  
  FBlock kind=State "Finish2 :State_OFB"
  
  
  FBlock kind=State "Hold :State_OFB"
  
  
  FBlock kind=State "Off :State_OFB"
  
  
  FBlock kind=State "Run :State_OFB"
  
  
  FBlock kind=State "Run2 :State_OFB"
  
  
  FBlock kind=State "StepX2 :State_OFB"
  
  
  FBlock kind=State "Work :State_OFB"
  
  
  FBlock kind=State "WorkA :State_OFB"
  
  
  FBlock kind=State "WorkB :State_OFB"




== StBlock instances in the module ==


  Finish1
  Finish2
  Hold
  Off
  Run
  Run2
  StepX2
  Work
  WorkA
  WorkB

//Format: *StateName[parentName][...||...] -->...2  
//        :                         :       :    ^-- number of chilld states
//        :                         :       :  ^---- it is a region, State_FBcl#bRegion
//        :                         :       ^-- childDefaultState is set.
//        :                         ^---bParallelParent  
//        ^-- **: bTopState, * :State_FBcl#bDefaultState, ||=bOrthRegion  


  Finish1-WorkA 0
  Finish2-WorkB 0
  Hold-WorkA 0
  *Off 0
  *Run-WorkA 0
  *Run2-WorkB 0
  StepX2-WorkB 0
  Work[...||...] 2
    ||WorkA-Work-->...2
    ||WorkB-Work-->...2
  ||WorkA-Work-->...2
    *Run-WorkA 0
    Finish1-WorkA 0
    Hold-WorkA 0
  ||WorkB-Work-->...2
    *Run2-WorkB 0
    Finish2-WorkB 0
    StepX2-WorkB 0

== All FBlock instances in the module ==


  $module_StateM1Parallel
  Finish1
  Finish2
  Hold
  Off
  Run
  Run2
  StepX2
  Work
  WorkA
  WorkB

