NodeTransitPtr deepCloneTree(const OSG::Node *rootNode, const std::vector<std::string> &shareTypeNames, const std::vector<std::string> &ignoreTypeNames, const std::vector<std::string> &shareGroupNames, const std::vector<std::string> &ignoreGroupNames) { std::vector<const ReflexiveContainerType *> shareTypes; std::vector<const ReflexiveContainerType *> ignoreTypes; std::vector<UInt16> shareGroupIds; std::vector<UInt16> ignoreGroupIds; appendTypesVector (shareTypeNames, shareTypes ); appendTypesVector (ignoreTypeNames, ignoreTypes ); appendGroupsVector(shareGroupNames, shareGroupIds ); appendGroupsVector(ignoreGroupNames, ignoreGroupIds); return deepCloneTree(rootNode, shareTypes, ignoreTypes, shareGroupIds, ignoreGroupIds); }
FieldContainerTransitPtr deepClone( FieldContainer const *src, const std::vector<std::string> &shareTypeNames, const std::vector<std::string> &ignoreTypeNames, const std::vector<std::string> &shareGroupNames, const std::vector<std::string> &ignoreGroupNames) { std::vector<const ReflexiveContainerType *> shareTypes; std::vector<const ReflexiveContainerType *> ignoreTypes; std::vector<UInt16> shareGroupIds; std::vector<UInt16> ignoreGroupIds; appendTypesVector (shareTypeNames, shareTypes ); appendTypesVector (ignoreTypeNames, ignoreTypes ); appendGroupsVector(shareGroupNames, shareGroupIds ); appendGroupsVector(ignoreGroupNames, ignoreGroupIds); return deepClone(src, shareTypes, ignoreTypes, shareGroupIds, ignoreGroupIds); }
void deepCloneAttachments( OSG::AttachmentContainer const *src, OSG::AttachmentContainer *dst, const std::vector<std::string> &shareTypeNames, const std::vector<std::string> &ignoreTypeNames, const std::vector<std::string> &shareGroupNames, const std::vector<std::string> &ignoreGroupNames) { std::vector<const ReflexiveContainerType *> shareTypes; std::vector<const ReflexiveContainerType *> ignoreTypes; std::vector<UInt16> shareGroupIds; std::vector<UInt16> ignoreGroupIds; appendTypesVector (shareTypeNames, shareTypes ); appendTypesVector (ignoreTypeNames, ignoreTypes ); appendGroupsVector(shareGroupNames, shareGroupIds ); appendGroupsVector(ignoreGroupNames, ignoreGroupIds); deepCloneAttachments(src, dst, shareTypes, ignoreTypes, shareGroupIds, ignoreGroupIds); }