32 #include "dcmtk/config/osconfig.h" 34 #include "dcmtk/dcmdata/dctk.h" 35 #include "dcmtk/dcmnet/dcompat.h" 36 #include "dcmtk/dcmnet/dimse.h" 37 #include "dcmtk/dcmnet/dcasccff.h" 38 #include "dcmtk/dcmnet/dcasccfg.h" 47 enum DcmCloseAssociationType
50 DCMSCU_RELEASE_ASSOCIATION,
52 DCMSCU_ABORT_ASSOCIATION,
54 DCMSCU_PEER_REQUESTED_RELEASE,
56 DCMSCU_PEER_ABORTED_ASSOCIATION
95 Uint32 numResults()
const;
151 T_ASC_PresentationContextID findPresentationContextID(
const OFString &abstractSyntax,
160 virtual OFCondition sendECHORequest(
const T_ASC_PresentationContextID presID);
190 virtual OFCondition sendSTORERequest(
const T_ASC_PresentationContextID presID,
195 Uint16 &rspStatusCode);
209 virtual OFCondition sendFINDRequest(T_ASC_PresentationContextID presID,
223 virtual OFCondition handleFINDResponse(Uint16 presContextID,
225 OFBool &waitForNextResponse);
234 virtual OFCondition sendCANCELRequest(Uint16 presContextID);
249 virtual OFCondition sendACTIONRequest(
const T_ASC_PresentationContextID presID,
251 const Uint16 actionTypeID,
253 Uint16 &rspStatusCode);
267 const int timeout = 0);
272 virtual void closeAssociation(
const DcmCloseAssociationType closeType);
279 void setMaxReceivePDULength(
const unsigned long maxRecPDU);
284 void setDIMSEBlockingMode(
const T_DIMSE_BlockingMode blockingMode);
289 void setAETitle(
const OFString &myAETtitle);
294 void setPeerHostName(
const OFString &peerHostName);
299 void setPeerAETitle(
const OFString &peerAETitle);
304 void setPeerPort(
const Uint16 peerPort);
311 void setDIMSETimeout(
const Uint32 dimseTimeout);
317 void setACSETimeout(
const Uint32 acseTimeout);
323 void setAssocConfigFileAndProfile(
const OFString &filename,
330 void setVerbosePCMode(
const OFBool mode);
337 OFBool isConnected()
const;
342 Uint32 getMaxReceivePDULength()
const;
347 T_DIMSE_BlockingMode getDIMSEBlockingMode()
const;
357 const OFString &getPeerHostName()
const;
362 const OFString &getPeerAETitle()
const;
367 Uint16 getPeerPort()
const;
373 Uint32 getDIMSETimeout()
const;
379 Uint32 getACSETimeout()
const;
386 OFBool getVerbosePCMode()
const;
391 OFBool getTLSEnabled()
const;
410 OFCondition sendDIMSEMessage(
const T_ASC_PresentationContextID presID,
413 DIMSE_ProgressCallback callback,
414 void *callbackContext,
429 E_TransferSyntax &transferSyntax);
459 OFCondition receiveDIMSECommand(T_ASC_PresentationContextID *presID,
463 const Uint32 timeout = 0);
478 OFCondition receiveDIMSEDataset(T_ASC_PresentationContextID *presID,
480 DIMSE_ProgressCallback callback,
481 void *callbackContext);
491 void findPresentationContext(
const T_ASC_PresentationContextID presID,
584 Uint16 nextMessageID();
OFString m_assocConfigFilename
Configuration file for presentation contexts (optional)
Uint16 m_messageIDRespondedTo
Mandatory response field.
OFList< OFString > transferSyntaxes
List of Transfer Syntaxes for Presentation Context.
Uint16 m_status
Mandatory Response Field.
T_ASC_Network * m_net
The DICOM network the association is based on.
virtual ~FINDResponse()
Destructor, cleans up internal memory (datasets if present)
Class representing a bunch of FINDResponses from a single C-FIND session.
T_ASC_Association * m_assoc
Associaton of this SCU. This class only handles 1 association at a time.
T_DIMSE_Message * m_openDIMSERequest
The last DIMSE successfully sent, unresponded DIMSE request.
DcmDataset * m_dataset
Conditional response field (NULL if absent)
factory class which creates transport layer connections.
OFString m_peerAETitle
AEtitle of remote application.
OFString m_ourAETitle
AEtitle of this application.
OFString m_assocConfigFile
Configuration file containing association parameters.
T_DIMSE_BlockingMode m_blockMode
DIMSE blocking mode.
Uint32 m_acseTimeout
ACSE timeout.
FINDResponse()
Standard constructor.
OFList< DcmSCUPresContext > m_presContexts
List of presentation contexts that should be negotiated.
Class representing a single C-FIND response.
OFString m_peer
Peer hostname.
Defines presentation context, consisting of one abstract syntax name and a list of transfer syntaxes ...
a class handling the DICOM dataset format (files without meta header)
Uint16 m_peerPort
Port of remote application entity.
Base class for implementing DICOM Service Class User functionality.
a simple string class that implements a subset of std::string.
T_ASC_Parameters * m_params
Association parameters.
OFBool m_verbosePCMode
Verbose PC mode.
Uint32 m_dimseTimeout
DIMSE timeout.
OFString abstractSyntaxName
Abstract Syntax Name of Presentation Context.
General purpose class for condition codes.
OFString m_assocConfigProfile
Profile in configuration file that should be used (optional)
Uint32 m_maxReceivePDULength
Maximum PDU size.