GDCM 2.2.0

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

- File List
- File Members

gdcmQueryFactory.h
Go to the documentation of this file.

    00001 /*=========================================================================
    00002  *
    00003  *  Copyright Insight Software Consortium
    00004  *
    00005  *  Licensed under the Apache License, Version 2.0 (the "License");
    00006  *  you may not use this file except in compliance with the License.
    00007  *  You may obtain a copy of the License at
    00008  *
    00009  *         http://www.apache.org/licenses/LICENSE-2.0.txt
    00010  *
    00011  *  Unless required by applicable law or agreed to in writing, software
    00012  *  distributed under the License is distributed on an "AS IS" BASIS,
    00013  *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    00014  *  See the License for the specific language governing permissions and
    00015  *  limitations under the License.
    00016  *
    00017  *=========================================================================*/
    00018 #ifndef GDCMQUERYFACTORY_H
    00019 #define GDCMQUERYFACTORY_H
    00020
    00021 #include "gdcmBaseRootQuery.h"
    00022
    00023 namespace gdcm{
    00027   enum ECharSet {
    00028     eLatin1 = 0,
    00029     eLatin2,
    00030     eLatin3,
    00031     eLatin4,
    00032     eCyrillic,
    00033     eArabic,
    00034     eGreek,
    00035     eHebrew,
    00036     eLatin5, // Latin Alphabet No. 5 (Turkish) Extended
    00037     eJapanese, // JIS X 0201 (Shift JIS) Extended
    00038     eThai, // TIS 620-2533 (Thai) Extended
    00039     eJapaneseKanjiMultibyte, // JIS X 0208 (Kanji) Extended
    00040     eJapaneseSupplementaryKanjiMultibyte, // JIS X 0212 (Kanji) Extended
    00041     eKoreanHangulHanjaMultibyte, // KS X 1001 (Hangul and Hanja) Extended
    00042     eUTF8,
    00043     eGB18030 // Chinese (Simplified) Extended
    00044   };
    00045
    00058 class GDCM_EXPORT QueryFactory
    00059 {
    00060 public:
    00066   static BaseRootQuery* ProduceQuery(ERootType inRootType, EQueryType inQueryType,
    00067     EQueryLevel inQueryLevel);
    00068
    00076   static DataElement ProduceCharacterSetDataElement(
    00077     const std::vector<ECharSet>& inCharSetType);
    00078
    00081   static ECharSet GetCharacterFromCurrentLocale();
    00082
    00084   static void ListCharSets(std::ostream& os);
    00085 };
    00086
    00087 } // end namespace gdcm
    00088
    00089 #endif // GDCMQUERYFACTORY_H