GDCM  2.2.0
gdcmULActionAR.h
Go to the documentation of this file.
1 /*=========================================================================
2  *
3  * Copyright Insight Software Consortium
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0.txt
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  *
17  *=========================================================================*/
18 #ifndef GDCMULACTIONAR_H
19 #define GDCMULACTIONAR_H
20 
21 #include "gdcmULAction.h"
22 
31 namespace gdcm {
32  namespace network {
33 
34  //Send A-RELEASE-RQ-PDU
35  //Next State: eSta7WaitRelease
36  class ULActionAR1 : public ULAction {
37  public:
38  EStateID PerformAction(Subject *s, ULEvent& inEvent, ULConnection& inConnection,
39  bool& outWaitingForEvent, EEventID& outRaisedEvent);
40  };
41 
42  //Issue A-RELEASE indication primitive
43  //Next State: eSta8WaitLocalRelease
44  class ULActionAR2 : public ULAction {
45  public:
46  EStateID PerformAction(Subject *s, ULEvent& inEvent, ULConnection& inConnection,
47  bool& outWaitingForEvent, EEventID& outRaisedEvent);
48  };
49 
50  //Issue A-RELEASE confirmation primitive, and close transport connection
51  //Next State: eSta1Idle
52  class ULActionAR3 : public ULAction {
53  public:
54  EStateID PerformAction(Subject *s, ULEvent& inEvent, ULConnection& inConnection,
55  bool& outWaitingForEvent, EEventID& outRaisedEvent);
56  };
57 
58  //Issue A-RELEASE-RP PDU and start ARTIM timer
59  //Next State: eSta13AwaitingClose
60  class ULActionAR4 : public ULAction {
61  public:
62  EStateID PerformAction(Subject *s, ULEvent& inEvent, ULConnection& inConnection,
63  bool& outWaitingForEvent, EEventID& outRaisedEvent);
64  };
65 
66  //Stop ARTIM timer
67  //Next State: eSta1Idle
68  class ULActionAR5 : public ULAction {
69  public:
70  EStateID PerformAction(Subject *s, ULEvent& inEvent, ULConnection& inConnection,
71  bool& outWaitingForEvent, EEventID& outRaisedEvent);
72  };
73 
74  //Issue P-Data indication
75  //Next State: eSta7WaitRelease
76  class ULActionAR6 : public ULAction {
77  public:
78  EStateID PerformAction(Subject *s, ULEvent& inEvent, ULConnection& inConnection,
79  bool& outWaitingForEvent, EEventID& outRaisedEvent);
80  };
81 
82  //Issue P-DATA-TF PDU
83  //Next State: eSta8WaitLocalRelease
84  class ULActionAR7 : public ULAction {
85  public:
86  EStateID PerformAction(Subject *s, ULEvent& inEvent, ULConnection& inConnection,
87  bool& outWaitingForEvent, EEventID& outRaisedEvent);
88  };
89 
90  //Issue A-RELEASE indication (release collision):
91  //- If association-requestor, next state is eSta9ReleaseCollisionRqLocal
92  //- if not, next state is eSta10ReleaseCollisionAc
93  class ULActionAR8 : public ULAction {
94  public:
95  EStateID PerformAction(Subject *s, ULEvent& inEvent, ULConnection& inConnection,
96  bool& outWaitingForEvent, EEventID& outRaisedEvent);
97  };
98 
99  //Send A-RELEASE-RP PDU
100  //Next State: eSta11ReleaseCollisionRq
101  class ULActionAR9 : public ULAction {
102  public:
103  EStateID PerformAction(Subject *s, ULEvent& inEvent, ULConnection& inConnection,
104  bool& outWaitingForEvent, EEventID& outRaisedEvent);
105  };
106 
107  //Issue A-RELEASE confirmation primitive
108  //Next State: eSta12ReleaseCollisionAcLocal
109  class ULActionAR10 : public ULAction {
110  public:
111  EStateID PerformAction(Subject *s, ULEvent& inEvent, ULConnection& inConnection,
112  bool& outWaitingForEvent, EEventID& outRaisedEvent);
113  };
114  }
115 }
116 #endif // GDCMULACTIONAR_H

Generated on Wed Jun 13 2012 20:40:37 for GDCM by doxygen 1.8.1
SourceForge.net Logo