void Polynomial::SetToFirstOrderPolynomial(double x_coefficient, double scalar) { double coefficient_array[2]; coefficient_array[0] = scalar; coefficient_array[1] = x_coefficient; SetCoefficients(&coefficient_array[0], 1); }
void Polynomial::SetToQuadraticPolynomial(double x_squared_coefficient, double x_coefficient, double scalar) { double coefficient_array[3]; coefficient_array[0] = scalar; coefficient_array[1] = x_coefficient; coefficient_array[2] = x_squared_coefficient; SetCoefficients(&coefficient_array[0], 2); }
void SpeechANCController::Init() { ALOGD("%s()", __FUNCTION__); mFd = ::open(kANCDeviceName, O_RDWR); if (mFd < 0) { ALOGE("%s() fail to open %s", __FUNCTION__, kANCDeviceName); } else { ALOGD("%s() open %s success!", __FUNCTION__, kANCDeviceName); ::ioctl(mFd, SET_ANC_CONTROL, ANCControlCmd_Init); } mPcmIn_MOD = NULL; mPcmIn_IO2 = NULL; mPcmIn_ADC2 = NULL; mDumpFile_MOD = NULL; mDumpFile_IO2 = NULL; mDumpFile_ADC2 = NULL; mEnable_ANCLog_MOD = false; mEnable_ANCLog_IO2 = false; mEnable_ANCLog_ADC2 = false; #ifdef param_anc_add AUDIO_ANC_CUSTOM_PARAM_STRUCT pSphParamAnc; Mutex::Autolock _l(mMutex); GetANCSpeechParamFromNVRam(&pSphParamAnc); mLogEnable = pSphParamAnc.ANC_log; mLogDownSample = pSphParamAnc.ANC_log_downsample; mApply = pSphParamAnc.ANC_apply; SetCoefficients(pSphParamAnc.ANC_para); #else mLogEnable = false; mLogDownSample = false; mApply = false; #endif }
void Polynomial::SetToScalar(double scalar) { SetCoefficients(&scalar, 0); }
Polynomial Polynomial::operator =(double scalar) { SetCoefficients(&scalar, 0); return *this; }
Polynomial::Polynomial(double * coefficient_vector_ptr, int degree) : m_degree(-1) , m_coefficient_vector_ptr(NULL) { SetCoefficients(coefficient_vector_ptr, degree); }