CDSCrossF.h 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. //---------------------------------------------------------------------------
  2. #ifndef CDSCrossFH
  3. #define CDSCrossFH
  4. //---------------------------------------------------------------------------
  5. #include <Classes.hpp>
  6. #include <stdio.h>
  7. #include <ADODB.hpp>
  8. #include <DB.hpp>
  9. #include "ITSLibF.h"
  10. #include "ITSDbF.h"
  11. #include "CDSObjectF.h"
  12. //---------------------------------------------------------------------------
  13. #include "CenterCommF.h"
  14. //---------------------------------------------------------------------------
  15. //---------------------------------------------------------------------------
  16. class TCrossCam : public TCDSObject
  17. {
  18. public:
  19. TCrossCam()
  20. {
  21. ANGLE = 0;
  22. };
  23. ~TCrossCam() {};
  24. private:
  25. public:
  26. String CROSS_ID;
  27. String IP;
  28. String ID;
  29. String PWD;
  30. String RTSP_URL;
  31. int RTSP_PORT;
  32. int HTTP_PORT;
  33. String DIRECTION;
  34. int ANGLE;
  35. String RIGHT_USE;
  36. public:
  37. void Copy(TCrossCam *AObj);
  38. public:
  39. __property String CAM_ID = { read = CTLR_NMBR, write = CTLR_NMBR };
  40. __property String CAM_NM = { read = NAME, write = NAME };
  41. };
  42. class TCross : public TCDSObject
  43. {
  44. public:
  45. TCross();
  46. ~TCross();
  47. public:
  48. int ZOOM_LEVEL;
  49. String LOCAL_GROUP_ID;
  50. String CROSS_TYPE;
  51. public:
  52. TItsMap<String, TCrossCam*> FLists;
  53. public:
  54. __property String CROSS_ID = { read = CTLR_NMBR, write = CTLR_NMBR };
  55. __property String CROSS_NM = { read = NAME, write = NAME };
  56. };
  57. //---------------------------------------------------------------------------
  58. typedef std::map<String, TCross*>::iterator CrossIterator;
  59. //---------------------------------------------------------------------------
  60. //---------------------------------------------------------------------------
  61. class TCrossManager
  62. {
  63. public:
  64. TCrossManager();
  65. ~TCrossManager();
  66. private:
  67. public:
  68. TItsMap<String, TCross*> FLists;
  69. TItsMap<String, TCrossCam*> FCamLists;
  70. public:
  71. bool LoadFromDb(TADOConnection *ADbConn=NULL);
  72. bool LoadCrossCam(TADOConnection *ADbConn=NULL);
  73. bool LoadStatusFromDb(TADOConnection *ADbConn=NULL);
  74. bool DeleteCross(TCross *AObj, TADOConnection *ADbConn=NULL);
  75. bool InsertCross(TCross *AObj, TADOConnection *ADbConn=NULL);
  76. bool UpdateCross(TCross *AObj, TADOConnection *ADbConn=NULL);
  77. bool MergeCross(TCross *AObj, TADOConnection *ADbConn=NULL);
  78. bool MergeFcltInfo(TCross *AObj, TADOConnection *ADbConn=NULL);
  79. bool GetNextCrossId(int &ANmbr, int &AId, TADOConnection *ADbConn=NULL);
  80. bool SaveCrossCam(TCrossCam *AObj, TADOConnection *ADbConn=NULL);
  81. bool DeleteCrossCam(TCrossCam *AObj, TADOConnection *ADbConn=NULL);
  82. bool MergeCrossCam(TCrossCam *AObj, TADOConnection *ADbConn=NULL);
  83. bool MergeFcltInfo2(TCrossCam *AObj, TADOConnection *ADbConn=NULL);
  84. };
  85. //---------------------------------------------------------------------------
  86. extern TCrossManager *CrossManager;
  87. //---------------------------------------------------------------------------
  88. #endif