

#ifndef CONFIG_H
#define CONFIG_H

//#define VC_PROJ


#define OPT_KHW_20191106
#define OPT_KHW_20191111
//#define OPT_KHW_20191111_CM0_0823

//#define HW_DEBUG_COUNT
#define BUD_ISSUE    // zero packetÀÌÈÄ mute¿Ã¶§ PLC white noise

#define OPT_KHW
#define OPT_KHW_FFT
#define OPT_CODESIZE
#define OPT_DATASIZE
#define OPT_DATASIZE2
#define OPT_DATASIZE3

#define HW_CWRS

#define HW_FFT_5
#define AFTER_190328_OPTI
#define AFTER_190327_OPTI
//#define HW_FOR_GCC
//#define HW_DEBUG_TABLE_INPUT

#define HW_30BYTE


#ifndef VC_PROJ
#define HW_HIFI3
#define HW_HIFI3_VECTOR
#endif
//#define HW_PITCH_OFF
//#define HW_PITCH_OFF2


#define HW_CODESIZE
#define HW_DATASIZE

#define HW_PITCH

#define HW_PLC_3
//#define HW_PLC_UPDATE
//#define HW_PLC_UPDATE2
//#define HW_PLC_UPDATE3

//#define ARMCC_CORTEX_ASSEM
//#define OPT_KHW_BASIC_OP


#define HW_24BIT
#define HW_EXPROTATION_LAST

//#define WWQ_OPT_ALG_QUANT_NOT_BIT_EXACT
#define WWQ_CORRECTION

#define HW_REMOVE_RCP
#define HW_REMOVE_RCP_1


//#define HW_FRAC_DIV32_AIROHA



//#define HW_SAVESTACK   //½ÇÆÐ ÀÏ´Ü disable

//////////////////////////////////////////////
#define HW_DEC_RANDOM
///////////////////////////////////////////////
//#define CRC_ON_4BIT
#define CRC_ON_8BIT


//#define HW_SILENCE_ENC
#define HW_SILENCE_DEC
//#define HW_SILENCE_1




#define HW_AIROHA_ALG_QUANT
#define HW_ALG_QUANT
#define HW_ROUNDSKIP_MATH
#define HW_ADDITIONAL_ETC

/*----------SRCB optimization------------------*/



#define HW_DATA_SIZE_STATIC_WINDOW
#define HW_DATA_SIZE_STATIC_MODES


//////////////////////////////////////////////////////////////////






#ifndef VC_PROJ
#define fft_bitrev_opt_hifi3_ZH          //bit_exact
#define speech_maxabs32_opt_hifi3_ZH     //bit_exact
#define speech_maxabs16_opt_hifi3_ZH     //bit_exact
#define pitch_search_loop_opt_hifi3_ZH   //bit_exact
#define remove_doubling_loop_BX          //bit-exact
#define denormalise_bands_dowhile_BX     //bit-exact
#define speech_encode_loop_opt_hifi3_ZH  //bit-exact
#define compute_band_energies_dowhile_BX //bit-exact
#endif
////////////////////////////////////////////////////////////////




#define eBands_add_BX                    //bit-exact






#ifndef VC_PROJ
#define  pitch_downsample_opt_hifi3_TLF  //bit-exact
#define compute_allocation_opt_hifi3_ZH  //bit-exact
#define quant_all_bands_dec_loop_opt_hifi3_ZH  //bit-exact
#define Basicop_opt_hifi3_ZH_BX                  //bit-exact
#define remove_doubling_opt_hifi3_ZH           //bit-exact
#define Merge_max_copy_opt_hifi3_ZH            //bit-exact
#define normalise_bands_dowhile_BX       //bit-exact  --> non bit exact
#define alg_quant_opt_hifi3_WQ           //non- bit_exact   --> ae_Ltmp = AE_MOVDA32(16384);  ae_Ltmp = AE_MOVDA32(0);
#define comb_filter_lp_opt_hifi3_ZH      //non- bit_exact
#endif


#ifndef VC_PROJ
#define kf_bfly5_opt_hifi3_ZH            //non- bit_exact
#define kf_bfly3_opt_hifi3_ZH            //non- bit_exact
#define kf_bfly4_opt_hifi3_ZH            //non- bit_exact


#define clt_mdct_forward_LOOP1_BX        //non- bit_exact
#define clt_mdct_forward_LOOP2_BX        //non- bit_exact
//#define clt_mdct_forward_LOOP3_BX        //non- bit_exact
#define clt_mdct_forward_LOOP4_BX        //non- bit_exac

#define clt_mdct_backward_LOOP1_BX        //non- bit_exact
#define clt_mdct_backward_LOOP2_BX        //non- bit_exact
#define clt_mdct_backward_LOOP3_BX        //non- bit_exact
#endif

/*-----------------------------------*/
//#define HW_BANDLIMIT
//#define FOR_KALIMBA_DEBUG
//#define FOR_BANDLIMIT

//////// Enable it only for Kalimba(24bit) ==> encoder issue //////////////
///////////////////////////////////////////////////////////////////////////
// #define HW_24BIT_1
////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////

//#define HW_COUNT_OFF

#endif /* CONFIG_H */
