00001 #include <creaImageIOTreeLevelDescriptor.h> 00002 #include <creaImageIOSystem.h> 00003 00004 00005 namespace creaImageIO 00006 { 00007 namespace tree 00008 { 00010 void LevelDescriptor::Add(const AttributeDescriptor& a) 00011 { 00012 GimmickMessage(5,"Adding Attribute Descriptor '"<<a.GetKey() 00013 <<"' to LevelDescriptor" 00014 <<std::endl); 00015 mAttributeDescriptorList.push_back(a); 00016 if ( a.GetFlags() & AttributeDescriptor::IDENTIFIER ) 00017 { 00018 GimmickMessage(6,"Is an IDENTIFIER"<<std::endl); 00019 mIdentifierList.push_back(a.GetKey()); 00020 } 00021 if ( a.GetFlags() & AttributeDescriptor::LABEL ) 00022 { 00023 GimmickMessage(6,"Is a LABEL"<<std::endl); 00024 mLabelList.push_back(a.GetKey()); 00025 } 00026 } 00027 00028 // Copy the descriptor List without ID and PATIENT_ID attributes 00029 void LevelDescriptor::CopyAttributeDescriptorList() 00030 { 00031 mAttributeDescriptorListWID = mAttributeDescriptorList; 00032 for(AttributeDescriptorListType::iterator it = mAttributeDescriptorListWID.begin(); 00033 it != mAttributeDescriptorListWID.end(); it++) 00034 { 00035 if((*it).GetKey() == "ID") 00036 { 00037 mAttributeDescriptorListWID.erase(it); 00038 break; 00039 } 00040 } 00041 00042 for(AttributeDescriptorListType::iterator it = mAttributeDescriptorListWID.begin(); 00043 it != mAttributeDescriptorListWID.end(); it++) 00044 { 00045 if((*it).GetKey() == "PARENT_ID") 00046 { 00047 mAttributeDescriptorListWID.erase(it); 00048 break; 00049 } 00050 } 00051 } 00052 00053 } 00054 } 00055