GDCM 2.2.1

- Main Page
- Related Pages
- Namespaces
- Classes
- Files
- Examples

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
gdcm::BaseRootQuery Class Referenceabstract

BaseRootQuery contains: a baseclass which will produce a dataset for c-find and c-move with patient/study root. More...

`#include <gdcmBaseRootQuery.h>`

Inheritance diagram for gdcm::BaseRootQuery:
[legend]
Collaboration diagram for gdcm::BaseRootQuery:
[legend]

## Public Member Functions

virtual | ~BaseRootQuery ()
void | AddQueryDataSet (const DataSet &ds)
virtual UIDs::TSName | GetAbstractSyntaxUID () const =0
DataSet const & | GetQueryDataSet () const
| Set/Get the internal representation of the query as a DataSet.
DataSet & | GetQueryDataSet ()
virtual std::vector< Tag > | GetTagListByLevel (const EQueryLevel &inQueryLevel)=0
virtual void | InitializeDataSet (const EQueryLevel &inQueryLevel)=0
void | SetSearchParameter (const Tag &inTag, const std::string &inValue)
void | SetSearchParameter (const std::string &inKeyword, const std::string &inValue)
virtual bool | ValidateQuery (bool inStrict=true) const =0
virtual const std::ostream & | WriteHelpFile (std::ostream &os)
virtual bool | WriteQuery (const std::string &inFileName)
Public Member Functions inherited from gdcm::Object
| Object ()
| Object (const Object &)
| Special requirement for copy/cstor, assigment operator.
virtual | ~Object ()
void | operator= (const Object &)
virtual void | Print (std::ostream &) const

## Protected Member Functions

| BaseRootQuery ()
void | SetSearchParameter (const Tag &inTag, const DictEntry &inDictEntry, const std::string &inValue)
Protected Member Functions inherited from gdcm::Object
void | Register ()
void | UnRegister ()

## Protected Attributes

DataSet | mDataSet
std::string | mHelpDescription
QueryImage | mImage
QueryPatient | mPatient
ERootType | mRootType
QuerySeries | mSeries
QueryStudy | mStudy

## Friends

class | QueryFactory

## Detailed Description

BaseRootQuery contains: a baseclass which will produce a dataset for c-find and c-move with patient/study root.

This class contains the functionality used in patient c-find and c-move queries. PatientRootQuery and StudyRootQuery derive from this class.

Namely: 1) list all tags associated with a particular query type 2) produce a query dataset via tag association

Eventually, it can be used to validate a particular dataset type.

The dataset held by this object (or, really, one of its derivates) should be passed to a c-find or c-move query.

## Constructor & Destructor Documentation

gdcm::BaseRootQuery::BaseRootQuery | ( |  | ) |

protected

virtual gdcm::BaseRootQuery::~BaseRootQuery | ( |  | ) |

virtual

## Member Function Documentation

void gdcm::BaseRootQuery::AddQueryDataSet | ( | const DataSet & | ds | ) |

virtual UIDs::TSName gdcm::BaseRootQuery::GetAbstractSyntaxUID | ( |  | ) | const

pure virtual

Implemented in gdcm::FindStudyRootQuery, gdcm::MovePatientRootQuery, gdcm::MoveStudyRootQuery, and gdcm::FindPatientRootQuery.

DataSet const& gdcm::BaseRootQuery::GetQueryDataSet | ( |  | ) | const

Set/Get the internal representation of the query as a DataSet.

DataSet& gdcm::BaseRootQuery::GetQueryDataSet | ( |  | ) |

virtual std::vector<Tag> gdcm::BaseRootQuery::GetTagListByLevel | ( | const EQueryLevel & | inQueryLevel | ) |

pure virtual

this function will return all tags at a given query level, so that they maybe selected for searching. The boolean forFind is true if the query is a find query, or false for a move query.

Implemented in gdcm::FindPatientRootQuery, gdcm::FindStudyRootQuery, gdcm::MovePatientRootQuery, and gdcm::MoveStudyRootQuery.

virtual void gdcm::BaseRootQuery::InitializeDataSet | ( | const EQueryLevel & | inQueryLevel | ) |

pure virtual

this function sets tag 8,52 to the appropriate value based on query level also fills in the right unique tags, as per the standard's requirements should allow for connection with dcmtk

Implemented in gdcm::FindPatientRootQuery, gdcm::FindStudyRootQuery, gdcm::MovePatientRootQuery, and gdcm::MoveStudyRootQuery.

void gdcm::BaseRootQuery::SetSearchParameter | ( | const Tag & | inTag,
|  | const DictEntry & | inDictEntry,
|  | const std::string & | inValue
| ) |  |

protected

void gdcm::BaseRootQuery::SetSearchParameter | ( | const Tag & | inTag,
|  | const std::string & | inValue
| ) |  |

void gdcm::BaseRootQuery::SetSearchParameter | ( | const std::string & | inKeyword,
|  | const std::string & | inValue
| ) |  |

virtual bool gdcm::BaseRootQuery::ValidateQuery | ( | bool | inStrict = `true` | ) | const

pure virtual

have to be able to ensure that 0x8,0x52 is set (which will be true if InitializeDataSet is called...) that the level is appropriate (ie, not setting PATIENT for a study query that the tags in the query match the right level (either required, unique, optional) by default, this function checks to see if the query is for finding, which is more permissive than for moving. For moving, only the unique tags are allowed. 10 Jan 2011: adding in the 'strict' mode. according to the standard (at least, how I've read it), only tags for a particular level should be allowed in a particular query (ie, just series level tags in a series level query). However, it seems that dcm4chee doesn't share that interpretation. So, if 'inStrict' is false, then tags from the current level and all higher levels are now considered valid. So, if you're doing a non-strict series-level query, tags from the patient and study level can be passed along as well.

Implemented in gdcm::FindStudyRootQuery, gdcm::MovePatientRootQuery, gdcm::MoveStudyRootQuery, and gdcm::FindPatientRootQuery.

virtual const std::ostream& gdcm::BaseRootQuery::WriteHelpFile | ( | std::ostream & | os | ) |

virtual

virtual bool gdcm::BaseRootQuery::WriteQuery | ( | const std::string & | inFileName | ) |

virtual

## Friends And Related Function Documentation

friend class QueryFactory

friend

## Member Data Documentation

DataSet gdcm::BaseRootQuery::mDataSet

protected

std::string gdcm::BaseRootQuery::mHelpDescription

protected

QueryImage gdcm::BaseRootQuery::mImage

protected

QueryPatient gdcm::BaseRootQuery::mPatient

protected

ERootType gdcm::BaseRootQuery::mRootType

protected

QuerySeries gdcm::BaseRootQuery::mSeries

protected

QueryStudy gdcm::BaseRootQuery::mStudy

protected

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

- gdcmBaseRootQuery.h