DcmQueryRetrieveSCP Class Reference

main class for Query/Retrieve Service Class Provider More...

List of all members.

Public Member Functions

 DcmQueryRetrieveSCP (const DcmQueryRetrieveConfig &config, const DcmQueryRetrieveOptions &options, const DcmQueryRetrieveDatabaseHandleFactory &factory)
 constructor
virtual ~DcmQueryRetrieveSCP ()
 destructor
OFCondition waitForAssociation (T_ASC_Network *theNet)
 wait for incoming A-ASSOCIATE requests, perform association negotiation and serve the requests.
void setDatabaseFlags (OFBool dbCheckFindIdentifier, OFBool dbCheckMoveIdentifier)
 set database flags
void cleanChildren ()
 clean up terminated child processes.

Private Member Functions

OFCondition negotiateAssociation (T_ASC_Association *assoc)
 perform association negotiation for an incoming A-ASSOCIATE request based on the SCP configuration and option flags.
OFCondition refuseAssociation (T_ASC_Association **assoc, CTN_RefuseReason reason)
OFCondition handleAssociation (T_ASC_Association *assoc, OFBool correctUIDPadding)
OFCondition echoSCP (T_ASC_Association *assoc, T_DIMSE_C_EchoRQ *req, T_ASC_PresentationContextID presId)
OFCondition findSCP (T_ASC_Association *assoc, T_DIMSE_C_FindRQ *request, T_ASC_PresentationContextID presID, DcmQueryRetrieveDatabaseHandle &dbHandle)
OFCondition getSCP (T_ASC_Association *assoc, T_DIMSE_C_GetRQ *request, T_ASC_PresentationContextID presID, DcmQueryRetrieveDatabaseHandle &dbHandle)
OFCondition moveSCP (T_ASC_Association *assoc, T_DIMSE_C_MoveRQ *request, T_ASC_PresentationContextID presID, DcmQueryRetrieveDatabaseHandle &dbHandle)
OFCondition storeSCP (T_ASC_Association *assoc, T_DIMSE_C_StoreRQ *req, T_ASC_PresentationContextID presId, DcmQueryRetrieveDatabaseHandle &dbHandle, OFBool correctUIDPadding)
OFCondition dispatch (T_ASC_Association *assoc, OFBool correctUIDPadding)

Static Private Member Functions

static void refuseAnyStorageContexts (T_ASC_Association *assoc)

Private Attributes

const DcmQueryRetrieveConfigconfig_
 configuration facility
DcmQueryRetrieveProcessTable processtable_
 child process table, only used in multi-processing mode
OFBool dbCheckFindIdentifier_
 flag for database interface: check C-FIND identifier
OFBool dbCheckMoveIdentifier_
 flag for database interface: check C-MOVE identifier
const DcmQueryRetrieveDatabaseHandleFactoryfactory_
 factory object used to create database handles
const DcmQueryRetrieveOptionsoptions_
 SCP configuration options.


Detailed Description

main class for Query/Retrieve Service Class Provider

Definition at line 62 of file dcmqrsrv.h.


Constructor & Destructor Documentation

DcmQueryRetrieveSCP::DcmQueryRetrieveSCP ( const DcmQueryRetrieveConfig config,
const DcmQueryRetrieveOptions options,
const DcmQueryRetrieveDatabaseHandleFactory factory 
)

constructor

Parameters:
config SCP configuration facility
options SCP configuration options
factory factory object used to create database handles


Member Function Documentation

OFCondition DcmQueryRetrieveSCP::waitForAssociation ( T_ASC_Network theNet  ) 

wait for incoming A-ASSOCIATE requests, perform association negotiation and serve the requests.

May fork child processes depending on availability of the fork() system function and configuration options.

Parameters:
theNet network structure for listen socket
Returns:
EC_Normal if successful, an error code otherwise

void DcmQueryRetrieveSCP::setDatabaseFlags ( OFBool  dbCheckFindIdentifier,
OFBool  dbCheckMoveIdentifier 
)

set database flags

Parameters:
dbCheckFindIdentifier flag indicating that a check should be performed for C-FIND requests
dbCheckMoveIdentifier flag indicating that a check should be performed for C-MOVE requests

OFCondition DcmQueryRetrieveSCP::negotiateAssociation ( T_ASC_Association assoc  )  [private]

perform association negotiation for an incoming A-ASSOCIATE request based on the SCP configuration and option flags.

No A-ASSOCIATE response is generated, this is left to the caller.

Parameters:
assoc incoming association
Returns:
EC_Normal if successful, an error code otherwise


The documentation for this class was generated from the following file:


Generated on 6 Jan 2011 for OFFIS DCMTK Version 3.6.0 by Doxygen 1.5.1