X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src%2FcreaImageIOTreeDescriptor.h;h=ea3c487b5f1ce8241ec481e8c052e639cd786b57;hb=refs%2Fheads%2FchangestoITK3and4;hp=a7e5b94da131cdc6f04676d475ddc02bf64d0c33;hpb=3a22e19184c369b130d4caa992a8e98e50c7a0ee;p=creaImageIO.git diff --git a/src/creaImageIOTreeDescriptor.h b/src/creaImageIOTreeDescriptor.h index a7e5b94..ea3c487 100644 --- a/src/creaImageIOTreeDescriptor.h +++ b/src/creaImageIOTreeDescriptor.h @@ -1,3 +1,31 @@ +/* +# --------------------------------------------------------------------- +# +# Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image +# pour la Santé) +# Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton +# Previous Authors : Laurent Guigues, Jean-Pierre Roux +# CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil +# +# This software is governed by the CeCILL-B license under French law and +# abiding by the rules of distribution of free software. You can use, +# modify and/ or redistribute the software under the terms of the CeCILL-B +# license as circulated by CEA, CNRS and INRIA at the following URL +# http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html +# or in the file LICENSE.txt. +# +# As a counterpart to the access to the source code and rights to copy, +# modify and redistribute granted by the license, users are provided only +# with a limited warranty and the software's author, the holder of the +# economic rights, and the successive licensors have only limited +# liability. +# +# The fact that you are presently reading this means that you have had +# knowledge of the CeCILL-B license and that you accept its terms. +# ------------------------------------------------------------------------ +*/ + + #ifndef __creaImageIOTreeDescriptor_h_INCLUDED__ #define __creaImageIOTreeDescriptor_h_INCLUDED__ @@ -33,17 +61,25 @@ namespace creaImageIO /// Returns the number of levels of the tree unsigned int GetNumberOfLevels() - { return mLevelDescriptorList.size(); } + { return (int)mLevelDescriptorList.size(); } /// Returns the LevelDescriptor of a given level (const ref) const LevelDescriptor& GetLevelDescriptor(int level) const { return mLevelDescriptorList[level]; } /// Returns the AttributeDescriptorList of a given level (const ref) + /// type = 0 all attributes + /// type = 1 without ID and PATIENT_ID const LevelDescriptor::AttributeDescriptorListType& - GetAttributeDescriptorList(int level) const - { return mLevelDescriptorList[level].GetAttributeDescriptorList(); } + GetAttributeDescriptorList(int level, int type = 0) const + { return mLevelDescriptorList[level].GetAttributeDescriptorList(type); } + + /// Copy the AttributeDescriptorList without ID tag + void CopyAttributeDescriptorList(int level) + { + mLevelDescriptorList[level].CopyAttributeDescriptorList(); + } /// Adds a LevelDescriptor at the end of the list void Add(const LevelDescriptor&); @@ -67,6 +103,11 @@ namespace creaImageIO //Create Attribute Descriptors from a file void createDescriptorfromFile(const std::string &i_file); + + /// test if an attribute is present in DescriptionList + /// return level's name + const std::string isExist(const std::string i_attr); + private: LevelDescriptorListType mLevelDescriptorList; /// Creates the mandatory level 0 descriptor called "Root"