Changeset 836 for XIOS/trunk/src/node/axis.cpp
- Timestamp:
- 04/08/16 15:00:45 (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
XIOS/trunk/src/node/axis.cpp
r829 r836 41 41 CAxis::~CAxis(void) 42 42 { /* Ne rien faire de plus */ } 43 44 std::map<StdString, ETranformationType> CAxis::transformationMapList_ = std::map<StdString, ETranformationType>(); 45 bool CAxis::dummyTransformationMapList_ = CAxis::initializeTransformationMap(CAxis::transformationMapList_); 46 bool CAxis::initializeTransformationMap(std::map<StdString, ETranformationType>& m) 47 { 48 m["zoom_axis"] = TRANS_ZOOM_AXIS; 49 m["interpolate_axis"] = TRANS_INTERPOLATE_AXIS; 50 m["inverse_axis"] = TRANS_INVERSE_AXIS; 51 } 43 52 44 53 ///--------------------------------------------------------------- … … 884 893 } 885 894 895 CTransformation<CAxis>* CAxis::addTransformation(ETranformationType transType, const StdString& id) 896 { 897 transformationMap_.push_back(std::make_pair(transType, CTransformation<CAxis>::createTransformation(transType,id))); 898 return transformationMap_.back().second; 899 } 900 886 901 bool CAxis::hasTransformation() 887 902 { … … 948 963 if (node.goToChildElement()) 949 964 { 950 StdString inverseAxisDefRoot("inverse_axis_definition"); 951 StdString inverse("inverse_axis"); 952 StdString zoomAxisDefRoot("zoom_axis_definition"); 953 StdString zoom("zoom_axis"); 954 StdString interpAxisDefRoot("interpolate_axis_definition"); 955 StdString interp("interpolate_axis"); 965 StdString nodeElementName; 956 966 do 957 967 { … … 960 970 { nodeId = node.getAttributes()["id"]; } 961 971 962 if (node.getElementName() == inverse) { 963 CInverseAxis* tmp = (CInverseAxisGroup::get(inverseAxisDefRoot))->createChild(nodeId); 964 tmp->parse(node); 965 transformationMap_.push_back(std::make_pair(TRANS_INVERSE_AXIS,tmp)); 966 } 967 else if (node.getElementName() == zoom) { 968 CZoomAxis* tmp = (CZoomAxisGroup::get(zoomAxisDefRoot))->createChild(nodeId); 969 tmp->parse(node); 970 transformationMap_.push_back(std::make_pair(TRANS_ZOOM_AXIS,tmp)); 971 } 972 else if (node.getElementName() == interp) { 973 CInterpolateAxis* tmp = (CInterpolateAxisGroup::get(interpAxisDefRoot))->createChild(nodeId); 974 tmp->parse(node); 975 transformationMap_.push_back(std::make_pair(TRANS_INTERPOLATE_AXIS,tmp)); 972 nodeElementName = node.getElementName(); 973 std::map<StdString, ETranformationType>::const_iterator ite = transformationMapList_.end(), it; 974 it = transformationMapList_.find(nodeElementName); 975 if (ite != it) 976 { 977 transformationMap_.push_back(std::make_pair(it->second, CTransformation<CAxis>::createTransformation(it->second, 978 nodeId, 979 &node))); 976 980 } 977 981 } while (node.goToNextElement()) ;
Note: See TracChangeset
for help on using the changeset viewer.