扫描组

Navigation:  C++ > 采集器管理接口 >

扫描组

Previous pageReturn to chapter overviewNext page

 

《扫描组》中的接口主要包括:

ct3_add_scan_group

ct3_delete_scan_group

ct3_query_scan_group

ct3_query_scan_group_id_by_name

ct3_query_scan_groups_of_device

ct3_modify_scan_group

scangroup

copycode!MISSING PHRASE 'COPYCODE'!

///*ScanGroup Function

 

#include "hdKingAPI.h"

#include "error_code.h"

#include "hd3Struct.h"

#include <stdio.h>

#include <string.h>

 

int32 main()

{

 int32 nRet = RD_SUCCESS;

 HD3Connection conn;

 HD3HANDLE hIter = NULL;

 int32 nTryTime = 3;

 uint32 nCollectorID = 0;

 uint32 nDeviceID = 0;

 uint32 nScanGroupID = 0;

 HD3Collector hdCollector;

 HD3Device hdDevice;

 HD3ScanGroup hdScanGroup;

 HD3ScanGroup hdScanGroups[3];

 int32 i = 0;

 int32 nScanGroupNum = 3;

 

 memset(&hdCollector, 0, sizeof(HD3Collector));

 memset(&hdDevice, 0, sizeof(HD3Device));

 memset(&hdScanGroup, 0, sizeof(HD3ScanGroup));

 for (i = 0; i < 3; ++i)

 {

         memset(&hdScanGroups[i], 0, sizeof(HD3ScanGroup));

 }

 

 strncpy(hdCollector.szName"collector"strlen("collector"));

 hdCollector.nType = HD3_COLLECTOR_TYPE_OPC;

 sprintf(hdCollector.szDescription"name: %s, type: %d"hdCollector.szNamehdCollector.nType);

 strncpy(hdCollector.szExtParam"***", 3);

 

 //connect

 strcpy(conn.szAddress"127.0.0.1");

 conn.nPort = 5673;

 conn.nTimeout = 3;

 nRet = nt3_connect(&conn);

 if (nRet != RD_SUCCESS)

 {

         printf("connect to server failed, error code[%d]!\n"nRet);

         return -1;

 }

 

 //login

 nRet = sc3_login("admin""admin");

 if (nRet != RD_SUCCESS)

 {

         printf("login failed, error code[%d]!\n"nRet);

         return -1;

 }

 printf("login successful!\n");

 

 //add collector

 nRet = ct3_add_collector(&hdCollector, &nCollectorID);

 if (nRet != RD_SUCCESS)

 {

         printf("add collector[name:%s] failed, error code [%d]!\n"hdCollector.szNamenRet);

         nt3_disconnect();

         return -1;

 }

 printf("add collector[name:%s] successful!\n"hdCollector.szName);

 

 //query collector id

 nRet = ct3_query_collector_id_by_name(hdCollector.szName, &nCollectorID);

 if (nRet != RD_SUCCESS)

 {

         printf("query collector id  by name[%s] failed, error code [%d]!\n"hdCollector.szNamenRet);

         nt3_disconnect();

         return -1;

 }

 printf("query collector id  by name[%s] successful, collector id  [%d].\n"hdCollector.szNamenCollectorID);

 

 //add device

 strncpy(hdDevice.szName"device"strlen("device"));

 hdDevice.nPort = conn.nPort;

 hdDevice.nTimeout = conn.nTimeout;

 hdDevice.nCollectorID = nCollectorID;

 hdDevice.nTryTime = nTryTime;

 sprintf(hdDevice.szAddr"%d.%d.%d.%d"iiii);

 sprintf(hdDevice.szDescription"name: %s, collector id: %d"hdDevice.szNamehdDevice.nCollectorID);

 strncpy(hdDevice.szExtParam"***", 3);

 

 nRet = ct3_add_device(&hdDevice, &nDeviceID);

 if (nRet != RD_SUCCESS)

 {

         printf("add device[name:%s] failed, error code [%d]!\n"hdDevice.szNamenRet);

         nt3_disconnect();

         return -1;

 }

 printf("add device[name:%s] successful!\n"hdDevice.szName);

 

 //query device id

 nRet = ct3_query_device_id_by_name(nCollectorIDhdDevice.szName, &nDeviceID);

 if (nRet != RD_SUCCESS)

 {

         printf("query device id  by name[%s] failed, error code [%d]!\n"hdDevice.szNamenRet);

         nt3_disconnect();

         return -1;

 }

 printf("query device id  by name[%s] successful, device id  [%d].\n"hdDevice.szNamenDeviceID);

 

 //add scan group

 for (i = 0; i < nScanGroupNum; ++i)

 {

         sprintf(hdScanGroups[i].szName"scan_group%d"i);

         hdScanGroups[i].nDeviceID = nDeviceID;

         hdScanGroups[i].nPeriod = 10;

         hdScanGroups[i].nPhase = 3;

         hdScanGroups[i].nScanType = HD3_SCAN_TYPE_MIN;

         hdScanGroups[i].nDataAddr = 10000;

         hdScanGroups[i].nDataLen = 100;

         sprintf(hdScanGroups[i].szDescrption"name: %s, device id: %d"hdScanGroups[i].szNamehdScanGroups[i].nDeviceID);

         strncpy(hdScanGroups[i].szExtParam"***", 3);

 }

 

 for (i = 0; i < nScanGroupNum; ++i)

 {

         nRet = ct3_add_scan_group(&hdScanGroups[i], &nScanGroupID);

         if (nRet != RD_SUCCESS)

         {

                 printf("add scan group[name:%s] failed, error code [%d]!\n"hdScanGroups[i].szNamenRet);

                 nt3_disconnect();

                 return -1;

         }

         printf("add scan group[name:%s] successful!\n"hdScanGroups[i].szName);

 }

 

 //query scan group id, query scan group, modify scan group

 for (i = 0; i < nScanGroupNum; ++i)

 {

         nRet = ct3_query_scan_group_id_by_name(nDeviceIDhdScanGroups[i].szName, &nScanGroupID);

         if (nRet != RD_SUCCESS)

         {

                 printf("query scan group id  by name[%s] failed, error code [%d]!\n"hdScanGroups[i].szNamenRet);

                 nt3_disconnect();

                 return -1;

         }

         printf("query scan group id  by name[%s] successful, scan group id  [%d].\n"hdScanGroups[i].szNamenScanGroupID);

 

         nRet = ct3_query_scan_group(nScanGroupID, &hdScanGroups[i]);

         if (nRet != RD_SUCCESS)

         {

                 printf("query scan group [id:%d] failed, error code [%d]!\n"nScanGroupIDnRet);

                 nt3_disconnect();

                 return -1;

         }

         printf("query scan group [id:%d] successful.\n"nScanGroupID);

 

         nRet = ct3_modify_scan_group(nScanGroupID, &hdScanGroups[i]);

         if (nRet != RD_SUCCESS)

         {

                 printf("modify scan group [id:%d] failed, error code [%d]!\n"nScanGroupIDnRet);

                 nt3_disconnect();

                 return -1;

         }

         printf("modify scan group [id:%d] successful.\n"nScanGroupID);

 }

 

 // query scan group of device

 nRet = ct3_query_scan_groups_of_device(nDeviceID, &hIter);

 if (nRet != RD_SUCCESS)

 {

         printf("query all scan group of device[id: %d] failed,  error code [%d]!\n"nDeviceIDnRet);

         nt3_disconnect();

         return -1;

 }

 printf("query all scan group of device[id: %d] successful!\n"nDeviceID);

 

 while (true)

 {

         memset(&hdScanGroup, 0, sizeof(HD3ScanGroup));

         nRet = ut3_get_item_step(hIter, &hdScanGroup);

         if (RD_SUCCESS == nRet)

         {

                 printf("Query one scan group [name:%s] successful!\n"hdScanGroup.szName);

         }

         else if (EC_HD_API_QUERY_END == nRet)

         {

                 printf("query all scan group complete!\n");

                 break;

         }

         else

         {

                 printf("query scan group failed, error code [%d]!\n"nRet);

                 break;

         }

 }

 ut3_free_handle(hIter);

 

 //delete scan group

 for (i = 0; i < nScanGroupNum; ++i)

 {

         nRet = ct3_delete_scan_group(hdScanGroups[i].nID);

         if (nRet != RD_SUCCESS)

         {

                 printf("delete scan group failed,  error code [%d]!\n"nRet);

                 nt3_disconnect();

                 return -1;

         }

         printf("delete scan group [id:%d] successful.\n",  hdScanGroups[i].nID);

 }

 

 //disconnect

 nt3_disconnect();

 

 return 0;

}

 

//*/

©2015. All Rights Reserved.