GDCM 3.2.1

gdcmULActionAE.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 GDCMULACTIONAE_H
19#define GDCMULACTIONAE_H
20
21#include "gdcmULAction.h"
22
31
32 namespace gdcm {
33 namespace network {
34
35 //Issue TRANSPORT CONNECT request primitive to local transport service.
36 class ULActionAE1 : public ULAction {
37 public:
38 EStateID PerformAction(Subject *s, ULEvent& inEvent, ULConnection& inConnection,
39 bool& outWaitingForEvent, EEventID& outRaisedEvent) override;
40 };
41
42 //Send A-ASSOCIATE-RQ-PDU
43 //Next State: eSta5WaitRemoteAssoc
44 class ULActionAE2 : public ULAction {
45 public:
46 EStateID PerformAction(Subject *s, ULEvent& inEvent, ULConnection& inConnection,
47 bool& outWaitingForEvent, EEventID& outRaisedEvent) override;
48 };
49
50 //Issue A-ASSOCIATE confirmation (accept) primitive
51 //Next State: eSta6TransferReady
52 class ULActionAE3 : public ULAction {
53 public:
54 EStateID PerformAction(Subject *s, ULEvent& inEvent, ULConnection& inConnection,
55 bool& outWaitingForEvent, EEventID& outRaisedEvent) override;
56 };
57
58 //Issue A-ASSOCIATE confirmation (reject) primitive and close transport connection
59 //Next State: eSta1Idle
60 class ULActionAE4 : public ULAction {
61 public:
62 EStateID PerformAction(Subject *s, ULEvent& inEvent, ULConnection& inConnection,
63 bool& outWaitingForEvent, EEventID& outRaisedEvent) override;
64 };
65
66 //Issue Transport connection response primitive, start ARTIM timer
67 //Next State: eSta2Open
68 class ULActionAE5 : public ULAction {
69 public:
70 EStateID PerformAction(Subject *s, ULEvent& inEvent, ULConnection& inConnection,
71 bool& outWaitingForEvent, EEventID& outRaisedEvent) override;
72 };
73
74 //Stop ARTIM timer and if A-ASSOCIATE-RQ acceptable by service-provider:
75 //- issue A-ASSOCIATE indication primitive
76 //Next state: eSta3WaitLocalAssoc
77 //otherwise:
78 //- issue A-ASSOCIATE-RJ-PDU and start ARTIM timer
79 //Next state: eSta13AwaitingClose
80 class ULActionAE6 : public ULAction {
81 public:
82 EStateID PerformAction(Subject *s, ULEvent& inEvent, ULConnection& inConnection,
83 bool& outWaitingForEvent, EEventID& outRaisedEvent) override;
84 };
85
86 //Send A-ASSOCIATE-AC PDU
87 //Next State: eSta6TransferReady
88 class ULActionAE7 : public ULAction {
89 public:
90 EStateID PerformAction(Subject *s, ULEvent& inEvent, ULConnection& inConnection,
91 bool& outWaitingForEvent, EEventID& outRaisedEvent) override;
92 };
93
94 //Send A-ASSOCIATE-RJ PDU and start ARTIM timer
95 //Next State: eSta13AwaitingClose
96 class ULActionAE8 : public ULAction {
97 public:
98 EStateID PerformAction(Subject *s, ULEvent& inEvent, ULConnection& inConnection,
99 bool& outWaitingForEvent, EEventID& outRaisedEvent) override;
100 };
101 }
102}
103#endif // GDCMULACTIONAE_H
gdcm::Subject
Subject.
Definition gdcmSubject.h:29
gdcm::network::ULActionAE1
Definition gdcmULActionAE.h:36
gdcm::network::ULActionAE1::PerformAction
EStateID PerformAction(Subject *s, ULEvent &inEvent, ULConnection &inConnection, bool &outWaitingForEvent, EEventID &outRaisedEvent) override
gdcm::network::ULActionAE2
Definition gdcmULActionAE.h:44
gdcm::network::ULActionAE2::PerformAction
EStateID PerformAction(Subject *s, ULEvent &inEvent, ULConnection &inConnection, bool &outWaitingForEvent, EEventID &outRaisedEvent) override
gdcm::network::ULActionAE3
Definition gdcmULActionAE.h:52
gdcm::network::ULActionAE3::PerformAction
EStateID PerformAction(Subject *s, ULEvent &inEvent, ULConnection &inConnection, bool &outWaitingForEvent, EEventID &outRaisedEvent) override
gdcm::network::ULActionAE4
Definition gdcmULActionAE.h:60
gdcm::network::ULActionAE4::PerformAction
EStateID PerformAction(Subject *s, ULEvent &inEvent, ULConnection &inConnection, bool &outWaitingForEvent, EEventID &outRaisedEvent) override
gdcm::network::ULActionAE5
Definition gdcmULActionAE.h:68
gdcm::network::ULActionAE5::PerformAction
EStateID PerformAction(Subject *s, ULEvent &inEvent, ULConnection &inConnection, bool &outWaitingForEvent, EEventID &outRaisedEvent) override
gdcm::network::ULActionAE6
Definition gdcmULActionAE.h:80
gdcm::network::ULActionAE6::PerformAction
EStateID PerformAction(Subject *s, ULEvent &inEvent, ULConnection &inConnection, bool &outWaitingForEvent, EEventID &outRaisedEvent) override
gdcm::network::ULActionAE7
Definition gdcmULActionAE.h:88
gdcm::network::ULActionAE7::PerformAction
EStateID PerformAction(Subject *s, ULEvent &inEvent, ULConnection &inConnection, bool &outWaitingForEvent, EEventID &outRaisedEvent) override
gdcm::network::ULActionAE8
Definition gdcmULActionAE.h:96
gdcm::network::ULActionAE8::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