00001 #ifndef __INSTANT_MEMBERS_NAME_LIST__ 00002 #define __INSTANT_MEMBERS_NAME_LIST__ 00003 00004 00005 //------------------------------------------------------------------------------------------------------------ 00006 // Includes 00007 //------------------------------------------------------------------------------------------------------------ 00008 #include <vector> 00009 #include <iostream> 00010 #include <string> 00011 00012 #include "NameWrapper.h" 00013 00014 00015 class InstantMembersNameList{ 00016 00017 //------------------------------------------------------------------------------------------------------------ 00018 // Constructors & Destructors 00019 //------------------------------------------------------------------------------------------------------------ 00020 public: 00021 00022 /* 00023 * Create the InstantMembersNameList with empty data pointers 00024 */ 00025 InstantMembersNameList(); 00026 00027 /* 00028 * Destroys the InstantMembersNameList 00029 */ 00030 ~InstantMembersNameList(); 00031 00032 //------------------------------------------------------------------------------------------------------------ 00033 // Methods 00034 //------------------------------------------------------------------------------------------------------------ 00035 00036 /* 00037 * Sets the actual outline names pair 00038 * @param thekeyName The key name asigned to the actual outline 00039 * @param theRealName The real name asigned to the actual outline 00040 */ 00041 void setActualOutline(std::string thekeyName, std::string theRealName ); 00042 00043 /* 00044 * Sets the actual axes names pair 00045 * @param thekeyName The key name asigned to the actual outline 00046 * @param theRealName The real name asigned to the actual outline 00047 */ 00048 void addOutlineName(std::string thekeyName, std::string theRealName); 00049 00050 /* 00051 * Sets the actual axes names pair 00052 * @param thekeyName The key name asigned to the actual axe 00053 * @param theRealName The real name asigned to the actual axe 00054 */ 00055 void setActualAxeWrap(std::string thekeyName, std::string theRealName); 00056 00057 /* 00058 * Gets the actual axes key name 00059 * @return actualAxeKeyName The key name asigned to the actual axe 00060 */ 00061 std::string getActualAxeKeyName(); 00062 00063 /* 00064 * Gets the actual axes key name 00065 * @return actualSourceImageKeyName The key name asigned to the actual axe 00066 */ 00067 std::string getActualSourceImageKeyName(); 00068 00069 /* 00070 * Gets the actual axes key name 00071 * @return actualSectionImageKeyName The key name asigned to the actual axe 00072 */ 00073 std::string getActualSectionImageKeyName(); 00074 00075 /* 00076 * Gets the vector of the key names of currect instant outlines 00077 * @return vectorPairedNames The vector with the pair of outline names wrapping 00078 */ 00079 std::vector<NameWrapper *> getOutlinesNamesVector(); 00080 00081 00082 /* 00083 * Sets the actualSourceImage names pair 00084 * @param thekeyName The key name asigned to the actual outline 00085 * @param theRealName The real name asigned to the actual outline 00086 */ 00087 void setActualSourceImageNamesWrapp(std::string thekeyName, std::string theRealName); 00088 00089 /* 00090 * Sets the actualSectionImage names pair 00091 * @param thekeyName The key name asigned to the actual outline 00092 * @param theRealName The real name asigned to the actual outline 00093 */ 00094 void setActualSectionImageNamesWrapp(std::string thekeyName, std::string theRealName); 00095 00096 /* 00097 * Cleans the vector and the information of the instant members wrapping 00098 */ 00099 void clean(); 00100 00101 //------------------------------------------------------------------------------------------------------------ 00102 // Constants 00103 //------------------------------------------------------------------------------------------------------------ 00104 00105 private: 00106 //------------------------------------------------------------------------------------------------------------ 00107 // Attributes 00108 //------------------------------------------------------------------------------------------------------------ 00109 00110 std::vector<NameWrapper *> outlinesNamesVector; 00111 00112 std::vector<std::string> axesNamesVector; 00113 00114 NameWrapper * actualAxeNamesWrapp; 00115 00116 NameWrapper * actualSourceImageNamesWrapp; 00117 00118 NameWrapper * actualSectionImageNamesWrapp; 00119 00120 NameWrapper * actualOutlineNamesWrapp; 00121 }; 00122 #endif