diff --git a/LCS/ACC/APS/include/APS/ParameterSetImpl.h b/LCS/ACC/APS/include/APS/ParameterSetImpl.h index 44fcfb3c5d3d7c7a7e55a37021f206892c8faacf..1e74314ba1582c9c98e06c272303ef3ec95e5cb8 100644 --- a/LCS/ACC/APS/include/APS/ParameterSetImpl.h +++ b/LCS/ACC/APS/include/APS/ParameterSetImpl.h @@ -161,6 +161,7 @@ public: { return (find(searchKey) != end()); }; // Searches for a key whose name end in the given shortKey. + // e.g: a.b.c.d.param=xxx ; locateKey('d') --> 'a.b.c.' string locateKey(const string& shortKey) const; // Return the 'metadata' from the parameterCollection. diff --git a/LCS/ACC/APS/src/ParameterSetImpl.cc b/LCS/ACC/APS/src/ParameterSetImpl.cc index 9ac6c9fe6b39a22135dd812f47e8da0eeff38301..53eb8ff292882d4fea844ba825fe4389d1492b93 100644 --- a/LCS/ACC/APS/src/ParameterSetImpl.cc +++ b/LCS/ACC/APS/src/ParameterSetImpl.cc @@ -888,13 +888,14 @@ int32 indexValue (const string& label, char indexMarker[2]) // locateKey(hortKey) // // Searches for a key ending in the given 'shortkey' and returns it full name. +// e.g: a.b.c.d.param=xxxx --> locateKey(d)-->a.b.c. string ParameterSetImpl::locateKey(const string& shortKey) const { const_iterator iter = begin(); const_iterator eom = end(); while ((iter != eom)) { - if (keyName(iter->first) == shortKey) { - return (iter->first); + if (keyName(moduleName(iter->first)) == shortKey) { + return (moduleName(moduleName((iter->first)))+"."); } iter++; } diff --git a/LCS/ACC/APS/test/tParameterSet.cc b/LCS/ACC/APS/test/tParameterSet.cc index 248bde16f10cf53e5bd2da696c75faeb12b036a8..6c9b4cdd683086d43c93839b9800d2cca7591241 100644 --- a/LCS/ACC/APS/test/tParameterSet.cc +++ b/LCS/ACC/APS/test/tParameterSet.cc @@ -68,7 +68,7 @@ int main() { cout << "\nThe main ParameterSet contains:\n"; cout << myPS; - cout << "Fullname of 'lange_naam=" << myPS.locateKey("lange_naam") << endl; + cout << "Fullname of 'b'=" << myPS.locateKey("b") << endl; // cout << "The name of the ParameterSet = " << myPS.getName() << endl; diff --git a/LCS/ACC/APS/test/tParameterSet.stdout b/LCS/ACC/APS/test/tParameterSet.stdout index b5fd87cc3a85baf8e7a2bd5f52ed97f4c2b91667..7405a1b8b091c9269f6b42aaf473ae0905be69b5 100644 --- a/LCS/ACC/APS/test/tParameterSet.stdout +++ b/LCS/ACC/APS/test/tParameterSet.stdout @@ -35,7 +35,7 @@ The main ParameterSet contains: [e.g],[een voorbeeld] [egg],[een ei] [vtest.intVector1Dim],[[ 3, "20485", 002, '4904' , 25 ]] -Fullname of 'lange_naam=a.b.lange_naam +Fullname of 'b'=a. isValidVersionNr(1.2.3.4) = 0 isValidVersionNr(1.2.3) = 1 isValidVersionNr(1.2) = 0