123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203 |
- //---------------------------------------------------------------------------
- #ifndef CDSAviFH
- #define CDSAviFH
- //---------------------------------------------------------------------------
- #include <Classes.hpp>
- #include <ADODB.hpp>
- #include <DB.hpp>
- #include "cxCustomData.hpp"
- #include "ITSLibF.h"
- //---------------------------------------------------------------------------
- /*
- * Avi Sect Link class
- */
- class TItsAviLink
- {
- public:
- TItsAviLink();
- virtual ~TItsAviLink();
- void Clear();
- private:
- bool FCompleted;
- int FEditMode;
- int FGridIndex;
- public:
- String AVI_CTLR_MNGM_NMBR; //VARCHAR2(20) N AVI 제어기 관리 번호
- String AVI_SECT_NMBR; //VARCHAR2(10) N AVI 구간 번호
- String LINK_ID; //NUMBER(10) N 링크 ID
- int ORD; //NUMBER(3) Y 0 순서
- String MEM_DEL;
-
- public:
- __property bool Completed = {read = FCompleted, write = FCompleted};
- __property int EditMode = {read = FEditMode, write = FEditMode };
- __property int GridIndex = {read = FGridIndex, write = FGridIndex };
- };
- /*
- * Avi Sect class
- */
- class TItsAviSect
- {
- public:
- TItsAviSect();
- virtual ~TItsAviSect();
- void Clear();
- private:
- bool FCompleted;
- int FEditMode;
- int FGridIndex;
- public:
- String AVI_CTLR_MNGM_NMBR; //VARCHAR2(20) N AVI 제어기 관리 번호
- int ORD; //NUMBER(3) Y 0 순서
- String AVI_SECT_NMBR; //VARCHAR2(10) N AVI 구간 번호
- String STRT_SPOT_NM; //VARCHAR2(60) Y 시작 지점 명
- String END_SPOT_NM; //VARCHAR2(60) Y 종료 지점 명
- String AVI_SECT_NM; //VARCHAR2(60) Y AVI 구간 명
- String AVI_SECT_DSTC; //NUMBER(6) Y 0 AVI 구간 거리
- String SHRT_PASS_HH; //NUMBER(6) Y 0 최단 통과 시간
- String LNST_PASS_HH; //NUMBER(6) Y 0 최장 통과 시간
- String SPOT_NUM; //NUMBER(3) Y 0 지점 개수
- String STND_DRFT_VAL; //NUMBER(9) Y 표준 편차 값
- String MIN_SPED; //NUMBER(3) Y 0 최소 속도
- String MAX_SPED; //NUMBER(3) Y 0 최대 속도
- String SMTH_FCTR; //NUMBER(5,2) Y 0 평활화 계수
- String DEL_YN; //CHAR(1) Y 'N' 삭제 여부
- String MEM_DEL;
-
- TItsMap<int, TItsAviLink*> FLinkLists;
- public:
- __property bool Completed = {read = FCompleted, write = FCompleted};
- __property int EditMode = {read = FEditMode, write = FEditMode };
- __property int GridIndex = {read = FGridIndex, write = FGridIndex };
- };
- /*
- * AviDtct class
- */
- class TItsAviDtct
- {
- public:
- TItsAviDtct();
- virtual ~TItsAviDtct();
- void Clear();
- private:
- bool FCompleted;
- int FEditMode;
- int FGridIndex;
- public:
- String DTCT_NMBR; //VARCHAR2(8) N 검지기 번호
- String DTCT_NM; //VARCHAR2(40) N 검지기 명
- String CTLR_MNGM_NMBR; //VARCHAR2(20) Y 제어기 관리 번호
- String DTCT_TYPE_CD; //VARCHAR2(7) Y 검지기 유형 코드
- String ISTL_LANE; //NUMBER(2) Y 설치 차로
- String USE_YN; //CHAR(1) Y 'N' 사용 여부
- String DEL_YN; //CHAR(1) Y 'N' 삭제 여부
- int MAX_TFVL; //NUMBER(6) Y 0 최대 교통량
- int MIN_TFVL; //NUMBER(6) Y 0 최소 교통량
- float MAX_OCPY_RATE; //NUMBER(6,2) Y 최대 점유 율
- float MIN_OCPY_RATE; //NUMBER(6,2) Y 최소 점유 율
- int MIN_SPED; //NUMBER(3) Y 0 최소 속도
- int MAX_SPED; //NUMBER(3) Y 0 최대 속도
- String MEM_DEL;
- public:
- __property bool Completed = {read = FCompleted, write = FCompleted};
- __property int EditMode = {read = FEditMode, write = FEditMode };
- __property int GridIndex = {read = FGridIndex, write = FGridIndex };
- };
- //---------------------------------------------------------------------------
- /*
- * Avi class
- */
- class TItsAvi
- {
- public:
- TItsAvi();
- virtual ~TItsAvi();
- void Clear();
- private:
- bool FCompleted;
- int FEditMode;
- int FGridIndex;
- public:
- String AVI_CTLR_MNGM_NMBR; //VARCHAR2(20) N AVI 제어기 관리 번호
- String AVI_ID; //VARCHAR2(10) Y AVI ID
- String LINK_ID; //NUMBER(10) Y 링크 ID
- String AVI_LCTN_NM; //VARCHAR2(60) Y AVI 위치 명
- String AVI_VALD_YN; //CHAR(1) Y 'N' AVI 유효 여부
- String AVI_CTLR_IP; //VARCHAR2(20) Y AVI 제어기 아이피
- String AVI_CTLR_CMNC_PORT; //VARCHAR2(5) Y AVI 제어기 통신 포트
- String AVI_MAIN_CTLR_YN; //CHAR(1) Y 'N' AVI 주 제어기 여부
- String AVI_MNGM_LANE_NUM; //NUMBER(2) Y AVI 관리 차로 개수
- String AVI_CMRA_NUM; //NUMBER(2) Y AVI 카메라 개수
- String AVI_DTCT_NUM; //NUMBER(2) Y AVI 검지기 개수
- String AVI_DTCT_NM; //VARCHAR2(60) Y AVI 검지기 명
- String AVI_CLCT_CYCL; //NUMBER(3) Y AVI 수집 주기
- String AVI_LAMP_AUTO_YN; //CHAR(1) Y 'N' AVI 조명장치 자동 여부
- String AVI_LAMP_ON_HMS; //VARCHAR2(6) Y AVI 조명장치 ON 시각
- String AVI_LAMP_OFF_HMS; //VARCHAR2(6) Y AVI 조명장치 OFF 시각
- String AVI_LAMP_ON_YN; //CHAR(1) Y 'N' AVI 조명장치 ON 여부
- String X_CRDN; //NUMBER(11,8) Y X 좌표
- String Y_CRDN; //NUMBER(10,8) Y Y 좌표
- String RMRK; //VARCHAR2(600) Y 비고
- String DEL_YN; //CHAR(1) Y 'N' 삭제 여부
- String MEM_DEL;
-
- TItsMap<String, TItsAviDtct*> FDtctLists;
- TItsMap<String, TItsAviSect*> FSubLists;
- public:
- __property bool Completed = {read = FCompleted, write = FCompleted};
- __property int EditMode = {read = FEditMode, write = FEditMode };
- __property int GridIndex = {read = FGridIndex, write = FGridIndex };
- };
- //---------------------------------------------------------------------------
- /*
- * Avi Manager
- */
- class TItsAviManager
- {
- public:
- TItsAviManager();
- virtual ~TItsAviManager();
- public:
- TItsMap<String, TItsAvi*> FLists;
- TItsMap<String, TItsAviSect*> FSectLists;
- public:
- bool LoadFromDb(TADOConnection *ADbConn=NULL);
- bool LoadFromDtctDb(TADOConnection *ADbConn=NULL);
- bool LoadFromSectDb(TADOConnection *ADbConn=NULL);
- bool LoadFromSectLinkDb(TADOConnection *ADbConn=NULL);
- bool GetNextAviId(String &ANewId, TADOConnection *ADbConn=NULL);
- bool GetNextAviSectId(String &ANewId, TADOConnection *ADbConn=NULL);
-
- bool DeleteAvi(TItsAvi *AObj, TADOConnection *ADbConn=NULL);
- bool UpdateAvi(TItsAvi *AObj, TADOConnection *ADbConn=NULL);
- bool InsertAvi(TItsAvi *AObj, TADOConnection *ADbConn=NULL);
- bool DeleteAviSectSubTable(TItsAviSect *AObj, TADOConnection *ADbConn=NULL);
- bool DeleteAviSect(TItsAviSect *AObj, TADOConnection *ADbConn=NULL);
- bool SaveAviSect(TItsAviSect *AObj, TADOConnection *ADbConn=NULL);
- };
- //---------------------------------------------------------------------------
- extern TItsAviManager *ItsAviManager;
- //---------------------------------------------------------------------------
- #endif
|