spNode ControllerFindChild::operator ()(const spNode& parent, const QVariant& value) const { if(!parent) throw std::invalid_argument("ControllerFindChild::operator ()"); auto children = base_->getChildren(parent->getID(), QList<IDTypeNode>()<<idtnChildren_); for(auto n: children) if(n->data(key_) == value) return n; return spNode(); }
std::shared_ptr<LoadedModel_SemSceneNode> LoadedModel_SemSceneNode::Create(std::string sFilename) { // create node LoadedModel_SemSceneNode *pNode = new LoadedModel_SemSceneNode(); // set parameters pNode->m_sFilename = sFilename; pNode->m_bEnvironmentMapping = false; pNode->m_mTransformMatrix = glm::mat4(); // create shared_ptr std::shared_ptr<LoadedModel_SemSceneNode> spNode(pNode); return spNode; }