int CalCoreModel::loadCoreMaterial(const std::string& strFilename, const char* pbyBuffer, unsigned long nBufferSize) { // the core skeleton has to be loaded already if(m_pCoreSkeleton == 0) { CalError::setLastError(CalError::INVALID_HANDLE, __FILE__, __LINE__); return -1; } // load a new core material CalLoader loader; CalCoreMaterial *pCoreMaterial; pCoreMaterial = loader.loadCoreMaterial(strFilename, pbyBuffer, nBufferSize); if(pCoreMaterial == 0) return -1; // add core material to this core model int materialId; materialId = addCoreMaterial(pCoreMaterial); if(materialId == -1) { delete pCoreMaterial; return -1; } return materialId; }
int CalCoreModel::loadCoreMaterial(const std::string& strFilename) { // the core skeleton has to be loaded already if(!m_pCoreSkeleton) { CalError::setLastError(CalError::INVALID_HANDLE, __FILE__, __LINE__); return -1; } // load a new core material CalCoreMaterialPtr pCoreMaterial = CalLoader::loadCoreMaterial(strFilename); if(!pCoreMaterial) return -1; // add core material to this core model return addCoreMaterial(pCoreMaterial.get()); }