Classifier* Classifier::deepCopy() const{ Classifier *newInstance = createInstanceFromString( classifierType ); if( newInstance == NULL ) return NULL; if( !newInstance->deepCopyFrom( this ) ){ delete newInstance; return NULL; } return newInstance; }
bool BAG::addClassifierToEnsemble(const Classifier &classifier,double weight){ trained = false; Classifier *newClassifier = classifier.createNewInstance(); if( newClassifier == NULL ){ return false; } if( !newClassifier->deepCopyFrom( &classifier ) ){ return false; } weights.push_back( weight ); ensemble.push_back( newClassifier ); return false; }