GDCM
2.0.18
|
00001 /*========================================================================= 00002 00003 Program: GDCM (Grassroots DICOM). A DICOM library 00004 00005 Copyright (c) 2006-2011 Mathieu Malaterre 00006 All rights reserved. 00007 See Copyright.txt or http://gdcm.sourceforge.net/Copyright.html for details. 00008 00009 This software is distributed WITHOUT ANY WARRANTY; without even 00010 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00011 PURPOSE. See the above copyright notice for more information. 00012 00013 =========================================================================*/ 00014 #ifndef GDCMTAGPATH_H 00015 #define GDCMTAGPATH_H 00016 00017 #include "gdcmTag.h" 00018 00019 #include <vector> 00020 00021 namespace gdcm 00022 { 00023 00030 class GDCM_EXPORT TagPath 00031 { 00032 public: 00033 TagPath(); 00034 ~TagPath(); 00035 void Print(std::ostream &) const; 00036 00041 bool ConstructFromString(const char *path); 00042 00044 static bool IsValid(const char *path); 00045 00047 bool ConstructFromTagList(Tag const *l, unsigned int n); 00048 00049 bool Push(Tag const & t); 00050 bool Push(unsigned int itemnum); 00051 00052 private: 00053 std::vector<Tag> Path; 00054 }; 00055 00056 } // end namespace gdcm 00057 00058 #endif //GDCMTAGPATH_H