GDCM 3.0.24
gdcmULActionAA.h
Go to the documentation of this file.
1/*=========================================================================
2 *
3 * Copyright NumFOCUS
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 GDCMULACTIONAA_H
19#define GDCMULACTIONAA_H
20
21#include "gdcmULAction.h"
22
31namespace gdcm {
32 namespace network {
33
34 //Send A-ABORT PDU (service-user source) and start (or restart if already started) ARTIM timer
35 //Next State: eSta13AwaitingClose
36 class ULActionAA1 : public ULAction {
37 public:
38 EStateID PerformAction(Subject *s, ULEvent& inEvent, ULConnection& inConnection,
39 bool& outWaitingForEvent, EEventID& outRaisedEvent) override;
40 };
41
42 //Stop ARTIM timer if running. Close transport connection.
43 //Next State: eSta1Idle
44 class ULActionAA2 : public ULAction {
45 public:
46 EStateID PerformAction(Subject *s, ULEvent& inEvent, ULConnection& inConnection,
47 bool& outWaitingForEvent, EEventID& outRaisedEvent) override;
48 };
49
50 //If (service-user initiated abort)
51 //- issue A-ABORT indication and close transport connection
52 //otherwise (service-provider initiated abort):
53 //- issue A-P-ABORT indication and close transport connection
54 //Next State: eSta1Idle
55 class ULActionAA3 : public ULAction {
56 public:
57 EStateID PerformAction(Subject *s, ULEvent& inEvent, ULConnection& inConnection,
58 bool& outWaitingForEvent, EEventID& outRaisedEvent) override;
59 };
60
61 //Issue A-P-ABORT indication primitive
62 //Next State: eSta1Idle
63 class ULActionAA4 : public ULAction {
64 public:
65 EStateID PerformAction(Subject *s, ULEvent& inEvent, ULConnection& inConnection,
66 bool& outWaitingForEvent, EEventID& outRaisedEvent) override;
67 };
68
69 //Stop ARTIM timer
70 //Next State: eSta1Idle
71 class ULActionAA5 : public ULAction {
72 public:
73 EStateID PerformAction(Subject *s, ULEvent& inEvent, ULConnection& inConnection,
74 bool& outWaitingForEvent, EEventID& outRaisedEvent) override;
75 };
76
77 //Ignore PDU
78 //Next State: eSta13AwaitingClose
79 class ULActionAA6 : public ULAction {
80 public:
81 EStateID PerformAction(Subject *s, ULEvent& inEvent, ULConnection& inConnection,
82 bool& outWaitingForEvent, EEventID& outRaisedEvent) override;
83 };
84
85 //Send A-ABORT PDU
86 //Next State: eSta13AwaitingClose
87 class ULActionAA7 : public ULAction {
88 public:
89 EStateID PerformAction(Subject *s, ULEvent& inEvent, ULConnection& inConnection,
90 bool& outWaitingForEvent, EEventID& outRaisedEvent) override;
91 };
92
93 //Send A-ABORT PDU (service-provider source), issue an A-P-ABORT indication, and start ARTIM timer
94 //Next State: eSta13AwaitingClose
95 class ULActionAA8 : public ULAction {
96 public:
97 EStateID PerformAction(Subject *s, ULEvent& inEvent, ULConnection& inConnection,
98 bool& outWaitingForEvent, EEventID& outRaisedEvent) override;
99 };
100 }
101}
102
103#endif // GDCMULACTIONAA_H
Subject.
Definition gdcmSubject.h:29
Definition gdcmULActionAA.h:36
EStateID PerformAction(Subject *s, ULEvent &inEvent, ULConnection &inConnection, bool &outWaitingForEvent, EEventID &outRaisedEvent) override
Definition gdcmULActionAA.h:44
EStateID PerformAction(Subject *s, ULEvent &inEvent, ULConnection &inConnection, bool &outWaitingForEvent, EEventID &outRaisedEvent) override
Definition gdcmULActionAA.h:55
EStateID PerformAction(Subject *s, ULEvent &inEvent, ULConnection &inConnection, bool &outWaitingForEvent, EEventID &outRaisedEvent) override
Definition gdcmULActionAA.h:63
EStateID PerformAction(Subject *s, ULEvent &inEvent, ULConnection &inConnection, bool &outWaitingForEvent, EEventID &outRaisedEvent) override
Definition gdcmULActionAA.h:71
EStateID PerformAction(Subject *s, ULEvent &inEvent, ULConnection &inConnection, bool &outWaitingForEvent, EEventID &outRaisedEvent) override
Definition gdcmULActionAA.h:79
EStateID PerformAction(Subject *s, ULEvent &inEvent, ULConnection &inConnection, bool &outWaitingForEvent, EEventID &outRaisedEvent) override
Definition gdcmULActionAA.h:87
EStateID PerformAction(Subject *s, ULEvent &inEvent, ULConnection &inConnection, bool &outWaitingForEvent, EEventID &outRaisedEvent) override
Definition gdcmULActionAA.h:95
EStateID PerformAction(Subject *s, ULEvent &inEvent, ULConnection &inConnection, bool &outWaitingForEvent, EEventID &outRaisedEvent) override
ULAction.
Definition gdcmULAction.h:62
ULConnection.
Definition gdcmULConnection.h:58
ULEvent.
Definition gdcmULEvent.h:37
EStateID
Definition gdcmNetworkStateID.h:32
EEventID
Definition gdcmNetworkEvents.h:33
Definition gdcmASN1.h:21