library.cpp 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. #include "include/library.h"
  2. #include "./src/HIKBallCamera.h"
  3. #include "src/HIKNvr.h"
  4. #include <cstring>
  5. bool DVR_Init(){
  6. return HK_DVR_Init();
  7. }
  8. void* NewHIKBallCamera() {
  9. return new HIKBallCamera();
  10. }
  11. bool InitBallCamera(void* PtrHIKBallCamera,const char* ip, const char* port,const char* username,const char* password,const char* BallMachineType){
  12. auto* HIKBallCameraObj = (HIKBallCamera*)PtrHIKBallCamera;
  13. return HIKBallCameraObj->InitBallCamera(ip,port,username,password,BallMachineType);
  14. }
  15. bool PtzGotoPut(void* PtrHIKBallCamera,int Action, float P, float T, float Z){
  16. auto* HIKBallCameraObj = (HIKBallCamera*)PtrHIKBallCamera;
  17. return HIKBallCameraObj->PtzGotoPut(Action,P,T,Z);
  18. }
  19. bool PtzGet(void* PtrHIKBallCamera,void *P, void *T, void *Z){
  20. auto* HIKBallCameraObj = (HIKBallCamera*)PtrHIKBallCamera;
  21. return HIKBallCameraObj->PtzGet((float*)P,(float*)T,(float*)Z);
  22. }
  23. bool StopBus(void* PtrHIKBallCamera,int direction){
  24. auto* HIKBallCameraObj = (HIKBallCamera*)PtrHIKBallCamera;
  25. return HIKBallCameraObj->StopBus(direction);
  26. }
  27. bool StartBus(void* PtrHIKBallCamera,int direction,int speed){
  28. auto* HIKBallCameraObj = (HIKBallCamera*)PtrHIKBallCamera;
  29. return HIKBallCameraObj->StartBus(direction,speed);
  30. }
  31. void* NewHIKNvr(){
  32. return new HIKNvr();
  33. }
  34. bool InitNvr(void* PtrHIKNvr,char* ip, char* port, char* username, char* password, int channel){
  35. auto* HIKNvrObj = (HIKNvr*)PtrHIKNvr;
  36. return HIKNvrObj->InitNvr(ip,port,username,password,channel);
  37. }
  38. char* CheckTimeRegionWithMonth(void* PtrHIKNvr,int year,int month){
  39. auto* HIKNvrObj = (HIKNvr*)PtrHIKNvr;
  40. DateTime select_time;
  41. select_time.year() = year;
  42. select_time.month() = month;
  43. std::string res;
  44. //check the time region with month
  45. int nRet = 0;
  46. std::vector<int> available_date_vec;
  47. nRet = HIKNvrObj->CheckTimeRegionWithMonth(select_time, available_date_vec);
  48. if (nRet == 0)
  49. {
  50. res = HIKNvrObj->TimeToJson(select_time, &available_date_vec).dump();
  51. }
  52. char* cString = new char[res.size() + 1];
  53. std::strcpy(cString,res.c_str());
  54. return cString;
  55. }
  56. char* CheckTimeRegionWithDay(void* PtrHIKNvr,int year,int month,int day){
  57. auto* HIKNvrObj = (HIKNvr*)PtrHIKNvr;
  58. DateTime select_time;
  59. select_time.year() = year;
  60. select_time.month() = month;
  61. select_time.day() = day;
  62. std::string res;
  63. std::vector<TimeRecord> available_time_vec;
  64. int nRet = HIKNvrObj->CheckTimeRegionWithDay(select_time, available_time_vec);
  65. if (nRet == 0)
  66. {
  67. res = HIKNvrObj->TimeToJsonInDay(select_time, &available_time_vec).dump();
  68. }
  69. char* cString = new char[res.size() + 1];
  70. std::strcpy(cString,res.c_str());
  71. return cString;
  72. }