GDCM 2.2.1

- Main Page
- Related Pages
- Namespaces
- Classes
- Files
- Examples

- File List
- File Members

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