quick start:g++ [flags ...] file ... -l /isip/tools/lib/$ISIP_BINARY/lib_algo.a #include <LogAreaRatio.h> LogAreaRatio(ALGORITHM algorithm = DEF_ALGORITHM, IMPLEMENTATION implementation = DEF_IMPLEMENTATION, long order = DEF_ORDER); boolean eq(const LogAreaRatio& arg); boolean setAlgorithm(ALGORITHM algorithm); boolean compute(VectorFloat& vector_out, const VectorFloat& vector_in, AlgorithmData::COEF_TYPE input_coef_type = DEF_COEF_TYPE, long index = DEF_CHANNEL_INDEX);
description:LogAreaRatio lar; VectorFloat input(L"1, 0, -1"); VectorFloat output; lar.setAlgorithm(LATTICE); lar.compute(output, input, AlgorithmData::REFLECTION);
static const String CLASS_NAME = L"LogAreaRatio";
enum ALGORITHM { LATTICE = 0, DEF_ALGORITHM = LATTICE };
enum IMPLEMENTATION { KELLY_LOCHBAUM = 0, DEF_IMPLEMENTATION = KELLY_LOCHBAUM };
static const NameMap LogAreaRatio::ALGO_MAP(L"LATTICE");
static const NameMap LogAreaRatio::IMPL_MAP(L"KELLY_LOCHBAUM");
static const String LogAreaRatio::DEF_PARAM = L"";
static const String LogAreaRatio::PARAM_ALGORITHM = L"algorithm";
static const String LogAreaRatio::PARAM_IMPLEMENTATION = L"implementation";
static const AlgorithmData::COEF_TYPE DEF_COEF_TYPE = AlgorithmData::REFLECTION;
static const long ERR = 73000;
ALGORITHM algorithm_d;
IMPLEMENTATION implementation_d;
static MemoryManager mgr_d;
static const String& name();
static boolean diagnose(Integral::DEBUG debug_level);
boolean debug(const unichar* message) const;
~LogAreaRatio();
LogAreaRatio(ALGORITHM algorithm = DEF_ALGORITHM, IMPLEMENTATION implementation = DEF_IMPLEMENTATION, long order = DEF_ORDER);
LogAreaRatio(const LogAreaRatio& arg);
boolean assign(const LogAreaRatio& arg);
LogAreaRatio& operator= (const LogAreaRatio& arg);
long sofSize() const;
boolean read(Sof& sof, long tag, const String& name = CLASS_NAME);
boolean write(Sof& sof, long tag, const String& name = CLASS_NAME) const;
boolean readData(Sof& sof, const String& pname = DEF_PARAM, long size = SofParser::FULL_OBJECT, boolean param = true, boolean nested = false);
boolean writeData(Sof& sof, const String& pname = DEF_PARAM) const;
boolean eq(const LogAreaRatio& arg) const;
static void* operator new(size_t size);
static void* operator new[](size_t size);
static void operator delete(void* ptr);
static void operator delete[](void* ptr);
static boolean setGrowSize(long grow_size);
boolean clear(Integral::CMODE ctype = Integral::DEF_CMODE);
boolean setAlgorithm(ALGORITHM algorithm);
boolean setImplementation(IMPLEMENTATION implementation);
boolean setOrder(long order);
boolean set(ALGORITHM algorithm = DEF_ALGORITHM, IMPLEMENTATION implementation = DEF_IMPLEMENTATION, long order = DEF_ORDER);
ALGORITHM getAlgorithm() const;
IMPLEMENTATION getImplementation() const;
long getOrder() const;
boolean get(ALGORITHM& algorithm, IMPLEMENTATION& implementation, long& order);
boolean compute(VectorFloat& output, const VectorFloat& input, AlgorithmData::COEF_TYPE input_coef_type = DEF_COEF_TYPE, long index);
boolean assign(const AlgorithmBase& arg);
boolean eq(const AlgorithmBase& arg) const;
const String& className() const;
boolean apply(Vector<CircularBuffer<AlgorithmData>>& output, const Vector<AlgorithmData>& input);
boolean setParser(SofParser* parser);
boolean readDataCommon(Sof& sof, const String& pname, long size = SofParser::FULL_OBJECT, boolean param = true, boolean nested = false);
boolean writeDataCommon(Sof& sof, const String& pname = DEF_PARAM) const;
boolean computeLatticeKellyLochbaum(VectorFloat& output, const VectorFloat& input);
// declare an LogAreaRatio object and an output vector // LogAreaRatio lar; VectorFloat output; // set the input vector // VectorFloat input(L"0, 1, 2"); // chooose algorithm // lar.setAlgorithm(LogAreaRatio::LATTICE); // chooose implementation // lar.setImplementation(LogAreaRatio::KELLY_LOCHBAUM); // compute the LogAreaRatio of input data // lar.compute(output, input, AlgorithmData::REFLECTION);