浏览代码

添加 获取海康NVR时区的API

王帅锟 6 月之前
父节点
当前提交
10f587962f
共有 3 个文件被更改,包括 36 次插入36 次删除
  1. 2 0
      Hikvision.go
  2. 1 1
      include/library.h
  3. 33 35
      library.cpp

+ 2 - 0
Hikvision.go

@@ -23,6 +23,7 @@ var (
 	initNvr                  func(unsafe.Pointer, string, string, string, string, int) bool
 	initNvr                  func(unsafe.Pointer, string, string, string, string, int) bool
 	checkTimeRegionWithMonth func(core unsafe.Pointer, year int, month int) string
 	checkTimeRegionWithMonth func(core unsafe.Pointer, year int, month int) string
 	checkTimeRegionWithDay   func(core unsafe.Pointer, year int, month int, day int) string
 	checkTimeRegionWithDay   func(core unsafe.Pointer, year int, month int, day int) string
+	nvrUTCDiff               func(core unsafe.Pointer)
 )
 )
 
 
 func init() {
 func init() {
@@ -45,6 +46,7 @@ func init() {
 	purego.RegisterLibFunc(&initNvr, libc, "InitNvr")
 	purego.RegisterLibFunc(&initNvr, libc, "InitNvr")
 	purego.RegisterLibFunc(&checkTimeRegionWithMonth, libc, "CheckTimeRegionWithMonth")
 	purego.RegisterLibFunc(&checkTimeRegionWithMonth, libc, "CheckTimeRegionWithMonth")
 	purego.RegisterLibFunc(&checkTimeRegionWithDay, libc, "CheckTimeRegionWithDay")
 	purego.RegisterLibFunc(&checkTimeRegionWithDay, libc, "CheckTimeRegionWithDay")
+	purego.RegisterLibFunc(&nvrUTCDiff, libc, "NvrUTCDiff")
 
 
 }
 }
 
 

+ 1 - 1
include/library.h

@@ -29,7 +29,7 @@ extern "C" {
     Omnimatrix bool InitNvr(void* PtrHIKNvr,char* ip, char* port, char* username, char* password, int channel);
     Omnimatrix bool InitNvr(void* PtrHIKNvr,char* ip, char* port, char* username, char* password, int channel);
     Omnimatrix char* CheckTimeRegionWithMonth(void* PtrHIKNvr,int year,int month);
     Omnimatrix char* CheckTimeRegionWithMonth(void* PtrHIKNvr,int year,int month);
     Omnimatrix char* CheckTimeRegionWithDay(void* PtrHIKNvr,int year,int month,int day);
     Omnimatrix char* CheckTimeRegionWithDay(void* PtrHIKNvr,int year,int month,int day);
-    Omnimatrix int NvrUTCDiff();
+    Omnimatrix int NvrUTCDiff(void* PtrHIKNvr);
 
 
 #ifdef __cplusplus
 #ifdef __cplusplus
 }
 }

+ 33 - 35
library.cpp

@@ -3,50 +3,50 @@
 #include "src/HIKNvr.h"
 #include "src/HIKNvr.h"
 #include <cstring>
 #include <cstring>
 
 
-bool DVR_Init(){
+bool DVR_Init() {
     return HK_DVR_Init();
     return HK_DVR_Init();
 }
 }
 
 
-void* NewHIKBallCamera() {
+void *NewHIKBallCamera() {
     return new HIKBallCamera();
     return new HIKBallCamera();
 }
 }
 
 
-bool InitBallCamera(void* PtrHIKBallCamera,const char* ip, const char* port,const char* username,const char* password,const char* BallMachineType){
-    auto* HIKBallCameraObj = (HIKBallCamera*)PtrHIKBallCamera;
-    return HIKBallCameraObj->InitBallCamera(ip,port,username,password,BallMachineType);
+bool InitBallCamera(void *PtrHIKBallCamera, const char *ip, const char *port, const char *username, const char *password, const char *BallMachineType) {
+    auto *HIKBallCameraObj = (HIKBallCamera *)PtrHIKBallCamera;
+    return HIKBallCameraObj->InitBallCamera(ip, port, username, password, BallMachineType);
 }
 }
 
 
-bool PtzGotoPut(void* PtrHIKBallCamera,int Action, float P, float T, float Z){
-    auto* HIKBallCameraObj = (HIKBallCamera*)PtrHIKBallCamera;
-    return HIKBallCameraObj->PtzGotoPut(Action,P,T,Z);
+bool PtzGotoPut(void *PtrHIKBallCamera, int Action, float P, float T, float Z) {
+    auto *HIKBallCameraObj = (HIKBallCamera *)PtrHIKBallCamera;
+    return HIKBallCameraObj->PtzGotoPut(Action, P, T, Z);
 }
 }
 
 
-bool PtzGet(void* PtrHIKBallCamera,void *P, void *T, void *Z){
-    auto* HIKBallCameraObj = (HIKBallCamera*)PtrHIKBallCamera;
-    return HIKBallCameraObj->PtzGet((float*)P,(float*)T,(float*)Z);
+bool PtzGet(void *PtrHIKBallCamera, void *P, void *T, void *Z) {
+    auto *HIKBallCameraObj = (HIKBallCamera *)PtrHIKBallCamera;
+    return HIKBallCameraObj->PtzGet((float *)P, (float *)T, (float *)Z);
 }
 }
 
 
