cfgparam.c 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. const int CFG_TYPE_STRING = 0;
  2. const int CFG_TYPE_INT = 1;
  3. const int CFG_TYPE_FLOAT = 2;
  4. const int CFG_TYPE_BOOL = 3;
  5. const int CFG_TYPE_ARRAY = 4;
  6. const int CFG_TYPE_PARAM = 5;
  7. class CfgParam: Managed
  8. {
  9. protected string m_ParamName;
  10. protected string m_ParamValueString;
  11. void CfgParam(string param_name)
  12. {
  13. m_ParamName = param_name;
  14. }
  15. void SetName(string param_name)
  16. {
  17. m_ParamName = param_name;
  18. }
  19. string GetName()
  20. {
  21. return m_ParamName;
  22. }
  23. int GetType()
  24. {
  25. return -1;
  26. }
  27. bool IsArray()
  28. {
  29. return false;
  30. }
  31. static CfgParam CreateParam(string name, int cfg_type)
  32. {
  33. CfgParam param;
  34. switch (cfg_type)
  35. {
  36. case CFG_TYPE_STRING:
  37. {
  38. param = new CfgParamString(name);
  39. break;
  40. }
  41. case CFG_TYPE_INT:
  42. {
  43. param = new CfgParamInt(name);
  44. break;
  45. }
  46. case CFG_TYPE_FLOAT:
  47. {
  48. param = new CfgParamFloat(name);
  49. break;
  50. }
  51. case CFG_TYPE_BOOL:
  52. {
  53. param = new CfgParamBool(name);
  54. break;
  55. }
  56. case CFG_TYPE_ARRAY:
  57. {
  58. param = new CfgParamArray(name);
  59. break;
  60. }
  61. }
  62. return param;
  63. }
  64. }