15e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh/* 25e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh * Copyright 1992 by Jutta Degener and Carsten Bormann, Technische 35e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh * Universitaet Berlin. See the accompanying file "COPYRIGHT" for 45e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh * details. THERE IS ABSOLUTELY NO WARRANTY FOR THIS SOFTWARE. 55e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh */ 65e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh 75e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh/* $Header: /tmp_amd/presto/export/kbs/jutta/src/gsm/RCS/gsm_option.c,v 1.3 1996/07/02 09:59:05 jutta Exp $ */ 85e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh 95e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh#include "private.h" 105e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh 115e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh#include "gsm.h" 125e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh#include "proto.h" 135e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh 145e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yehint gsm_option P3((r, opt, val), gsm r, int opt, int * val) 155e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh{ 165e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh int result = -1; 175e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh 185e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh switch (opt) { 195e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh case GSM_OPT_LTP_CUT: 205e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh#ifdef LTP_CUT 215e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh result = r->ltp_cut; 225e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh if (val) r->ltp_cut = *val; 235e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh#endif 245e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh break; 255e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh 265e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh case GSM_OPT_VERBOSE: 275e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh#ifndef NDEBUG 285e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh result = r->verbose; 295e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh if (val) r->verbose = *val; 305e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh#endif 315e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh break; 325e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh 335e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh case GSM_OPT_FAST: 345e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh 355e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh#if defined(FAST) && defined(USE_FLOAT_MUL) 365e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh result = r->fast; 375e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh if (val) r->fast = !!*val; 385e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh#endif 395e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh break; 405e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh 415e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh case GSM_OPT_FRAME_CHAIN: 425e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh 435e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh#ifdef WAV49 445e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh result = r->frame_chain; 455e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh if (val) r->frame_chain = *val; 465e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh#endif 475e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh break; 485e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh 495e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh case GSM_OPT_FRAME_INDEX: 505e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh 515e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh#ifdef WAV49 525e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh result = r->frame_index; 535e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh if (val) r->frame_index = *val; 545e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh#endif 555e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh break; 565e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh 575e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh case GSM_OPT_WAV49: 585e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh 595e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh#ifdef WAV49 605e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh result = r->wav_fmt; 615e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh if (val) r->wav_fmt = !!*val; 625e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh#endif 635e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh break; 645e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh 655e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh default: 665e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh break; 675e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh } 685e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh return result; 695e4516958690b9a1b2c98f88eeecba3edd2dbda4Chia-chi Yeh} 70