MultidimensionalRegression::MultidimensionalRegression(const Regressifier ®ressifier,bool useScaling):regressifier(NULL) { this->useScaling = useScaling; classType = "MultidimensionalRegression"; regressifierType = classType; debugLog.setProceedingText("[DEBUG MultidimensionalRegression]"); errorLog.setProceedingText("[ERROR MultidimensionalRegression]"); trainingLog.setProceedingText("[TRAINING MultidimensionalRegression]"); warningLog.setProceedingText("[WARNING MultidimensionalRegression]"); setRegressionModule( regressifier ); }
MultidimensionalRegression& MultidimensionalRegression::operator=(const MultidimensionalRegression &rhs){ if( this != &rhs ){ //Clean up any previous setup deleteAll(); //Set the main regression module setRegressionModule( *rhs.getRegressifier() ); //Deep copy the regression modules from the RHS to this instance if( !rhs.deepCopyRegressionModules( regressionModules ) ){ errorLog << "const MultidimensionalRegression &rhs - Failed to deep copy regression modules!" << std::endl; } //Copy the base variables copyBaseVariables( (Regressifier*)&rhs ); } return *this; }
bool MultidimensionalRegression::deepCopyFrom(const Regressifier *regressifier){ if( regressifier == NULL ) return false; if( this->getRegressifierType() == regressifier->getRegressifierType() ){ const MultidimensionalRegression *ptr = dynamic_cast<const MultidimensionalRegression*>(regressifier); //Set the main regression module setRegressionModule( *ptr->getRegressifier() ); //Deep copy the regression modules from the RHS to this instance if( !ptr->deepCopyRegressionModules( regressionModules ) ){ errorLog << "deepCopyFrom(const Regressifier *regressifier) - Failed to deep copy regression modules!" << std::endl; return false; } //Copy the base variables return copyBaseVariables( regressifier ); } return false; }
MultidimensionalRegression::MultidimensionalRegression(const Regressifier ®ressifier,bool useScaling) : Regressifier( MultidimensionalRegression::getId() ), regressifier(NULL) { this->useScaling = useScaling; setRegressionModule( regressifier ); }