1213{
1215 std::map<std::string,MiniConfigTreeNode*> daughters = node->GetDaughters();
1216 std::map<std::string,MiniConfigTreeNode*>::const_iterator nodeiterEnd = daughters.end();
1217 for( std::map<std::string,MiniConfigTreeNode*>::const_iterator iter = daughters.begin(); iter != nodeiterEnd; ++iter ) {
1218 std::string compAlgID =
iter->second->GetName();
1219 std::string compAlgKey =
iter->first;
1220
1221 HanConfigCompAlg* compAlg = new HanConfigCompAlg();
1222 std::set<std::string> compAlgAtt;
1224 std::set<std::string>::const_iterator compAlgAttEnd = compAlgAtt.end();
1225
1226 compAlg->SetName(compAlgID);
1227 for( std::set<std::string>::const_iterator i = compAlgAtt.begin(); i != compAlgAttEnd; ++i ) {
1228 if( *i == "subalgs" ) {
1229 std::string subAlgs(
m_compAlgConfig.GetStringAttribute(compAlgID,
"subalgs") );
1230 std::string::size_type
pos = subAlgs.find(
',');
1231 for(
int size=subAlgs.size(), sizeOld=-8;
1233 subAlgs.erase(0, pos+1), pos = subAlgs.find(
','),sizeOld=
size,
size=subAlgs.size()) {
1234
1235 compAlg->AddAlg( subAlgs.substr(0,pos));
1236 }
1237 }
1238 else if( *i == "libnames" ) {
1240 std::string::size_type
pos =
libs.find(
',');
1241 for(
int size=
libs.size(), sizeOld=-8;
1244
1245 compAlg->AddLib(
libs.substr(0,pos));
1246 }
1247 }
1248 }
1249 compAlg->Write();
1250 }
1251}
size_t size() const
Number of registered mappings.