GDCM
2.2.0
|
PresentationContextGenerator This class is responsible for generating the proper PresentationContext that will be used in subsequent operation during a DICOM Query/Retrieve association. The step of the association is very sensible as special care need to be taken to explicitly define what instance are going to be send and how they are encoded. More...
#include <gdcmPresentationContextGenerator.h>
Public Types | |
typedef std::vector < PresentationContext > | PresentationContextArrayType |
typedef PresentationContextArrayType::size_type | SizeType |
Public Member Functions | |
PresentationContextGenerator () | |
bool | GenerateFromFilenames (const Directory::FilenamesType &files) |
bool | GenerateFromUID (UIDs::TSName asname) |
Generate the PresentationContext array from a UID (eg. VerificationSOPClass) | |
PresentationContextArrayType const & | GetPresentationContexts () |
void | SetDefaultTransferSyntax (const TransferSyntax &ts) |
Not implemented for now. GDCM internally uses Implicit Little Endian. | |
void | SetMergeModeToAbstractSyntax () |
void | SetMergeModeToTransferSyntax () |
Protected Member Functions | |
bool | AddPresentationContext (const char *as, const char *ts) |
const char * | GetDefaultTransferSyntax () const |
PresentationContextGenerator This class is responsible for generating the proper PresentationContext that will be used in subsequent operation during a DICOM Query/Retrieve association. The step of the association is very sensible as special care need to be taken to explicitly define what instance are going to be send and how they are encoded.
For example a PresentationContext will express that negotiation requires that CT Image Storage are send using JPEG Lossless, while US Image Storage are sent using RLE Transfer Syntax.
Two very different API are exposed one which will always default to little endian transfer syntax see GenerateFromUID() This API is used for C-ECHO, C-FIND and C-MOVE (SCU). Another API: GenerateFromFilenames() is used for C-STORE (SCU) as it will loop over all filenames argument to detect the actual encoding. and therefore find the proper encoding to be used.
Two modes are available. The default mode (SetMergeModeToAbstractSyntax) append PresentationContext (one AbstractSyntax and one TransferSyntax), as long a they are different. Eg MR Image Storage/JPEG2000 and MR Image Storage/JPEGLossless would be considered different. the other mode SetMergeModeToTransferSyntax merge any new TransferSyntax to the already existing PresentationContext in order to re-use the same AbstractSyntax.
typedef std::vector<PresentationContext> gdcm::PresentationContextGenerator::PresentationContextArrayType |
typedef PresentationContextArrayType::size_type gdcm::PresentationContextGenerator::SizeType |
gdcm::PresentationContextGenerator::PresentationContextGenerator | ( | ) |
|
protected |
bool gdcm::PresentationContextGenerator::GenerateFromFilenames | ( | const Directory::FilenamesType & | files | ) |
Generate the PresentationContext array from a File-Set. File specified needs to be valid DICOM files. Used for C-STORE operations
bool gdcm::PresentationContextGenerator::GenerateFromUID | ( | UIDs::TSName | asname | ) |
Generate the PresentationContext array from a UID (eg. VerificationSOPClass)
|
protected |
|
inline |
void gdcm::PresentationContextGenerator::SetDefaultTransferSyntax | ( | const TransferSyntax & | ts | ) |
Not implemented for now. GDCM internally uses Implicit Little Endian.
void gdcm::PresentationContextGenerator::SetMergeModeToAbstractSyntax | ( | ) |
void gdcm::PresentationContextGenerator::SetMergeModeToTransferSyntax | ( | ) |