gsm_option.c 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. /*
  2. * Copyright 1992 by Jutta Degener and Carsten Bormann, Technische
  3. * Universitaet Berlin. See the accompanying file "COPYRIGHT" for
  4. * details. THERE IS ABSOLUTELY NO WARRANTY FOR THIS SOFTWARE.
  5. */
  6. /* $Header: /tmp_amd/presto/export/kbs/jutta/src/gsm/RCS/gsm_option.c,v 1.3 1996/07/02 09:59:05 jutta Exp $ */
  7. #include "private.h"
  8. #include "gsm.h"
  9. #include "proto.h"
  10. int gsm_option P3((r, opt, val), gsm r, int opt, int * val)
  11. {
  12. int result = -1;
  13. switch (opt) {
  14. case GSM_OPT_LTP_CUT:
  15. #ifdef LTP_CUT
  16. result = r->ltp_cut;
  17. if (val) r->ltp_cut = *val;
  18. #endif
  19. break;
  20. case GSM_OPT_VERBOSE:
  21. #ifndef NDEBUG
  22. result = r->verbose;
  23. if (val) r->verbose = *val;
  24. #endif
  25. break;
  26. case GSM_OPT_FAST:
  27. #if defined(FAST) && defined(USE_FLOAT_MUL)
  28. result = r->fast;
  29. if (val) r->fast = !!*val;
  30. #endif
  31. break;
  32. case GSM_OPT_FRAME_CHAIN:
  33. #ifdef WAV49
  34. result = r->frame_chain;
  35. if (val) r->frame_chain = *val;
  36. #endif
  37. break;
  38. case GSM_OPT_FRAME_INDEX:
  39. #ifdef WAV49
  40. result = r->frame_index;
  41. if (val) r->frame_index = *val;
  42. #endif
  43. break;
  44. case GSM_OPT_WAV49:
  45. #ifdef WAV49
  46. result = r->wav_fmt;
  47. if (val) r->wav_fmt = !!*val;
  48. #endif
  49. break;
  50. default:
  51. break;
  52. }
  53. return result;
  54. }