X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FFDM%2FJSBSim%2FFGPropertyManager.cpp;h=2a33172ad2bf63423a85031ea5baf403031c3912;hb=eb05a298e9a9a830b23b6337d812dafa48d39bba;hp=1253d6d2d03884684fd6bbfb1801a7305c02c753;hpb=2c1889a8b5c355fc90e922be4929a5a843fba88c;p=flightgear.git diff --git a/src/FDM/JSBSim/FGPropertyManager.cpp b/src/FDM/JSBSim/FGPropertyManager.cpp index 1253d6d2d..2a33172ad 100644 --- a/src/FDM/JSBSim/FGPropertyManager.cpp +++ b/src/FDM/JSBSim/FGPropertyManager.cpp @@ -102,6 +102,32 @@ string FGPropertyManager::GetName( void ) { return string( getName() ); } +//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +string FGPropertyManager::GetFullyQualifiedName(void) { + vector stack; + stack.push_back( getDisplayName(true) ); + SGPropertyNode* tmpn=getParent(); + bool atroot=false; + while( !atroot ) { + stack.push_back( tmpn->getDisplayName(true) ); + if( !tmpn->getParent() ) + atroot=true; + else + tmpn=tmpn->getParent(); + } + + string fqname=""; + for(unsigned i=stack.size()-1;i>0;i--) { + fqname+= stack[i]; + fqname+= "/"; + } + fqname+= stack[0]; + return fqname; + +} + + //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% bool FGPropertyManager::GetBool (const string &name, bool defaultValue)