CDSPrcsParamF.h 3.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. //---------------------------------------------------------------------------
  2. #ifndef CDSPrcsParamFH
  3. #define CDSPrcsParamFH
  4. //---------------------------------------------------------------------------
  5. #include <Classes.hpp>
  6. #include <ADODB.hpp>
  7. #include <DB.hpp>
  8. #include "ITSLibF.h"
  9. //---------------------------------------------------------------------------
  10. /*
  11. * Sub Info Class
  12. */
  13. class TPrcsParamClct
  14. {
  15. public:
  16. TPrcsParamClct() {};
  17. virtual ~TPrcsParamClct() {};
  18. public:
  19. String CLCT_SYST_CD; // N VARCHAR2(7) N 수집 시스템 코드
  20. int FUSN_PRRT; // N NUMBER(2) Y 0 퓨전 우선순위
  21. float FUSN_WGHT; // N NUMBER(5,2) Y 0 퓨전 가중치
  22. };
  23. //---------------------------------------------------------------------------
  24. /*
  25. * Info Class
  26. */
  27. class TPrcsParam
  28. {
  29. public:
  30. TPrcsParam();
  31. virtual ~TPrcsParam();
  32. void Clear();
  33. public:
  34. String PARA_ID;
  35. String PARA_NM;
  36. String FLTR_MTHD_CD; // N VARCHAR2(7) Y 필터링 방법 코드
  37. String FUSN_MTHD_CD; // N VARCHAR2(7) Y 퓨전 방법 코드
  38. String ADJS_MTHD_CD; // N VARCHAR2(7) Y 보정 방법 코드
  39. String SMTH_MTHD_CD; // N VARCHAR2(7) Y 평활화 방법 코드
  40. int FLTR_MIN_TFVL; // N NUMBER(6) Y 0 필터링 최소 교통량
  41. int FLTR_MAX_TFVL; // N NUMBER(6) Y 0 필터링 최대 교통량
  42. int FLTR_LWST_SPED; // N NUMBER(3) Y 0 필터링 최저 속도
  43. int FLTR_HGHS_SPED; // N NUMBER(3) Y 0 필터링 최고 속도
  44. float ADJS_WGHT_AVRG_PRE_1CYCL; // N NUMBER(5,2) Y 0 보정 가중치 평균 이전 1주기
  45. float ADJS_WGHT_AVRG_PRE_2CYCL; // N NUMBER(5,2) Y 0 보정 가중치 평균 이전 2주기
  46. float ADJS_WGHT_AVRG_PRE_3CYCL; // N NUMBER(5,2) Y 0 보정 가중치 평균 이전 3주기
  47. String ADJS_15M_PTRN_APLY_YN; // N CHAR(1) Y 'N' 보정 15분 패턴 적용 여부
  48. int ADJS_SHTR_MISS_DECS_CYCL; // N NUMBER(2) Y 보정 단기 결측 판단 주기
  49. float SMTH_LWST_SPED_FCTR; // N NUMBER(3,2) Y 0 평활화 최저 속도 계수
  50. float SMTH_HGHS_SPED_FCTR; // N NUMBER(3,2) Y 0 평활화 최고 속도 계수
  51. float SMTH_WGHT_AVRG_PRST; // N NUMBER(5,2) Y 0 평활화 가중치 평균 현재
  52. float SMTH_WGHT_AVRG_PRE_1CYCL; // N NUMBER(5,2) Y 0 평활화 가중치 평균 이전 1주기
  53. float SMTH_WGHT_AVRG_PRE_2CYCL; // N NUMBER(5,2) Y 0 평활화 가중치 평균 이전 2주기
  54. TItsMap<int, TPrcsParamClct*> CLCTS; //우선순위순서로 소팅되서 들어감
  55. String DEL_YN;
  56. String ToString();
  57. };
  58. //---------------------------------------------------------------------------
  59. /*
  60. * Manager
  61. */
  62. class TPrcsParamManager
  63. {
  64. public:
  65. TPrcsParamManager();
  66. virtual ~TPrcsParamManager();
  67. public:
  68. TItsMap<String, TPrcsParam*> FLists;
  69. public:
  70. void Clear();
  71. bool LoadFromDb(TADOConnection *ADbConn=NULL);
  72. bool LoadParam(TADOConnection *ADbConn=NULL);
  73. bool LoadParamDetl(TADOConnection *ADbConn=NULL);
  74. bool GetNewPrcsParamId(String &ANewPraramId, TADOConnection *ADbConn=NULL);
  75. bool IsUsing(String AParamId, TADOConnection *ADbConn=NULL);
  76. bool DeleteData(TPrcsParam* AObj, TADOConnection *ADbConn=NULL);
  77. };
  78. //---------------------------------------------------------------------------
  79. extern TPrcsParamManager *PrcsParamManager;
  80. //---------------------------------------------------------------------------
  81. #endif