interp_modes.cpp
上传用户:jtjnyq9001
上传日期:2014-11-21
资源大小:3974k
文件大小:2k
源码类别:

3G开发

开发平台:

Visual C++

  1. //
  2. //  File = interp_modes.cpp
  3. //
  4. #include <stdlib.h>
  5. #include <fstream>
  6. #include <string.h>
  7. #include "parmfile.h"
  8. #include "interp_modes.h"
  9. #include "psstream.h"
  10. extern ParmFile *ParmInput;
  11. //======================================================
  12. INTERP_MODE_T GetInterpModeParm(const char* parm_nam)
  13. {
  14.   char parm_str[30];
  15.   if(ParmInput->GetParmStr(parm_nam, parm_str)!=0)
  16.     {
  17.     ParmInput->RestartBlock();
  18.     if(ParmInput->GetParmStr(parm_nam, parm_str) !=0)
  19.       {
  20.       ErrorStream <<  "Error: parameter '" << parm_nam 
  21.                   << "' not found after 2 attempts" << endl;
  22.       exit(-1);
  23.       }
  24.     }
  25.   if(!strcmp(parm_str,"INTERP_MODE_LINEAR")) return(INTERP_MODE_LINEAR);
  26.   if(!strcmp(parm_str,"INTERP_MODE_SINC")) return(INTERP_MODE_SINC);
  27.   return(INTERP_MODE_NONE);
  28. }
  29. ostream& operator<<( ostream& s, const INTERP_MODE_T& interp_mode_val)
  30. {
  31.   switch (interp_mode_val)
  32.     {
  33.     case INTERP_MODE_NONE:
  34.       s << "INTERP_MODE_NONE";
  35.       break;
  36.     case INTERP_MODE_LINEAR:
  37.       s << "INTERP_MODE_LINEAR";
  38.       break;
  39.     case INTERP_MODE_SINC:
  40.       s << "INTERP_MODE_SINC";
  41.       break;
  42.     default:
  43.       s << "unknown INTERP_MODE_T";
  44.     } // end of switch on interp_mode_val
  45.  return s;
  46. }
  47. PracSimStream& operator<<( PracSimStream& s, const INTERP_MODE_T& interp_mode_val)
  48. {
  49.   switch (interp_mode_val)
  50.     {
  51.     case INTERP_MODE_NONE:
  52.       s << "INTERP_MODE_NONE";
  53.       break;
  54.     case INTERP_MODE_LINEAR:
  55.       s << "INTERP_MODE_LINEAR";
  56.       break;
  57.     case INTERP_MODE_SINC:
  58.       s << "INTERP_MODE_SINC";
  59.       break;
  60.     default:
  61.       s << "unknown INTERP_MODE_T";
  62.     } // end of switch on interp_mode_val
  63.  return s;
  64. }