+ */
+ std::list<ResultPtr> aReferencedResults;
+ ResultBodyPtr aRefBody = std::dynamic_pointer_cast<ModelAPI_ResultBody>(aReferenced);
+ if (aRefBody.get()) { // take only sub-results of this result or sub-result
+ ResultBodyPtr aRoot = ModelAPI_Tools::bodyOwner(aRefBody, true);
+ if (aRoot.get()) {
+ ModelAPI_Tools::allSubs(aRoot, aReferencedResults, false);
+ aReferencedResults.push_back(aRoot);
+ } else
+ aReferencedResults.push_back(aRefBody);
+ }
+