GDCM 3.2.1

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
30
31 namespace 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
gdcm::Subject
Subject.
Definition gdcmSubject.h:29
gdcm::network::ULActionAA1
Definition gdcmULActionAA.h:36
gdcm::network::ULActionAA1::PerformAction
EStateID PerformAction(Subject *s, ULEvent &inEvent, ULConnection &inConnection, bool &outWaitingForEvent, EEventID &outRaisedEvent) override
gdcm::network::ULActionAA2
Definition gdcmULActionAA.h:44
gdcm::network::ULActionAA2::PerformAction
EStateID PerformAction(Subject *s, ULEvent &inEvent, ULConnection &inConnection, bool &outWaitingForEvent, EEventID &outRaisedEvent) override
gdcm::network::ULActionAA3
Definition gdcmULActionAA.h:55
gdcm::network::ULActionAA3::PerformAction
EStateID PerformAction(Subject *s, ULEvent &inEvent, ULConnection &inConnection, bool &outWaitingForEvent, EEventID &outRaisedEvent) override
gdcm::network::ULActionAA4
Definition gdcmULActionAA.h:63
gdcm::network::ULActionAA4::PerformAction
EStateID PerformAction(Subject *s, ULEvent &inEvent, ULConnection &inConnection, bool &outWaitingForEvent, EEventID &outRaisedEvent) override
gdcm::network::ULActionAA5
Definition gdcmULActionAA.h:71
gdcm::network::ULActionAA5::PerformAction
EStateID PerformAction(Subject *s, ULEvent &inEvent, ULConnection &inConnection, bool &outWaitingForEvent, EEventID &outRaisedEvent) override
gdcm::network::ULActionAA6
Definition gdcmULActionAA.h:79
gdcm::network::ULActionAA6::PerformAction
EStateID PerformAction(Subject *s, ULEvent &inEvent, ULConnection &inConnection, bool &outWaitingForEvent, EEventID &outRaisedEvent) override
gdcm::network::ULActionAA7
Definition gdcmULActionAA.h:87
gdcm::network::ULActionAA7::PerformAction
EStateID PerformAction(Subject *s, ULEvent &inEvent, ULConnection &inConnection, bool &outWaitingForEvent, EEventID &outRaisedEvent) override
gdcm::network::ULActionAA8
Definition gdcmULActionAA.h:95
gdcm::network::ULActionAA8::PerformAction
EStateID PerformAction(Subject *s, ULEvent &inEvent, ULConnection &inConnection, bool &outWaitingForEvent, EEventID &outRaisedEvent) override
gdcm::network::ULAction::ULAction
ULAction()=default
gdcm::network::ULConnection
ULConnection.
Definition gdcmULConnection.h:58
gdcm::network::ULEvent
ULEvent.
Definition gdcmULEvent.h:37
gdcmULAction.h
gdcm::network
Definition gdcmAAbortPDU.h:24
gdcm::network::EStateID
EStateID
Definition gdcmNetworkStateID.h:32
gdcm::network::EEventID
EEventID
Definition gdcmNetworkEvents.h:33
gdcm
Definition gdcmASN1.h:21