IRegistry* DataSvcFileEntriesTool::i_getRootNode() { DataObject * obj = 0; StatusCode sc = m_dataSvc->retrieveObject(m_rootNode, obj); if (sc.isFailure()) { throw GaudiException("Cannot get " + m_rootNode + " from " + m_dataSvcName, name(), StatusCode::FAILURE); } return obj->registry(); }
/** IDataManagerSvc: Remove all data objects below the sub tree * identified by its full path name. */ StatusCode DataSvc::clearSubTree(const std::string& sub_tree_path) { DataObject* pObject = 0; StatusCode status = findObject(sub_tree_path, pObject); if ( status.isSuccess() ) { RegEntry* node_entry = CAST_REGENTRY(RegEntry*,pObject->registry()); if ( 0 != node_entry ) { RegEntry* parent = node_entry->parentEntry(); if ( 0 != parent ) { parent->remove(node_entry); return StatusCode::SUCCESS; } return INVALID_PARENT; } return INVALID_OBJECT; }