/******************************************************************
   
   
   
       iLBC Speech Coder ANSI-C Source Code
   
       createCB.h
   
       Copyright (C) The Internet Society (2004). 
       All Rights Reserved.
   
   ******************************************************************/
   
   #ifndef __iLBC_CREATECB_H
   #define __iLBC_CREATECB_H
   
   void filteredCBvecs(
       float *cbvectors,   /* (o) Codebook vector for the 
                                  higher section */
       float *mem,         /* (i) Buffer to create codebook 
                                  vectors from */
       int lMem        /* (i) Length of buffer */
   );
   
   void searchAugmentedCB(
       int low,        /* (i) Start index for the search */
       int high,           /* (i) End index for the search */
       int stage,          /* (i) Current stage */
       int startIndex,     /* (i) CB index for the first 
                                  augmented vector */
       float *target,      /* (i) Target vector for encoding */
       float *buffer,      /* (i) Pointer to the end of the 
                                  buffer for augmented codebook 
                                  construction */
       float *max_measure, /* (i/o) Currently maximum measure */
       int *best_index,/* (o) Currently the best index */
       float *gain,    /* (o) Currently the best gain */
       float *energy,      /* (o) Energy of augmented 
                                  codebook vectors */
       float *invenergy/* (o) Inv energy of aug codebook 
                                  vectors */
   );
   
   void createAugmentedVec(
       int index,          /* (i) Index for the aug vector 
                                  to be created */
       float *buffer,      /* (i) Pointer to the end of the 
                                  buffer for augmented codebook 
                                  construction */
       float *cbVec    /* (o) The construced codebook vector */
   );
   
   #endif