GDCM 2.2.0

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

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

Public Member Functions | Friends
gdcm::FindPatientRootQuery Class Reference

PatientRootQuery contains: the class which will produce a dataset for c-find with patient root. More...

`#include <gdcmFindPatientRootQuery.h>`

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

List of all members.

## Public Member Functions

| FindPatientRootQuery ()
UIDs::TSName | GetAbstractSyntaxUID () const
std::vector< Tag > | GetTagListByLevel (const EQueryLevel &inQueryLevel)
void | InitializeDataSet (const EQueryLevel &inQueryLevel)
bool | ValidateQuery (bool inStrict=true) const

## Friends

class | QueryFactory

## Detailed Description

PatientRootQuery contains: the class which will produce a dataset for c-find with patient root.

## Constructor & Destructor Documentation

gdcm::FindPatientRootQuery::FindPatientRootQuery | ( |  | ) |

## Member Function Documentation

UIDs::TSName gdcm::FindPatientRootQuery::GetAbstractSyntaxUID | ( |  | ) | const`[virtual]`

Implements gdcm::BaseRootQuery.

std::vector<Tag> gdcm::FindPatientRootQuery::GetTagListByLevel | ( | const EQueryLevel & | inQueryLevel | ) | `[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.

Implements gdcm::BaseRootQuery.

void gdcm::FindPatientRootQuery::InitializeDataSet | ( | const EQueryLevel & | inQueryLevel | ) | `[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

Implements gdcm::BaseRootQuery.

bool gdcm::FindPatientRootQuery::ValidateQuery | ( | bool | inStrict = `true` | ) | const`[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.

Implements gdcm::BaseRootQuery.

## Friends And Related Function Documentation

friend class QueryFactory`[friend]`

Reimplemented from gdcm::BaseRootQuery.

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

- gdcmFindPatientRootQuery.h