-bool StopBus(void* PtrHIKBallCamera,int direction){
-    auto* HIKBallCameraObj = (HIKBallCamera*)PtrHIKBallCamera;
+bool StopBus(void *PtrHIKBallCamera, int direction) {
+    auto *HIKBallCameraObj = (HIKBallCamera *)PtrHIKBallCamera;
     return HIKBallCameraObj->StopBus(direction);
     return HIKBallCameraObj->StopBus(direction);
 }
 }
 
 
-bool StartBus(void* PtrHIKBallCamera,int direction,int speed){
-    auto* HIKBallCameraObj = (HIKBallCamera*)PtrHIKBallCamera;
-    return HIKBallCameraObj->StartBus(direction,speed);
+bool StartBus(void *PtrHIKBallCamera, int direction, int speed) {
+    auto *HIKBallCameraObj = (HIKBallCamera *)PtrHIKBallCamera;
+    return HIKBallCameraObj->StartBus(direction, speed);
 }
 }
 
 
-void* NewHIKNvr(){
+void *NewHIKNvr() {
     return new HIKNvr();
     return new HIKNvr();
 }
 }
 
 
-bool InitNvr(void* PtrHIKNvr,char* ip, char* port, char* username, char* password, int channel){
-    auto* HIKNvrObj = (HIKNvr*)PtrHIKNvr;
-    return HIKNvrObj->InitNvr(ip,port,username,password,channel);
+bool InitNvr(void *PtrHIKNvr, char *ip, char *port, char *username, char *password, int channel) {
+    auto *HIKNvrObj = (HIKNvr *)PtrHIKNvr;
+    return HIKNvrObj->InitNvr(ip, port, username, password, channel);
 }
 }
 
 
-char* CheckTimeRegionWithMonth(void* PtrHIKNvr,int year,int month){
-    auto* HIKNvrObj = (HIKNvr*)PtrHIKNvr;
+char *CheckTimeRegionWithMonth(void *PtrHIKNvr, int year, int month) {
+    auto *HIKNvrObj = (HIKNvr *)PtrHIKNvr;
 
 
     DateTime select_time;
     DateTime select_time;
     select_time.year() = year;
     select_time.year() = year;
@@ -58,17 +58,16 @@ char* CheckTimeRegionWithMonth(void* PtrHIKNvr,int year,int month){
     std::vector<int> available_date_vec;
     std::vector<int> available_date_vec;
     nRet = HIKNvrObj->CheckTimeRegionWithMonth(select_time, available_date_vec);
     nRet = HIKNvrObj->CheckTimeRegionWithMonth(select_time, available_date_vec);
 
 
-    if (nRet == 0)
-    {
+    if (nRet == 0) {
         res = HIKNvrObj->TimeToJson(select_time, &available_date_vec).dump();
         res = HIKNvrObj->TimeToJson(select_time, &available_date_vec).dump();
     }
     }
-    char* cString = new char[res.size() + 1];
-    std::strcpy(cString,res.c_str());
+    char *cString = new char[res.size() + 1];
+    std::strcpy(cString, res.c_str());
     return cString;
     return cString;
 }
 }
 
 
-char* CheckTimeRegionWithDay(void* PtrHIKNvr,int year,int month,int day){
-    auto* HIKNvrObj = (HIKNvr*)PtrHIKNvr;
+char *CheckTimeRegionWithDay(void *PtrHIKNvr, int year, int month, int day) {
+    auto *HIKNvrObj = (HIKNvr *)PtrHIKNvr;
     DateTime select_time;
     DateTime select_time;
     select_time.year() = year;
     select_time.year() = year;
     select_time.month() = month;
     select_time.month() = month;
@@ -76,16 +75,15 @@ char* CheckTimeRegionWithDay(void* PtrHIKNvr,int year,int month,int day){
     std::string res;
     std::string res;
     std::vector<TimeRecord> available_time_vec;
     std::vector<TimeRecord> available_time_vec;
     int nRet = HIKNvrObj->CheckTimeRegionWithDay(select_time, available_time_vec);
     int nRet = HIKNvrObj->CheckTimeRegionWithDay(select_time, available_time_vec);
-    if (nRet == 0)
-    {
-         res = HIKNvrObj->TimeToJsonInDay(select_time, &available_time_vec).dump();
+    if (nRet == 0) {
+        res = HIKNvrObj->TimeToJsonInDay(select_time, &available_time_vec).dump();
     }
     }
-    char* cString = new char[res.size() + 1];
-    std::strcpy(cString,res.c_str());
+    char *cString = new char[res.size() + 1];
+    std::strcpy(cString, res.c_str());
     return cString;
     return cString;
 }
 }
 
 
-int NvrUTCDiff(void* PtrHIKNvr){
-    auto* HIKNvrObj = (HIKNvr*)PtrHIKNvr;
+int NvrUTCDiff(void *PtrHIKNvr) {
+    auto *HIKNvrObj = (HIKNvr *)PtrHIKNvr;
     return HIKNvrObj->GetNvrUTCDiff();
     return HIKNvrObj->GetNvrUTCDiff();
 }
 }