VIVIX SDK Developer Manual
© Vieworks 2022 All rights reserved.
Under copyright laws, this manual may not be reproduced, in whole or in part, without the written permission of Vieworks.
The specifications and related information in this manual may be changed without notice. Refer to Vieworks Download System (VDS) for the latest version of our manuals.
Contents
1 Instruction
1.1 Document Guide
This document provides information about the software module and the related API for developing VIVIX-S detectors based on Windows.
The end user can access to the VIVIX-S detector and provide the way of image acquisition and check the status information. Since this SDK is composed of Dll and is thread-safe, it can be used under the multi-thread environment safely.
Caution
If the user is not fully acquainted with this manual, unsuspected problem can be happened due to carelessness. To prevent any medical accidents, the user should fully understand the instructions of this manual before using this SDK.
Target
This manual is intended for developers who use VIVIX-S detector models with VIVIX SDK.
Contact Department
For any comments or inquiries regarding this document, contact via email below.
1.1.1 Symbols
Before attempting to use VIVIX SDK, follow the instructions in this manual along with the caution symbol. It is important for you to read and understand the contents of this manual for operating the software safely.
Caution
|
This symbol is used to indicate a potentially hazardous situation which may cause death, personal injury or substantial property damage if the instructions are ignored. Be sure to understand the instructions of this symbol for the safe operation.
|
Information
|
This symbol is used to indicate reference and complementary information related to the product. Users should read the instructions of this symbol carefully.
|
1.1.2 Notation
Bold Types
We applied bold font style to the words which indicated products terms, or the words and sentences which are needed to transmit clear meaning to the customers. This helps you to easily distinguish the words from other technical ones for explaining functions.
Sample Source Code (Examples)
The source code is written in black on a gray background in this document.
Vieworks.VIVIX.net.CVIVIXNet pSDK;
Vieworks.VIVIX.net.RESULT result = pSDK.DetectorOpen(0);
if(result == Vieworks.VIVIX.net.RESULT.RESULT_SUCCESS)
{
System.Diagnostics.Trace.WriteLine(“Detector connected”);
}
else
{
System.Diagnostics.Trace.WriteLine(“Detector not connected”);
}
1.2 Notices
When using VIVIX SDK, be sure to take the following precautions. Otherwise, problems may occur and the equipment may not function correctly.
Open Detector
Make sure you connect the detector correctly.
Network Card Setting
Need to set the network card.
VwFilter
Need to install the VwFilter.
Calibration
-
To ensure optimal system performance, it is important to verify that the system is calibrated correctly.
-
Check if the calibration is performed after the equipment is completed to be installed or repaired.
-
Do not try to use the system if the calibration has not been performed.
-
You can process calibration with the calibration data CD (provided).
|
The calibration result can be different through the use environment. Therefore, if the result performed by the provided calibration data is not satisfied, you can create the data in the field by using the calibration software (Setup) by yourself.
|
1.2.1 Trademarks
The name “Vieworks” and the Vieworks logo are registered trademarks of Vieworks.
© Vieworks. 2022 All rights reserved.
The copyright of this document is owned by Vieworks. Under copyright laws, this document cannot be reproduced, in whole or in part, without the written permission of Vieworks.
2 Programming Guide
2.1 Overview
VIVIX SDK provides SDK (Software Development Kit) to build applications for VIVIX-S detectors.
This SDK provides API (Application Programming Interface) for development as follows:
2.1.1 Hieratchy chart
2.1.2 Features
-
Initializing connection
-
Operation
-
Set / Get value
-
Set state
-
File I/O
2.2 Requirements
2.2.1 Specifications
OS
|
M.S. Windows 7 Professional SP1 (64bit)
M.S. Windows 8.1 Professional (64bit)
|
M.S. Windows 10 Professional (64bit)
|
LAN Card
|
Gigabit Ethernet card for
detector interface (Intel® Series)
Speed: 1Gbps
Jumbo Frames: 9K
Receive Descriptors: 1024
802.11ac (Wireless)
LAN card for network interface
(optional)
|
1000BASE-T Gigabit Ethernet card for
detector interface (Intel® I210 Series)
Speed: 1Gbps or higher
Jumbo Frames: 9K
Receive Descriptors: 2K or more
802.11ac (Wireless)
Gigabit supported LAN card for network interface (optional)
|
CPU
|
Intel® Core™ i5 3330-CPU
(or compatible CPU)
|
Intel® Core™ i7 8700-CPU or higher
(or compatible CPU)
|
Memory
|
4GB
|
16GB or more
|
HDD or SSD
|
1TB
|
2TB or more
|
Monitor
|
General monitor: 1280 x 800
|
General monitor:
1920 x 1080, 2560 x 1440
Surface pro 4 : 2160 x 1440
|
CD-ROM
|
|
CD or DVD Reader / Writer
|
2.2.2 Development tool
2.2.3 Device
This documentation describes coding method that helps user to build application for the following VIVIX-S detector models using VIVIX Image Acquisition SDK.
2.2.4 Driver
2.3 Package Information
2.3.1 Installation (Unpacking)
After you download the VIVIX SDK package, unpacking VIVIX SDK in the location you want to install.
‘Visual C++ Redistributable for Visual Studio 2012 Update 4 (x86 or x64 version)’ should be installed to use VIVIX SDK, according to the application you plan to develop.
For more information, refer to the next section.
2.3.2 Modules
VIVIX SDK includes Headers, Libraries and DLLs to compile and link VIVIX SDK APIs.
[VIVIX SDK]
|
VIVIX SDK package root
|
Include
|
Header files of VIVIX SDK
|
lib
|
Static link library of VIVIX SDK
|
bin
|
Dynamic link library of VIVIX SDK
|
VIVIX_SDK.dll
|
[SDK ROOT]/bin/win32/Debug
|
Dynamic link library for debug in 32bit
|
[SDK ROOT]/bin/win32/Release
|
Dynamic link library for release in 32bit
|
[SDK ROOT]/bin/x64/Debug
|
Dynamic link library for debug in 64bit
|
[SDK ROOT]/bin/x64/Release
|
Dynamic link library for release in 64bit
|
2.3.3 DLL File Version
1.0.3.61 ~ 1.0.4.3
|
2.0.0.3
|
-
|
2.4.9
|
2.3.1.0
|
1.0.0.37
|
1.0.4.4
|
2.0.0.4
|
1.0.4.5 ~ 1.0.4.14
|
2.0.0.5
|
1.0.4.15 ~ 1.0.4.16
|
2.0.0.6
|
1.0.4.23 ~ 1.0.11
|
2.0.0.6
|
6.0.4.0
|
1.0.15 ~ 1.0.16
|
2.0.0.6
|
6.0.4.0
6.6.1.13
|
1.0.17 ~ 1.0.18
|
-
|
2.0.0
|
1.0.19~1.0.22
|
-
|
-
|
1.0.23~1.0.25
|
2.1.0
|
1.1.2
|
3.0.4
|
1.1.4
|
3.0.7
|
1.1.5
|
3.0.8
|
2.4 Detector Connect & Setup
Before using VIVIX SDK, you need to connect detector.
2.4.1 Connecting a detector
Refer to the user manual of each detector model.
2.5 Understanding Libraries-
2.5.1 Name spaces
VIVIX SDK is embodied in the namespace Vieworks.VIVIX.
2.5.2 Classes
VIVIX SDK provides classes for developing ‘C++’. The following classes are used for developing ‘C++’.
CVIVIXSDK
|
Class for initializing VIVIX SDK, registers a detector and SCU, sets the storage route of logs, and acquires the interface instance of a detector and SCU.
|
CDetector
|
Interface class for common functions of a detector. The interface class of each model inherits this class.
|
CSCU
|
Interface class for using the SCU functions.
|
CFXRDS
|
Interface class about the functions of FXRD-1417S, FXRD-1717S and FXRD-1717V, if it inherits CDetector.
|
CFXRDW
|
Interface class about the functions of FXRD-1417W, if it inherits CDetector.
|
CFXRDN
|
Interface class about the specialized functions of FXRD-1012N, FXRD-1717N, VXTD-2532E and FXRD-1417N, FXRD-VW Series, FXRD-FW Series if it inherits CDetector.
|
2.5.3 Type definitions
2.5.4 Enumerations
2.5.5 Structures
3 Types and Enumerators
3.1 Types
DETECTOR_ID
|
int
|
Classifies a detector from SDK.
|
FILE_PATH
|
wchar_t[256]
|
Sends a file route.
|
MODEL_NAME
|
wchar_t[21]
|
Sends a model name.
|
SERIAL
|
wchar_t[21]
|
Sends serial numbers.
|
DRIVE_MODE_NAME
|
char[128]
|
Sends a drive mode name.
|
3.1.1 DETECTOR_ID
The ID used for classifying a detector from SDK.
Syntax (C++)
typedef int DETECTOR_ID;
Remarks
DETECTOR_ID is allocated from VIVIX Setup and has a value from 0 ~ 4.
3.1.2 FILE_PATH
The type used for sending a file route.
Syntax (C++)
typedef wchar_t[256] FILE_PATH;
3.1.3 MODEL_NAME
The type used for sending a model name.
Syntax (C++)
typedef wchar_t[21] MODEL_NAME;
3.1.4 SERIAL
The type used for sending serial numbers.
Syntax (C++)
typedef wchar_t[21] SERIAL;
3.1.5 DRIVE_MODE_NAME
The type used for sending a drive mode name.
Syntax (C++)
typedef char[128] DRIVE_MODE_NAME;
3.2 Enumerators
3.2.1 BATTERY_REMAIN_LEVEL
BATTERY_REMAIN_LEVEL is the value that represents battery remain level of wireless detector and specifies a battery remain level of wireless detector.
Syntax
enum BATTERY_REMAIN_LEVEL // C++
public enum BATTERY_REMAIN_LEVEL // C#
{
BATTERY_UNKNOWN = 0,
BATTERY_LOW = 1,
BATTERY_QUARTER = 2,
BATTERY_HALF = 3,
BATTERY_HALFQUARTER = 4,
BATTERY_FULL = 5
};
BATTERY_UNKNOWN
|
0
|
Unknown battery level.
|
BATTERY_LOW
|
1
|
Low battery level (1 ~ 30%)
|
BATTERY_QUARTER
|
2
|
1/4 battery level (31 ~ 50%)
|
BATTERY_HALF
|
3
|
1/2 battery level (51 ~ 60%)
|
BATTERY_HALFQUARTER
|
4
|
3/4 battery level (61 ~ 80%)
|
BATTERY_FULL
|
5
|
Full battery level (81 ~ 100%)
|
Remarks
This information is only for the detector models which use a battery pack.
3.2.2 CALIBRATION_TYPE
CALIBRATION_TYPE is the value that represents calibration type.
Syntax
enum CALIBRATION_TYPE // C++
public enum CALIBRATION_TYPE // C#
{
CALIBRATION _OFFSET = 0,
CALIBRATION _DEFECT = 1,
CALIBRATION _GAIN = 2
};
CALIBRATION_OFFSET
|
0
|
Offset calibration
|
CALIBRATION_DEFECT
|
1
|
Defect calibration
|
CALIBRATION_GAIN
|
2
|
Gain calibration
|
3.2.3 CALIBRATION_FILE_TYPE
CALIBRATION_FILE_TYPE is the value that represents calibration file types.
Syntax
enum CALIBRATION_FILE_TYPE // C++
public enum CALIBRATION_FILE_TYPE // C#
{
CALIBRATION_FILE_OFFSET = 1,
CALIBRATION_FILE_DEFECT = 2,
CALIBRATION_FILE_GAIN = 3
};
CALIBRATION_FILE_OFFSET
|
1
|
Offset calibration file
|
CALIBRATION_FILE_DEFECT
|
2
|
Defect offset calibration file
|
CALIBRATION_FILE_GAIN
|
3
|
Gain calibration file
|
3.2.4 PATIENT_LIST_SET_TYPE
PATIENT_LIST_SET_TYPE is the value that represents method of PatientInfoListSet function.
Syntax
enum PATIENT_LIST_SET_TYPE // C++
public enum PATIENT_LIST_SET_TYPE // C#
{
PATIENT_LIST_REPLACE = 1,
PATIENT_LIST_UPDATE = 2
};
PATIENT_LIST_REPLACE
|
1
|
Replaces patient list
|
PATIENT_LIST_UPDATE
|
2
|
Updates the list to its original state
|
3.2.5 CONNECTION_INTERFACE
CONNECTION_INTERFACE is the value that represents interface of wireless detector.
Syntax
enum CONNECTION_INTERFACE // C++
public enum CONNECTION_INTERFACE // C#
{
INTERFACE_UNKNOWN = 0,
INTERFACE_WIRELESS = 1,
INTERFACE_TETHER = 2,
INTERFACE_AP = 3
};
INTERFACE_UNKNOWN
|
0
|
Unknown connection interface.
|
INTERFACE_WIRELESS
|
1
|
Wireless interface. SCU is in AP mode, and the detector is connected wirelessly.
|
INTERFACE_TETHER
|
2
|
Tether interface. SCU and detector is connected with a tether cable.
|
INTERFACE_AP
|
3
|
AP interface. The detector is in AP mode.
|
3.2.6 CONNECTION_STATE
CONNECTION_STATE is the value that represents connection state with the device.
Syntax
enum CONNECTION_STATE // C++
public enum CONNECTION_STATE // C#
{
NOT_CONNECTED = 0,
CONNECTED = 1,
DISCONNECTED = 2
};
NOT_CONNECTED
|
0
|
Not connected with device.
|
CONNECTED
|
1
|
Connect with device.
|
DISCONNECTED
|
2
|
Disconnect device
|
3.2.7 DEBOUNCE_TYPE
DEBOUNCE_TYPE is value that represents debounce type.
Syntax
enum DEBOUNCE_TYPE // C++
public enum DEBOUNCE_TYPE // C#
{
DEBOUNCE_DR = 0,
DEBOUNCE_AED= 1
};
DEBOUNCE_DR
|
0
|
For setting debounce time of DR trigger
|
DEBOUNCE_AED
|
1
|
For setting debounce time of AED trigger
|
3.2.8 DETECTOR_TYPE
DETECTOR_TYPE is the value that represents detector types.
Syntax
enum DETECTOR_TYPE // C++
public enum DETECTOR_TYPE // C#
{
NO_DETECTOR = 0,
FXRD1417_S = 6,
FXRD1717_S = 7,
FXRD1417_W = 8,
FXRD1012_N = 9,
FXRD1717_N = 10,
FXRD1417_N = 11,
FXRD1012_C = 12,
FXRD1717_V = 13,
FXRD1012_T = 14,
VXTD2532_E = 14,
FXRD1751_S = 15,
FXRD3643_V = 16,
FXRD4343_V = 17,
FXRD2530_V = 18,
FXRD3643_F = 19,
FXRD4343_F = 20,
FXRD2530_F = 21,
};
NO_DETECTOR
|
0
|
No detector
|
FXRD1417_S
|
6
|
FXRD 1417S (Wired detector)
|
FXRD1717_S
|
7
|
FXRD 1717S (Wired detector)
|
FXRD1417_W
|
8
|
FXRD 1417W (Wireless detector)
|
FXRD1012_N
|
9
|
FXRD 1012N
|
FXRD1717_N
|
10
|
FXRD 1717N
|
FXRD1417_N
|
11
|
FXRD 1417N
|
FXRD1012_C
|
12
|
FXRD 1012C (deprecated)
|
FXRD1717_V
|
13
|
FXRD 1717V (Wired detector)
|
FXRD1012_T
|
14
|
FXRD 1012_T detector. (Old name of 2532_E)
|
VXTD2532_E
|
14
|
FXRD 2532_E detector.
|
FXRD1751_S
|
15
|
FXRD 1751S (Long Format)
|
FXRD3643_V
|
16
|
FXRD 3643V
|
FXRD4343_V
|
17
|
FXRD 4343V
|
FXRD2530_V
|
18
|
FXRD 2530V
|
FXRD3643_F
|
19
|
FXRD 3643F
|
FXRD4343_F
|
20
|
FXRD 4343F
|
FXRD2530_F
|
21
|
FXRD 2530F
|
VXTD2532_EV
|
22
|
VXTD 2532_V detector (NDT model)
|
3.2.9 DETECTOR_CLASS
DETECTOR_CLASS is the value that represents class of the detector.
Syntax
enum DETECTOR_CLASS // C++
public enum DETECTOR_CLASS // C#
{
DETECTOR_CLASS_UNKNOWN = -1,
DETECTOR_CLASS_FXRDS = 0,
DETECTOR_CLASS_FXRDW = 1,
DETECTOR_CLASS_FXRDN = 2,
};
DETECTOR_CLASS_UNKNOWN
|
-1
|
Unknown Detector Class
|
DETECTOR_CLASS_FXRDS
|
0
|
FXRDS Class
|
DETECTOR_CLASS_FXRDW
|
1
|
FXRDW Class
|
DETECTOR_CLASS_FXRDN
|
2
|
FXRDN Class.
|
3.2.10 DIRECTION
DIRECTION is the value that represents detector direction.
Syntax
enum DIRECTION // C++
public enum DIRECTION // C#
{
DIRECTION_NONE = 0,
DIRECTION_CW90 = 1,
DIRECTION_CW180 = 2,
DIRECTION_CW270 = 3
};
DIRECTION_NONE
|
0
|
0 degree
|
DIRECTION_CW90
|
1
|
Clockwise 90 degree.
|
DIRECTION_CW180
|
2
|
Clockwise 180 degree.
|
DIRECTION_CW270
|
3
|
Clockwise 270 degree.
|
Remarks
Coordinates and the direction of an image are shown as follows;
When the detector is placed with the object as the same direction, the direction is DIRECTION_NONE.
3.2.11 ERROR_TYPE
ERROR_TYPE is the value that represents error type.
Syntax
enum ERROR_TYPE // C++
public enum ERROR_TYPE // C#
{
ERR_NOT_CALIBRATED = 1,
ERR_NOT_ENOUGH_MEMORY = 2,
ERR_IMAGE_TIMEOUT = 3,
ERR_IMAGE_ACQ_FAILED = 4,
ERR_HARDDISK_CAPACITY_SHORTAGE = 5,
ERR_GAIN_CALIBRATION_DATA_IS_EXPIRED = 20
};
ERR_NOT_CALIBRATED
|
1
|
Detector is not calibrated.
|
ERR_NOT_ENOUGH_MEMORY
|
2
|
Not enough memory.
|
ERR_IMAGE_TIMEOUT
|
3
|
Failed to transmit an image because of timeout.
|
ERR_IMAGE_ACQ_FAILED
|
4
|
Image acquisition failed.
|
ERR_HARDDISK_CAPACITY_SHORTAGE
|
5
|
Not enough hard disk.
|
ERR_DEVICE_INTERNAL_CONNECTION_ERROR
|
6
|
Multi board detector internal connection has error.
|
ERR_DEVICE_IN_RECOVERY_MODE
|
7
|
Device is in recovery mode.
|
ERR_AED_SENSOR_ERROR
|
9
|
AED Sensor error occured.
|
ERR_OVERLAP_IMAGE_TIMEOUT
|
10
|
Overlap image timeout occured.
|
ERR_GAIN_CALIBRATION_DATA_IS_EXPIRED
|
20
|
Gain calibration data is need to update
|
Remarks
Perform Gain Calibration again if ERR_GAIN_CALIBRATION_DATA_IS_EXPIRED is returned.
3.2.12 GAIN_PRESET
GAIN_PRESET is the value that represents gain preset.
Syntax
enum GAIN_PRESET // C++
public enum GAIN_PRESET // C#
{
GAIN_TYPE_0 = 0,
GAIN_TYPE_1 = 1,
GAIN_TYPE_2 = 2,
GAIN_TYPE_3 = 3,
GAIN_TYPE_4 = 4,
GAIN_TYPE_5 = 5
};
GAIN_TYPE_0
|
0
|
Gain type 0
|
GAIN_TYPE_1
|
1
|
Gain type 1
|
GAIN_TYPE_2
|
2
|
Gain type 2
|
GAIN_TYPE_3
|
3
|
Gain type 3
|
GAIN_TYPE_4
|
4
|
Gain type 4
|
GAIN_TYPE_5
|
5
|
Gain type 5
|
Remarks
You can select the Gain Type to adjust the sensitivity of the detector to acquire X-ray images with desired brightness according to the specifications of X-ray generator or the type of objects. The following table describes each Gain Type of the sensitivity ratio.
3.2.13 IMAGE_MODE
IMAGE_MODE is the value that represents image mode.
Syntax
enum IMAGE_MODE // C++
public enum IMAGE_MODE // C#
{
IMAGE_MODE_UNKNOWN = 0,
IMAGE_MODE_PREVIEW = 1,
IMAGE_MODE_NORMAL = 2,
IMAGE_MODE_BACKUP = 3,
IMAGE_MODE_STORED = 4
};
IMAGE_MODE_UNKNOWN
|
0
|
Unknown image mode
|
IMAGE_MODE_PREVIEW
|
1
|
Preview image mode
|
IMAGE_MODE_NORMAL
|
2
|
Normal image mode
|
IMAGE_MODE_BACKUP
|
3
|
Backup image mode
|
IMAGE_MODE_STORED
|
4
|
Stored image mode
|
Remarks
-
IMAGE_MODE indicates the image type, and is sent to the Callback Notification function with images. IMAGE_MODE_PREVIEW indicates a preview image (a quarter size of the main image), sent before receiving the main image. IMAGE_MODE_NORMAL indicates the actual main image.
-
IMAGE_MODE_BACKUP is the image stored in the detector because the image transmission failed
-
IMAGE_MODE_STORED is the image recorded without the SDK connection in the detector of FXRD-1417W model.
3.2.14 NEUTERED
NEUTERED is the value that represents neutered information for veterinary use.
Syntax
enum NEUTERED // C++
public enum NEUTERED // C#
{
UNKNOWN,
ALTERED,
UNALTERED
};
UNKNOWN
|
0
|
No information for neutered.
|
ALTERED
|
1
|
Altered.
|
UNALTERED
|
2
|
Unaltered.
|
3.2.15 OFFSET_REFRESH_STATUS
OFFSET_REFRESH_STATUS is the value that represents offset refresh status.
Syntax
enum OFFSET_REFRESH_STATUS // C++
public enum OFFSET_REFRESH_STATUS // C#
{
OFFSET_REFRESH_FAILED = -1,
OFFSET_REFRESH_DONE = 1,
OFFSET_REFRESH_VALIDATION_ERROR = 2
};
OFFSET_REFRESH_FAILED
|
-1
|
Offset refresh failed.
|
OFFSET_REFRESH_DONE
|
1
|
Offset refresh done.
|
OFFSET_REFRESH_VALIDATION_ERROR
|
2
|
Not used
|
Remarks
OFFSET_REFRESH_VALIDATION_ERROR is not used now, and is schedules to be removed.
3.2.16 REBOOT_STATUS
REBOOT_STATUS is the value that represents detector and SCU reboot status.
Syntax
enum REBOOT_STATUS // C++
public enum REBOOT_STATUS // C#
{
REBOOT_FINISH_TRANS = 0,
REBOOT_ERASE = 1,
REBOOT_WRITE = 2,
REBOOT_START = 3,
REBOOT_DONE = 4
};
REBOOT_FINISH_TRANS
|
0
|
Reboot finish trans.
|
REBOOT_ERASE
|
1
|
Reboot erase
|
REBOOT_WRITE
|
2
|
Reboot write
|
REBOOT_START
|
3
|
Reboot start
|
REBOOT_DONE
|
4
|
Reboot done
|
3.2.17 RESULT
RESULT is the value that represents result of function.
Syntax
enum RESULT // C++
public enum RESULT // C#
{
RESULT_SUCCESS = 0,
RESULT_ERROR = -1,
RESULT_SDK_IS_NOT_INITIALIZED = -2,
RESULT_INVALID_PARAMETER = -3,
RESULT_NOT_ENOUGH_MEMORY = -4,
RESULT_INVALID_MODEL = -5,
RESULT_ALREADY_REGISTERED_DEVICE = -6,
RESULT_DETECTOR_ID_ALREADY_IN_USE = -7,
RESULT_COMMAND_IS_NOT_READY = -8,
RESULT_NOT_SUPPORTED_VERSION = -9,
RESULT_NOT_SUPPORTED_MODEL = -10,
RESULT_NOT_ENOUGH_HARD_DISK = -11,
RESULT_INVALID_CASTING = -12,
RESULT_SCU_NO_INFORMATION = -20,
RESULT_SCU_ALREADY_CONNECTED = -21,
RESULT_CONNECTED_FAILED = -22,
RESULT_SCU_NOT_CONNECTED = -23,
RESULT_DETECTOR_NO_INFORMATION = -50,
RESULT_DETECTOR_ALREADY_CONNECTED = -51,
RESULT_DETECTOR_NOT_CONNECTED = -52,
RESULT_DETECTOR_NOT_INITIALIZED = -53,
RESULT_DETECTOR_NOT_CALIBRATED = -54,
RESULT_DETECTOR_NOT_CALIBRATION_MODE = -55,
RESULT_DETECTOR_OFFSET_CALIBRATION_IS_NOT_READY = -56,
RESULT_DETECTOR_IS_IN_BUSY = -57,
RESULT_DETECTOR_IS_IN_SLEEP = -58,
RESULT_DETECTOR_SLEEP_MODE_IS_NOT_ENABLED = -59,
RESULT_DETECTOR_NOT_OFFSET_CALIBRATED = -61,
RESULT_DETECTOR_NOT_DEFECT_CALIBRATED = -62,
RESULT_DETECTOR_NOT_GAIN_CALIBRATED = -63,
RESULT_OSF_DATA_IS_NOT_READY = -64,
RESULT_DATA_NOT_FOUND = -65,
RESULT_COMMAND_TIMEOUT = -66,
RESULT_IO_INVALID_UNKNOWN = -100,
RESULT_IO_FILE_NOT_EXIST = -101,
RESULT_IO_INSUFFICIENT_PERMISSION = -102,
RESULT_IO_INVALID_FILE = -103,
RESULT_INVALID_MODEL = -104,
RESULT_INVALID_SERIAL = -105,
RESULT_IO_NOT_SUPPORTED_VERSION = -106,
RESULT_IO_CRC_MISMATCH = -107,
RESULT_IO_FILE_OPEN_FAILED = -108,
RESULT_IO_HEADER_MISMATCH = -109,
RESULT_IO_INVALID_FILE_PATH = -110,
RESULT_IO_INVALID_BUFFER = -111,
RESULT_IO_INVALID_SIZE = -112,
RESULT_IO_EXPOSURE_TIME_MISMATCH = -113,
RESULT_DEVICE_NO_NEEDED_UPDATE = -150,
RESULT_ALREADY_CONNECTED_IP = - 160,
RESULT_ALREADY_REGISTERED_IP = - 161,
RESULT_SDK_IS_ALREADY_IN_USE = -999
};
RESULT_SUCCESS
|
0
|
Command was successfully operated.
|
RESULT_ERROR
|
-1
|
Command failed because of unknown reason.
|
RESULT_SDK_IS_NOT_INITIALIZED
|
-2
|
SDK is not initialized to use.
|
RESULT_INVALID_PARAMETER
|
-3
|
Parameter value is invalid.
|
RESULT_NOT_ENOUGH_MEMORY
|
-4
|
Memory is not enough to operate command.
|
RESULT_INVALID_MODEL
|
-5
|
Not supported or invalid model for command.
|
RESULT_ALREADY_REGISTERED_DEVICE
|
-6
|
Already registered device. Duplicated device.
|
RESULT_DETECTOR_ID_ALREADY_IN_USE
|
-7
|
Duplicated detector ID
|
RESULT_COMMAND_IS_NOT_READY
|
-8
|
Command is not ready to perform.
|
RESULT_NOT_SUPPORTED_VERSION
|
-9
|
Not supported version of firmware.
|
RESULT_NOT_SUPPORTED_MODEL
|
-10
|
Not supported model.
|
RESULT_NOT_ENOUGH_HARD_DISK
|
-11
|
Not enough hard disk.
|
RESULT_SCU_NO_INFORMATION
|
-20
|
There is no SCU information.
|
RESULT_SCU_ALREADY_CONNECTED
|
-21
|
SCU has been already connected.
|
RESULT_CONNECTED_FAILED
|
-22
|
Failed to connect with SCU.
|
RESULT_SCU_NOT_CONNECTED
|
-23
|
SCU was not connected.
|
RESULT_DETECTOR_NO_INFORMATION
|
-50
|
There is no detector information.
|
RESULT_DETECTOR_ALREADY_CONNECTED
|
-51
|
Detector has been already connected.
|
RESULT_DETECTOR_NOT_CONNECTED
|
-52
|
Detector is not connected.
|
RESULT_DETECTOR_NOT_INITIALIZED
|
-53
|
Detector was not initialized.
|
RESULT_DETECTOR_NOT_CALIBRATED
|
-54
|
Detector was not calibrated.
|
RESULT_DETECTOR_NOT_CALIBRATION_MODE
|
-55
|
Cannot run calibration without calibration mode.
|
RESULT_DETECTOR_OFFSET_CALIBRATION_IS_NOT_READY
|
-56
|
Cannot perform offset calibration right now.
|
RESULT_DETECTOR_IS_IN_BUSY
|
-57
|
Detector is in busy.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
-58
|
Detector is in sleep mode.
|
RESULT_DETECTOR_SLEEP_MODE_IS_NOT_ENABLED
|
-59
|
Sleep mode is not enabled.
|
RESULT_DETECTOR_NOT_PRE_OFFSET_CALIBRATED
|
-60
|
Pre-offset was not calibrated.
|
RESULT_DETECTOR_NOT_POST_OFFSET_CALIBRATED
|
-61
|
Post-offset was not calibrated.
|
RESULT_DETECTOR_NOT_DEFECT_CALIBRATED
|
-62
|
Defect was not calibrated.
|
RESULT_DETECTOR_NOT_GAIN_CALIBRATED
|
-63
|
Gain was not calibrated.
|
RESULT_OSF_DATA_IS_NOT_READY
|
-64
|
Detector OSF data is not created.
|
RESULT_DATA_NOT_FOUND
|
-65
|
Data does not exist.
|
RESULT_COMMAND_TIMEOUT
|
-66
|
Timeout occurred during operation.
|
RESULT_IO_INVALID_UNKNOWN
|
-100
|
File-related error occurred.
|
RESULT_IO_FILE_NOT_EXIST
|
-101
|
File does not exist.
|
RESULT_IO_INSUFFICIENT_PERMISSION
|
-102
|
Insufficient permission to access file.
|
RESULT_IO_INVALID_FILE
|
-103
|
Invalid file
|
RESULT_INVALID_MODEL
|
-104
|
The model is not matched with file information.
|
RESULT_INVALID_SERIAL
|
-105
|
Serial is not matched with file information.
|
RESULT_IO_NOT_SUPPORTED_VERSION
|
-106
|
File version is not supported or invalid.
|
RESULT_IO_CRC_MISMATCH
|
-107
|
CRC is not matched with file information.
|
RESULT_IO_FILE_OPEN_FAILED
|
-108
|
Failed to open a file.
|
RESULT_IO_HEADER_MISMATCH
|
-109
|
File header is not matched with file information.
|
RESULT_IO_INVALID_FILE_PATH
|
-110
|
File path is invalid.
|
RESULT_IO_INVALID_BUFFER
|
-111
|
Invalid buffer
|
RESULT_IO_INVALID_SIZE
|
-112
|
Invalid data or image size
|
RESULT_IO_EXPOSURE_TIME_MISMATCH
|
-113
|
Exposure time is not matched.
|
RESULT_DEVICE_NO_NEEDED_UPDATE
|
-150
|
Device is no need to be updated.
|
RESULT_ALREADY_CONNECTED_IP
|
-160
|
The detector's ip to open is already open.
|
RESULT_ALREADY_REGISTERED_IP
|
-161
|
The detector ip to be registered is already open.
|
RESULT_SDK_IS_ALREADY_IN_USE
|
-999
|
VIVIX SDK is already in use by another process.
|
3.2.18 SCU_TYPE
SCU_TYPE is the value that represents SCU types.
Syntax
enum SCU_TYPE // C++
public enum SCU_TYPE // C#
{
NO_SCU = 0,
FXRS02A= 1,
FXRS03A= 2,
FXRS04A = 3,
FXRS04B = 4,
};
NO_SCU
|
0
|
No SCU
|
FXRS02A
|
1
|
FXRS-02A
|
FXRS03A
|
2
|
FXRS-03A
|
FXRS04A
|
3
|
FXRS-04A
|
FXRS04B
|
4
|
FXRS-04B
|
3.2.19 SELF_DIAGNOSIS_DONE_TYPE
SELF_DIAGNOSIS_DONE_TYPE is the notification that after the self-diagnosis is completed, the self-diagnosis has executed all processes normally.
Syntax
enum SELF_DIAGNOSIS_DONE_TYPE // C++
public enum SELF_DIAGNOSIS_DONE_TYPE // C#
{
SELF_DIAGNOSIS_FINISHIED = 0,
SELF_DIAGNOSIS_FINISHIED_WITH_ERROR = 1,
SELF_DIAGNOSIS_ABORTED = 2
};
SELF_DIAGNOSIS_FINISHED
|
0
|
Every self-diagnosis time is executed.
|
SELF_DIAGNOSIS_FINISHED_WITH_ERROR
|
1
|
One or more self-diagnosis item is not executed.
|
SELF_DIAGNOSIS_ABORTED
|
2
|
Self-diagnosis is aborted.
|
3.2.20 VOLTAGE_STATUS
VOLTAGE_STATUS is the value that represents voltage status of wireless type detector.
Syntax
enum VOLTAGE_STATUS // C++
public enum VOLTAGE_STATUS // C#
{
VOLTAGE_WARNING = 0,
VOLTAGE_POWER_OFF = 1,
VOLTAGE_HIBERNATE = 2
};
VOLTAGE_WARNING
|
0
|
Voltage warning
|
VOLTAGE_POWER OFF
|
1
|
Power down. No more battery
|
VOLTAGE_HIBERNATE
|
2
|
Power down for power saving.
|
3.2.21 TRIGGER
TRIGGER is the value that represents exposure mode.
Syntax
enum TRIGGER // C++
public enum TRIGGER // C#
{
TRIGGER_UNKNOWN = -1,
TRIGGER_DR = 0,
TRIGGER_PASSIVE = 1,
TRIGGER_AED = 2
};
TRIGGER_UNKNOWN
|
-1
|
Unknown trigger
|
TRIGGER_DR
|
0
|
Active line trigger
|
TRIGGER_PASSIVE
|
1
|
Passive line trigger
|
TRIGGER_AED
|
2
|
Non-line trigger
|
Remarks
TRIGGER_PASSIVE is supported FXRD-1717S, FXRD-1717V, FXRD-FW Series .
3.2.22 WIRELESS_SIGNAL_QUALITY
WIRELESS_SIGNAL_QUALITY is the value that represents wireless signal quality of wireless detector.
Syntax
enum WIRELESS_SIGNAL_QUALITY // C++
public enum WIRELESS_SIGNAL_QUALITY // C#
{
WIRELESS_QUALITY_UNKNOWN = 0,
WIRELESS_QUALITY_VERY_BAD = 1,
WIRELESS_QUALITY_BAD = 2,
WIRELESS_QUALITY_NORMAL = 3,
WIRELESS_QUALITY_GOOD = 4,
WIRELESS_QUALITY_VERY_GOOD = 5
};
WIRELESS_QUALITY_UNKNOWN
|
0
|
Unknown wireless signal quality.
|
WIRELESS_QUALITY_VERY_BAD
|
1
|
Wireless signal quality is very bad.
|
WIRELESS_QUALITY_BAD
|
2
|
Wireless signal quality is bad.
|
WIRELESS_QUALITY_NORMAL
|
3
|
Wireless signal quality is normal.
|
WIRELESS_QUALITY_GOOD
|
4
|
Wireless signal quality is good.
|
WIRELESS_QUALITY_VERY_GOOD
|
5
|
Wireless signal quality is very good.
|
Remarks
This information is effective under the wireless communication of FXRD-1417W, FXRD-1717N, FXRD-1012N, VXTD-2532E and VW Series models.
3.2.23 PERFORMANCE_OPTION
PERFORMANCE_OPTION is the value that represents the performance option fow VW series detector.
Syntax
enum PERFORMANCE_OPTION // C++
public enum PERFORMANCE_OPTION // C#
{
PERFORMANCE_OPTION_BATTERY_SAVER = 0,
PERFORMANCE_OPTION_HIGH_PERFORMANCE = 1,
};
PERFORMANCE_OPTION_BATTERY_SAVER
|
|
0
|
Battery saver mode
|
PERFORMANCE_OPTION_HIGH_PERFORMANCE
|
|
1
|
High performance mode
|
3.2.24 AP_COUNTRY
AP_COUNTRY is the value that represents the country for using AP.
Syntax
enum AP_COUNTRY // C++
public enum AP_COUNTRY // C#
{
COUNTRY_EU = 0,
COUNTRY_UNITED_ARAB_EMIRATES,
COUNTRY_ARGENTINA,
COUNTRY_AUSTRIA,
COUNTRY_AUSTRALIA,
COUNTRY_BELGIUM,
COUNTRY_BULGARIA,
COUNTRY_BRAZIL,
COUNTRY_CANADA,
COUNTRY_SWITZERLAND,
COUNTRY_CHILE,
COUNTRY_CHINA,
COUNTRY_COLOMBIA,
COUNTRY_CYPRUS,
COUNTRY_CZECH_REPUBLIC,
COUNTRY_GERMANY,
COUNTRY_DENMARK,
COUNTRY_ALGERIA,
COUNTRY_ECUADOR,
COUNTRY_ESTONIA,
COUNTRY_EGYPT,
COUNTRY_SPAIN,
COUNTRY_FINLAND,
COUNTRY_FRANCE,
COUNTRY_UNITED_KINGDOM,
COUNTRY_GHANA,
COUNTRY_GREECE,
COUNTRY_HONG_KONG,
COUNTRY_CROATIA,
COUNTRY_HUNGARY,
COUNTRY_INDONESIA,
COUNTRY_IRELAND,
COUNTRY_ISRAEL,
COUNTRY_INDIA,
COUNTRY_IRAN,
COUNTRY_ICELAND,
COUNTRY_ITALY,
COUNTRY_JAPAN,
COUNTRY_KENYA,
COUNTRY_SOUTH_KOREA,
COUNTRY_KUWAIT,
COUNTRY_KAZAKHSTAN,
COUNTRY_LEBANON,
COUNTRY_LITHUANIA,
COUNTRY_LUXEMBOURG,
COUNTRY_LATVIA,
COUNTRY_LIBYA,
COUNTRY_MOROCCO,
COUNTRY_MEXICO,
COUNTRY_MALAYSIA,
COUNTRY_NIGERIA,
COUNTRY_NETHERLANDS,
COUNTRY_NORWAY,
COUNTRY_NEW_ZEALAND,
COUNTRY_OMAN,
COUNTRY_PANAMA,
COUNTRY_PERU,
COUNTRY_PHILIPPINES,
COUNTRY_PAKISTAN,
COUNTRY_POLAND,
COUNTRY_PUERTO_RICO,
COUNTRY_PORTUGAL,
COUNTRY_PARAGUAY,
COUNTRY_ROMANIA,
COUNTRY_RUSSIA,
COUNTRY_SAUDI_ARABIA,
COUNTRY_SWEDEN,
COUNTRY_SINGAPORE,
COUNTRY_SLOVAKIA,
COUNTRY_SENEGAL,
COUNTRY_EL_SALVADOR,
COUNTRY_THAILAND,
COUNTRY_TUNISIA,
COUNTRY_TURKEY,
COUNTRY_TAIWAN,
COUNTRY_UKRAINE,
COUNTRY_UNITED_STATES,
COUNTRY_URUGUAY,
COUNTRY_UZBEKISTAN,
COUNTRY_VIETNAM,
COUNTRY_SOUTH_AFRICA,};
3.2.25 SLEEP_MODE
SLEEP_MODE is the value that represents Time for the detector to enter sleep mode when there is no operation
Syntax
enum SLEEP_MODE // C++
public enum SLEEP_MODE // C#
{
SLEEP_MODE_OFF = -1,
SLEEP_MODE_10MIN = 0,
SLEEP_MODE_15MIN = 1,
SLEEP_MODE_20MIN = 2,
SLEEP_MODE_25MIN = 3,
SLEEP_MODE_30MIN = 4,
};
3.2.26 SHUTDOWN_MODE
SHUTDOWN_MODE is the value that represents Time for the detector to shutdown when there is no operation
Syntax
enum SHUTDOWN_MODE // C++
public enum SHUTDOWN_MODE // C#
{
SHUTDOWN_MODE_OFF = -1,
SHUTDOWN_MODE_30MIN = 0,
SHUTDOWN_MODE_60MIN,
SHUTDOWN_MODE_90MIN,
SHUTDOWN_MODE_120MIN,
};
3.2.27 POWER_CONTROL_MODE
POWER_CONTROL_MODE is the value that represents Main power source. When the corresponding source is cut off, the detector is powered off.
Syntax
enum POWER_CONTROL_MODE // C++
public enum POWER_CONTROL_MODE // C#
{
POWER_CONTROL_MODE_BY_BATTERY = 0,
POWER_CONTROL_MODE_BY_SCU,
};
3.2.28 SHOCK_LEVEL
SHOCK_LEVEL is the value that represents an estimate of how much impact the free fall height measured by the accelerometer gave to the detector.
Syntax
enum SHOCK_LEVEL // C++
public enum SHOCK_LEVEL // C#
{
SHOCK_LEVEL_MEASUREMENT_FAILURE = 0,
SHOCK_LEVEL_1 = 1,
SHOCK_LEVEL_2 = 2,
};
Members
SHOCK_LEVEL_MEASUREMENT_FAILURE
|
0
|
Free fall is not measured or
function is not supported in this model.
|
SHOCK_LEVEL_1
|
1
|
Expected to be a relatively modest impact.
|
SHOCK_LEVEL_2
|
2
|
Large enough to damage the detector is detected
|
Remarks
This information confirms the negligence of the customer, only "reference".
3.2.29 WIFI_SIGNAL_LEVELS
WIFI_SIGNAL_LEVELS is the value that represents the WIFI strength display model.
Syntax
enum WIFI_SIGNAL_LEVELS // C++
public enum WIFI_SIGNAL_LEVELS // C#
{
WIFI_SIGNAL_5_LEVELS = 0,
WIFI_SIGNAL_3_LEVELS = 1,
};
Remarks
The default is 5. Only VW Series can change this value.
3.2.30 ACCELERATION_CAL_DIRECTION
ACCELERATION_CAL_DIRECTION is the value that represents a direction of VW Series 6-direction acceleration sensor Calibration.
Syntax
enum WIFI_SIGNAL_LEVELS // C++
public enum WIFI_SIGNAL_LEVELS // C#
{
ACCELERATION_CAL_DIRECTION_0_0_PLUS,
ACCELERATION_CAL_DIRECTION_0_0_MINUS,
ACCELERATION_CAL_DIRECTION_MINUS_0_0,
ACCELERATION_CAL_DIRECTION_0_PLUS_0,
ACCELERATION_CAL_DIRECTION_PLUS_0_0,
ACCELERATION_CAL_DIRECTION_0_MINUS_0,
};
ACCELERATION_CAL_DIRECTION_0_0_PLUS
|
Battery cover faces upward
|
ACCELERATION_CAL_DIRECTION_0_0_MINUS
|
Battery cover faces downward
|
ACCELERATION_CAL_DIRECTION_MINUS_0_0
|
Battery cover faces downward and tether cable is on the right side.
|
ACCELERATION_CAL_DIRECTION_0_PLUS_0
|
Battery cover is placed on the right and tether cable on the top.
|
ACCELERATION_CAL_DIRECTION_PLUS_0_0
|
Battery cover faces upward and tether cable is on the left.
|
ACCELERATION_CAL_DIRECTION_0_MINUS_0
|
Battery cover is on the left and tether cable is at the bottom.
|
Remarks
Only VW Series uses this function.
3.2.31 ACQUISITION_MODE
ACQUISITION_MODE is the value that represents the acquisition method for multi frame supported detector.
Syntax
enum ACQUISITION_MODE : int32_t // C++
public enum ACQUISITION_MODE // C#
{
ACQUISITION_MODE_RADIO = 0,
ACQUISITION_MODE_PF = 1,
ACQUISITION_MODE_CF = 3,
};
Members
ACQUISITION_MODE_RADIO
|
|
0
|
Radiography
|
ACQUISITION_MODE_PF
|
|
1
|
Pulse fluoroscopy
|
ACQUISITION_MODE_CF
|
|
3
|
Continuous fluoroscopy
|
3.2.32 BINNING_MODE
BINNING_MODE is the value that represents the BINNING_MODE for multi frame supported detector.
Syntax
enum BINNING_MODE : int32_t // C++
public enum BINNING_MODE // C#
{
BINNING_MODE_NONE = 0,
BINNING_MODE_2X2 = 1,
BINNING_MODE_1_5X1_5= 2,
};
Members
BINNING_MODE_NONE
|
|
0
|
Normal acquisition (binning by 1x1)
|
BINNING_MODE_2X2
|
|
1
|
binning by 2x2
|
BINNING_MODE_1_5X1_5
|
|
2
|
binning by 1.5x1.5
|
3.2.33 POWER_SOURCE
POWER_SOURCE is the value that represents the detector’s power source.
Syntax
enum POWER_SOURCE // C++
public enum POWER_SOURCE // C#
{
POWER_SOURCE_UNKNOWN = 0,
POWER_SOURCE_TETHER = 1,
POWER_SOURCE_BATTERY = 2,
POWER_SOURCE_USB_POWER_ADAPTOR = 3,
POWER_SOURCE_WIRELESS_POWER = 4,
};
4 Structures
4.1 Structure Classes
4.1.1 DETECTOR_INFO
Structure of detector information data
Syntax (C++)
struct DETECTOR_INFO
Syntax (C#)
class DETECTOR_INFO
DetectorID
|
DETECTOR_ID
|
Identifier for detector
|
DetectorType
|
DETECTOR_TYPE
|
Detector type
|
Found
|
bool
|
Detector is discovered
|
Enable
|
bool
|
Detector is selected to use
|
ModelName
|
wchar_t[21]
|
Detector model name
|
SerialNumber
|
wchar_t[21]
|
Detector serial number
|
Trigger
|
wchar_t[5]
|
Generator trigger
|
MACAddress
|
wchar_t[24]
|
Detector MAC address
|
IPAddress
|
wchar_t[16]
|
Detector IP address
|
SubnetMask
|
wchar_t[16]
|
Detector subnet mask address
|
LastCalibrationTime
|
__int64
|
Last calibrated time
|
OffsetPath
|
wchar_t[256]
|
Offset data file path
|
DefectPath
|
wchar_t[256]
|
Defect data file path
|
GainPath
|
wchar_t[256]
|
Gain data file path
|
ConnectionState
|
CONNECTION_STATE
|
Detector connection state
|
Direction
|
DIRECTION
|
Detector direction
|
EffectiveArea_Top
|
unsigned int
|
Effective area (Top)
|
EffectiveArea_Bottom
|
unsigned int
|
Effective area (Bottom)
|
EffectiveArea_Left
|
unsigned int
|
Effective area (Left)
|
EffectiveArea_Right
|
unsigned int
|
Effective area (Right)
|
PixelPitch
|
double
|
Pixel pitch
|
OffsetRefreshEnable
|
bool
|
Enable offset refresh need notification
|
OffsetRefreshInterval
|
unsigned int
|
Offset refresh check interval. This value is valid when the offset refresh need notification is enabled.
|
OffsetRefreshTemperature
|
unsigned int
|
Offset refresh temperature difference. This value is valid when the offset refresh need notification is enabled.
|
OffsetRefreshShot
|
unsigned int
|
Number of shot for offset refresh.
|
4.1.2 SCU_INFO
Structure of SCU information data
Syntax (C++)
struct SCU_INFO
Syntax (C#)
class SCU_INFO
ScuType
|
SCU_TYPE
|
Type of SCU
|
Found
|
bool
|
SCU is discovered
|
Enable
|
bool
|
SCU is selected to use
|
ModelName
|
wchar_t[21]
|
SCU model name
|
SerialNumber
|
wchar_t[21]
|
SCU serial number
|
MACAddress
|
wchar_t[24]
|
SCU MAC address
|
IPAddress
|
wchar_t[16]
|
SCU IP address
|
SubnetMask
|
wchar_t[16]
|
SCU subnet mask
|
Port
|
uint
|
SCU port number
|
ConnectionState
|
CONNECTION_STATE
|
SCU connection state
|
4.1.3 DEVICE_INFO_LIST
Detector and SCU information structure.
Syntax (C++)
class DEVICE_INFO_LIST
Syntax (C#)
class DEVICE_INFO_LIST
DetectorCount
|
int
|
Number of detector information.
|
DetectorList
|
DETECTOR_INFO*
|
Detector information.
|
SCUCount
|
int
|
Number of SCU information. (v1.0.4.4 or higher)
|
SCUInfo
|
SCU_INFO*
|
SCU information.
|
4.1.4 IMAGE_SIZE_INFO
Syntax (C++)
struct IMAGE_SIZE_INFO
Syntax (C#)
class IMAGE_SIZE_INFO
Width
|
unsigned int
|
Width of image
|
Height
|
unsigned int
|
Height of image
|
EffectiveArea_Top
|
unsigned int
|
Effective area (Top)
|
EffectiveArea_Bottom
|
unsigned int
|
Effective area (Bottom)
|
EffectiveArea_Left
|
unsigned int
|
Effective area (Left)
|
EffectiveArea_Right
|
unsigned int
|
Effective area (Right)
|
PixelPitch
|
float
|
Pixel pitch
|
4.1.5 CALIBRATION_READY_STATE
Calibration in a ready state
Syntax (C++)
struct CALIBRATION_READY_STATE
Syntax (C#)
class CALIBRATION_READY_STATE
OffsetIsReady
|
bool
|
Check offset calibration is ready
|
DefectIsReady
|
bool
|
Check defect calibration is ready
|
GainIsReady
|
bool
|
Check gain calibration is ready
|
4.1.6 OFFSET_CALIBRATION_PARAM
Offset calibration parameter
Syntax (C++)
struct OFFSET_CALIBRATION_PARAM
Syntax (C#)
class OFFSET_CALIBRATION_PARAM
action
|
_ACTION
|
Action status
|
shotCount
|
int
|
Number of shots.
|
START
|
Performs offset calibration.
|
STOP
|
Stops offset calibration.
|
Remarks
Only the FXRDN class models can use the STOP of _ACTION.
4.1.7 DEFECT_UPDATE_PARAM
Syntax (C++)
struct DEFECT_UPDATE_PARAM
Syntax (C#)
class DEFECT_UPDATE_PARAM
action
|
_ACTION
|
Type of action for defect update.
|
numberofshot
|
int
|
Number of shots for defect update.
|
threshhold
|
int
|
Threshold value for defect update.
|
offset
|
int
|
Offset value for defect update.
|
STANDBY
|
SDK is ready to acquire images for defect update.
Acquired images are transmitted via Calibration Step Callback instead of FrameGrabberImageIn Callback.
Images acquired via CalibrationStep can gain avg value and adjust x-ray source deploying such information.
These images are used as a mean to detect any object between a detector and x-ray source before image acquisition for defect update.
|
START
|
SDK starts acquiring images for defect update. Image acquisition is proceeded as many as input shot count or until STOP is called.
Once images are collected as many as the input shot count, defect data is automatically updated. The result of the data creation is transmitted via CalibrationResult callback, and if the data is successfully created, the changes apply to the previous Defect Calibration file.
A type of detectors that independently processes defect correction downloads the data via Defect Download for backup. Once defect is updated, SDK switches to Standby mode.
|
STOP
|
SDK discards all the collected images and a state of Defect Update is cleared.
|
Remarks
numberofshot, threshold, offset value is valid when the action if START.
4.1.8 GAIN_CALIBRATION_PARAM
Gain calibration parameter
Syntax (C++)
struct GAIN_CALIBRATION_PARAM
Syntax (C#)
class GAIN_CALIBRATION_PARAM
action
|
_ACTION
|
Type of action for gain calibration
|
shotCount
|
int
|
Number of shots
|
STANDBY
|
SDK is ready to take a shot of gain calibration.
Images acquired after STANDBY apply to Offset Correction and Defect Correction, but Gain Correction. Acquired Images are transmitted through CalibrationStep Callback instead of FrameGrabberImageIn Callback.
Images acquired via CalibrationStep can gain avg value and adjust x-ray source deploying such information.
These images are used as a mean to detect any object between a detector and x-ray source before image acquisition.
|
ET_GAIN_DATA
|
SDK starts obtaining Gain Calibration data. Image acquisition is proceeded as many as input shot count or until CANCLE or STOP is called.
Once images are collected as many as the input shot count, Gain Calibration data is automatically created. The result of the data creation is transmitted via CalibrationResult callback, and if the data is successfully created, the data should be saved via CalibrationSave.
If CalibrationSave returns RESULT_NOT_SUPPORTED_MODEL or RESULT_NOT_SUPPORTED_VERSION, it indicates that the detector independently created the data. If so, you can download the data created via GainDownload for backup.
Once Gain Calibration is completed, SDK switches to Standby mode.
|
CANCEL
|
SDK discards all the collected images via GET_GAIN_DATA and changes the status to Standby.
|
STOP
|
SDK discards all the collected images, and a state of Gain Calibration is cleared.
|
Remarks
shotCount is valid when the action is GET_GAIN_DATA.
4.1.9 SCU_VERSION_INFO
Syntax (C++)
struct SCU_VERSION_INFO
Syntax (C#)
class SCU_VERSION_INFO
PackageVer
|
wchar_t[32]
|
Package version
|
FrimwareVersion
|
wchar_t[32]
|
SCU firmware version
|
KernelVersion
|
wchar_t[32]
|
SCU kernel version
|
BootloaderVersion
|
wchar_t[32]
|
SCU bootloader version
|
RamdiskVer
|
wchar_t[32]
|
SCU ram disk version
|
RegMAC
|
wchar_t[32]
|
MAC address
|
Remarks
The maximum length of information for each version is 20.
4.1.10 DETECTOR_VERSION_INFO
Detector version information
Syntax (C++)
struct DETECTOR_VERSION_INFO
Syntax (C#)
class DETECTOR_VERSION_INFO
ModelName
|
wchar_t[32]
|
Detector model name
|
SerialNumber
|
wchar_t[32]
|
Detector serial number
|
FirmwareVersion
|
wchar_t[32]
|
Detector firmware version
|
FPGAVersion
|
wchar_t[32]
|
Detector FPGA version
|
BootloaderVersion
|
wchar_t[32]
|
Detector bootloader version
|
KernelVersion
|
wchar_t[32]
|
Detector kernel version
|
GigEVersion
|
wchar_t[32]
|
Detector GigE version
|
4.1.11 NTYPE_VERSION_INFO
Information on N-type detector version
Syntax (C++)
struct NTYPE_VERSION_INFO
Syntax (C#)
class NTYPE_VERSION_INFO
ModelName
|
wchar_t[32]
|
Detector model name
|
SerialNumber
|
wchar_t[32]
|
Detector serial number
|
FirmwareVersion
|
wchar_t[32]
|
Detector firmware version
|
FPGAVersion
|
wchar_t[32]
|
Detector FPGA version
|
BootloaderVersion
|
wchar_t[32]
|
Detector bootloader version
|
KernelVersion
|
wchar_t[32]
|
Detector kernel version
|
PackageVer
|
wchar_t[32]
|
Package version
|
RamdiskVer
|
wchar_t[32]
|
SCU ram disk version
|
RegMAC
|
wchar_t[32]
|
MAC address
|
4.1.12 WIRELESS_DETECTOR_STATUS
Status information of a wireless detector
Syntax (C++)
struct WIRELESS_DETECTOR_STATUS
Syntax (C#)
class WIRELESS_DETECTOR_STATUS
ConnectionInterface
|
CONNECTION_INTERFACE
|
Detector communication mode
|
PowerSource
|
POWER_SOURCE
|
Power supply to the detector
|
WirelessSignalQualityLevel
|
WIRELESS_SIGNAL_QUALITY
|
Level of wireless communication quality (1~5)
|
WirelessSignalQuality
|
short
|
Wireless communication quality (dB)
|
BatteryRemain
|
float
|
Battery remains (%)
|
BatteryVoltage
|
float
|
Battery voltage (V)
|
Temperature
|
float
|
Temperature of a detector
|
Humidity
|
float
|
Humidity of a detector
|
4.1.13 PATIENT_INFO
Syntax (C++)
struct PATIENT_INFO
Syntax (C#)
class PATIENT_INFO
patientName
|
wchar_t[65]
|
Patient name
|
patientId
|
wchar_t[65]
|
Patient ID
|
accNo
|
wchar_t[17]
|
Accession number
|
studyDate
|
wchar_t[9]
|
Study date
|
studyTime
|
wchar_t[7]
|
Study time
|
exposedTime
|
long long
|
Shooting time
|
detectorSerial
|
wchar_t[10]
|
Serial number of a detector which is used for taking images.
|
type
|
Int
|
Information type (for FXRD-1417W)
|
birth
|
wchar_t[18]
|
Patient birth
|
applicationId
|
wchar_t[18]
|
Serial number of viewer which is used for taking images.
|
stepKey
|
Int
|
Viewer step key
|
neutered
|
NEUTERED
|
Sex neutered [for Vet use]
|
speciesDescription
|
wchar_t[65]
|
Species description [for Vet use]
|
breedDescription
|
wchar_t[65]
|
Breed description [for Vet use]
|
responsiblePerson
|
wchar_t[65]
|
Responsible person [for Vet use]
|
4.1.14 STEP_INFO
Syntax (C++)
class STEP_INFO
Syntax (C#)
class STEP_INFO
stepKey
|
long
|
Step key
|
enable
|
int
|
Enable
|
4.1.15 PATIENTSTEP_INFO
Syntax (C++)
class PATIENTSTEP_INFO
Syntax (C#)
class PATIENTSTEP_INFO
name
|
wchar_t[65]
|
Patient name
|
birth
|
wchar_t[9]
|
Patient birth
|
id
|
wchar_t[65]
|
Patient ID
|
accNo
|
wchar_t[17]
|
Accession number
|
studyDate
|
wchar_t[9]
|
Study date
|
studyTime
|
wchar_t[7]
|
Study time
|
scheduledDateTime
|
wchar_t[15]
|
Serial number of a detector which is used for taking images.
|
enable
|
bool
|
Information enable state
|
neutered
|
NEUTERED
|
Sex neutered [for Vet use]
|
speciesDescription
|
wchar_t[65]
|
Species description [for Vet use]
|
breedDescription
|
wchar_t[65]
|
Breed description [for Vet use]
|
responsiblePerson
|
wchar_t[65]
|
Responsible person [for Vet use]
|
nStepInfoCount
|
int
|
Number of step information.
|
aryStepInfo
|
STEP_INFO*
|
Step information struct
|
4.1.16 PATIENT_INFO_LIST
Syntax (C++)
class PATIENT_INFO_LIST
Syntax (C#)
class PATIENT_INFO_LIST
nPatientCount
|
int
|
Number of patient information
|
patientStepInfo
|
PATIENTSTEP_INFO*
|
Patient and Step information
|
4.1.17 BODYPART
Syntax (C++)
class BODYPART
Syntax (C#)
class BODYPART
nProjectionInfoCount
|
int
|
Number of projection information
|
meaning
|
wchar_t[65]
|
Body part meaning
|
aryProjectionInfo
|
_PROJECTION*
|
Projection information struct
|
meaning
|
wchar_t[65]
|
Projection meaning
|
projectionKey
|
long
|
Projection key
|
favorite
|
bool
|
Favorite
|
4.1.18 BODY_PART_LIST
Syntax (C++)
class BODY_PART_LIST
Syntax (C#)
class BODY_PART_LIST
viewerSerial
|
wchar_t[9]
|
Viewer serial
|
nBodypartCount
|
int
|
Number of body parts
|
aryBodypartInfo
|
BODYPART*
|
Body part information struct
|
4.1.19 NETWORK_CONFIGURATION
Network configuration information
Syntax (C++)
struct NETWORK_CONFIGURATION
Syntax (C#)
class NETWORK_CONFIGURATION
IPAddress
|
wchar_t[32]
|
IP address
|
SubnetMaskAddress
|
wchar_t[32]
|
Subnet mask address
|
GatewayAddress
|
wchar_t[32]
|
Gateway address
|
4.1.20 WIRELESS_NETWORK_CONFIGURATION
Information on wireless network configuration
Syntax (C++)
struct WIRELESS_NETWORK_CONFIGURATION
Syntax (C#)
class WIRELESS_NETWORK_CONFIGURATION
SSID
|
wchar_t[32]
|
Wireless SSID
|
PassKey
|
wchar_t[64]
|
Pass key
|
WirelessOnlyMode
|
bool
|
Check wireless only mode
|
APScanEnabled
|
bool
|
Check AP scan enable
|
eSleepMode
|
SLEEP_MODE
|
Time for the detector to enter sleep mode when there is no operation
|
eShutdownMode
|
SHUTDOWN_MODE
|
Time for the detector to shutdown when there is no operation
|
ePowerControlMode
|
POWER_CONTROL_MODE
|
Main power source
|
4.1.21 WIRELESS_AP_CONFIGURATION
Information on wireless access Point configuration
Syntax (C++)
struct WIRELESS_AP_CONFIGURATION
Syntax (C#)
class WIRELESS_AP_CONFIGURATION
Enable
|
bool
|
Check AP enable
|
Frequency
|
_AP_FREQUENCY
|
Frequency of AP. 2.4GHz or 5GHz
|
Country
|
AP_COUNTRY
|
Country
|
Bandwidth
|
_AP_BAND
|
Bandwidth. HT 20, HT 40+ or HT 40-.
|
Channel
|
int
|
AP channel
|
SSID
|
wchar_t[32]
|
SSID
|
PassKey
|
wchar_t[64]
|
pass key
|
AP_FREQ_2_4
|
0
|
AP_FREQ_5
|
1
|
AP_BAND_20
|
0
|
AP_BAND_40_PLUS
|
1
|
AP_BAND_40_MINUS
|
2
|
4.1.22 SCU_TRIGGER_CONFIGURATION
Information on SCU trigger configuration
Syntax (C++)
struct SCU_TRIGGER_CONFIGURATION
Syntax (C#)
class SCU_TRIGGER_CONFIGURATION
Method
|
_METHOD
|
Packet or Line
|
Polarity
|
_POLARLITY
|
Auto, Active high, Active low
|
POLARLITY_AUTO
|
0
|
POLARLITY_ACTIVE_HIGH
|
1
|
POLARLITY_ACTIVE_LOW
|
2
|
Remarks
When the line trigger method is selected, the trigger signal transmits according to the trigger port configured from VIVIX Setup or ChameleonSetup. The image cannot be taken if the trigger port is set incorrectly.
4.1.23 STORED_IMAGE_INFO
Information on stored patient image
Syntax (C++)
class STORED_IMAGE_INFO
Syntax (C#)
class STORED_IMAGE_INFO
name
|
wchar_t[65]
|
Patient name
|
id
|
wchar_t[65]
|
Patient ID
|
accNo
|
wchar_t[17]
|
Patient accession number
|
studyDate
|
wchar_t[9]
|
Patient study date
|
studyTime
|
wchar_t[7]
|
Patient stud time
|
viewerserial
|
wchar_t[9]
|
Viewer serial
|
imageID
|
long long
|
Image ID
|
timestamp
|
unsigned long
|
Image timestamp
|
imageTime
|
wchar_t[24]
|
Image time
|
serialno
|
wchar_t[32]
|
serial number
|
acqMode
|
ACQUISITION_MODE
|
acquisition mode.
|
binningMode
|
BINNING_MODE
|
binning mode.
|
aoiOffsetX
|
int
|
Starting X position of the AOI from the binning applied Image.
|
aoiOffsetY
|
int
|
Starting Y position of the AOI from the binning applied Image.
|
captureID
|
unsigned int
|
Image capture ID
|
frameIndex
|
unsigned int
|
Image frame index
|
totalFrameCount
|
unsigned int
|
Image total frame count
|
reserve
|
wchar_t[51]
|
reserve
|
type
|
Int
|
type
|
birth
|
wchar_t[18]
|
Patient birth
|
stepKey
|
long
|
Step key
|
neutered
|
NEUTERED
|
Sex neutered [for Vet use]
|
speciesDescription
|
wchar_t[65]
|
Species description [for Vet use]
|
breedDescription
|
wchar_t[65]
|
Breed description [for Vet use]
|
responsiblePerson
|
wchar_t[65]
|
Responsible person [for Vet use]
|
4.1.24 STORED_IMAGE_LIST
Syntax (C++)
struct STORED_IMAGE_LIST
Syntax (C#)
class STORED_IMAGE_LIST
nCount
|
int
|
Number of images
|
aryInfoList
|
STORED_IMAGE_INFO*
|
List of stored image information.
|
4.1.25 FTM_IMAGE_INFO
Information of the image stored in FXRD-1012N and VXTD-2532E in FTM mode.
Syntax (C++)
class FTM_IMAGE_INFO
Syntax (C#)
class FTM_IMAGE_INFO
ftmID
|
unsigned short
|
FTM ID
|
imageID
|
unsigned long
|
Image ID
|
timestamp
|
unsigned long
|
Time
|
imageTime
|
wchar_t[24]
|
Image time
|
4.1.26 FTM_IMAGE_LIST
A list of N-type detector backup image
Syntax (C++)
class FTM_IMAGE_LIST
Syntax (C#)
class FTM_IMAGE_LIST
nCount
|
int
|
Number of images
|
pInfoList
|
FTM_IMAGE_INFO*
|
List of FTM image information
|
4.1.27 IMAGE_INFO
Syntax (C++)
class IMAGE_INFO
Syntax (C#)
class IMAGE_INFO
Image
|
unsigned short*
|
Image from detector
|
DetectorID
|
DETECTOR_ID
|
Detector identifier
|
Direction
|
DIRECTION
|
Detector direction
|
UsingBit
|
unsigned int
|
Using bit of image
|
Width
|
unsigned int
|
Width of image
|
Height
|
unsigned int
|
Height of image
|
EffectiveArea_Top
|
unsigned int
|
Effective area (Top)
|
EffectiveArea_Bottom
|
unsigned int
|
Effective area (Bottom)
|
EffectiveArea_Left
|
unsigned int
|
Effective area (Left)
|
EffectiveArea_Right
|
unsigned int
|
Effective area (Right)
|
Channels
|
unsigned int
|
Channel
|
panelPositionX
|
int
|
X-Axis of panel position
|
panelPositionY
|
int
|
Y-Axis of panel position
|
panelPositionZ
|
int
|
Z-Axis of panel position
|
panelPitch
|
float
|
Pitch of panel position
|
panelRoll
|
float
|
Roll of panel position
|
imageID
|
unsigned long
|
Image ID
|
FTMID
|
unsigned short
|
FTM image ID
|
Remarks
imageID is valid only in FXRDW and FXRDN model.
FTMID is valid only in FXRDN model with FTM mode.
4.1.28 IMAGE_INFO_EX
An extended version of IMAGE_INFO.
Syntax (C++)
class IMAGE_INFO_EX : public IMAGE_INFO
Syntax (C#)
class IMAGE_INFO : public IMAGE_INFO
Members
Image
|
unsigned short*
|
Image from detector
|
DetectorID
|
DETECTOR_ID
|
Detector identifier
|
Direction
|
DIRECTION
|
Detector direction
|
UsingBit
|
unsigned int
|
Using bit of image
|
Width
|
unsigned int
|
Width of image
|
Height
|
unsigned int
|
Height of image
|
EffectiveArea_Top
|
unsigned int
|
Effective area (Top)
|
EffectiveArea_Bottom
|
unsigned int
|
Effective area (Bottom)
|
EffectiveArea_Left
|
unsigned int
|
Effective area (Left)
|
EffectiveArea_Right
|
unsigned int
|
Effective area (Right)
|
Channels
|
unsigned int
|
Channel
|
panelPositionX
|
int
|
X-Axis of panel position
|
panelPositionY
|
int
|
Y-Axis of panel position
|
panelPositionZ
|
int
|
Z-Axis of panel position
|
panelPitch
|
float
|
Pitch of panel position
|
panelRoll
|
float
|
Roll of panel position
|
imageID
|
unsigned long
|
Image ID
|
FTMID
|
unsigned short
|
FTM image ID
|
partialMode
|
PARTIAL_MODE
|
Partial Mode
|
acqMode
|
ACQUISITION_MODE
|
Acquisition mode
|
binningMode
|
BINNING_MODE
|
Binning mode
|
aoiOffsetX
|
int
|
Starting X position of the AOI from the binning applied Image.
|
aoiOffsetY
|
int
|
Starting Y position of the AOI from the binning applied Image.
|
captureID
|
unsigned int
|
Image capture ID
|
frameIndex
|
unsigned int
|
Image frame index
|
totalFrameCount
|
unsigned int
|
Image total frame count
|
Remarks
imageID is valid only in FXRDW and FXRDN model.
FTMID is valid only in FXRDN model with FTM mode.
captureID, frameIndex, totalFrameCount is valid only in FXRDN model using CF/PF mode.
4.1.29 IMAGE_CONFIGURATION
Syntax (C++)
struct IMAGE_CONFIGURATION
Syntax (C#)
class IMAGE_CONFIGURATION
ImageTimeOut
|
int
|
Image transmission timeout (sec)
|
PreviewEnable
|
bool
|
Check preview enable. N-Model Only
|
FastTactModeEnable
|
bool
|
Use FTM function
|
4.1.30 SCU_APINFO_PARAM
SCU AP information parameter
Syntax (C++)
struct SCU_APINFO_PARAM
Syntax (C#)
class SCU_APINFO_PARAM
apOnOff
|
bool
|
AP function enable or disable
|
inActiveTime
|
int
|
Time during which transmission and reception are not processed
|
txBitrate
|
int
|
Transfer rate of transmission
|
txBytes
|
int
|
Total bytes transmitted through Ethernet interface
|
txMCS
|
int
|
Transmission MCS index
|
txPackets
|
int
|
Number of transferred packet
|
txRetries
|
int
|
Number of retransmission
|
signalAvg
|
int
|
The average signal strength up to now
|
signal
|
int
|
Current signal strength
|
rxPackets
|
int
|
Total packets received through Ethernet interface
|
rxMCS
|
int
|
Receiving MSC index
|
rxBytes
|
int
|
Total bytes received through Ethernet interface
|
rxBitrate
|
int
|
Transfer rate of reception
|
Remarks
The effective value is sent only when the state pf SCU AP function is ‘enable’.
4.1.31 LOG_DATA
Syntax (C++)
struct LOG_DATA
Syntax (C#)
class LOG_DATA
TimeStamp
|
time_t
|
Time
|
FileName
|
wchar_t[50]
|
Log file name
|
LogSize
|
__int64
|
Log file size
|
4.1.32 LOG_LIST
Syntax (C++)
class LOG_LIST
Syntax (C#)
class LOG_LIST
LogCount
|
int
|
Number of the log data
|
LogList
|
LOG_DATA *
|
Log data list
|
startDate
|
time_t
|
Start date
|
endDate
|
time_t
|
End date
|
4.1.33 OSF_PROFILE_LIST
A list of OSF profile data
Syntax (C++)
class OSF_PROFILE_LIST
Syntax (C#)
class OSF_PROFILE_LIST
OSFProfileCount
|
int
|
Number of the OSF profile data
|
profileItems
|
int *
|
List of exposure time of OSF profile data
|
4.1.34 DIAGNOSABLE_ITEM_INFO_LIST
The information list of self-diagnosable items
Syntax (C++)
struct DIGNOSABLE_ITEM_INFO_LIST
Syntax (C#)
class DIGNOSABLE_ITEM_INFO_LIST
ret
|
RET
|
Return value
|
numOfitems
|
unsigned short
|
Number of items
|
items
|
_DIAGNOSABLE_ITEM_INFO *
|
List of diagnosiable item info.
|
RET_START
|
1
|
RET_ERR_ACQ
|
2
|
RET_ERR_IMP
|
3
|
RET_ERR_ERR
|
4
|
id
|
wchar_t*
|
All IDs of the self-diagnosis items.
|
categoryName
|
wchar_t*
|
The category name of self-diagnosis items.
|
categoryId
|
int
|
The category ID of self-diagnosis items.
|
itemName
|
wchar_t*
|
The name of self-diagnosis items.
|
itemId
|
int
|
The ID of self-diagnosis items.
|
type
|
wchar_t*
|
|
timeout
|
wchar_t*
|
The necessary time for self-diagnosis. (msec)
|
Remarks
id consists of categoryId and itemId. (“categoryId” + “itemId”)
4.1.35 SELF_DIAGNOSIS_RESULT
Information and diagnosis result of each item.
Syntax (C++)
struct SELF_DIAGNOSIS_RESULT
Syntax (C#)
class SELF_DIAGNOSIS_RESULT
totalStep
|
int
|
The number of all items diagnosable.
|
step
|
int
|
Current step.
|
id
|
wchar_t*
|
Identifier of item.
|
result
|
_RESULT
|
Self-diagnosis result.
|
category
|
wchar_t*
|
Category of item.
|
name
|
wchar_t*
|
Name of item.
|
numOfReport
|
unsigned short
|
The number of more information.
|
reports
|
wchar_t*
|
More information.
|
RESULT_ERROR
|
0
|
RESULT_WARNING
|
1
|
RESULT_PASS
|
2
|
RESULT_INFORMATION
|
3
|
RESULT_DIAGNOSIS_FAILED_TIMEOUT
|
4
|
RESULT_DIAGNOSIS_FAILED_DETECTOR_DISCONNECTED
|
5
|
Remarks
SELF_DIAGNOSIS_RESULT is result of each items and progress of self-diagnosis.
The [totalStep] is the number of all items diagnosable. The [totalStep] is 15(SCU not use) or 17(SCU use). The [step] is current step. Each item of self-diagnosis has the [id].
The detailed information of [result] is described in 4.1.21 SELF_DIAGNOSIS_RESULT._RESULT.
The [category] is category of item. The [name] is name of item.
The [reports] is more information and the [numOfReport] is the number of more information about the result.
4.1.36 SELF_DIAGNOSIS_REPORT
Information and diagnosis result of all item.
Syntax (C++)
struct SELF_DIAGNOSIS_REPORT
Syntax (C#)
class SELF_DIAGNOSIS_REPORT
finalResult
|
_FINAL_RESULT
|
Final result
|
numOfResult
|
int
|
The number of result about all items.
|
reports
|
SELF_DIAGNOSIS_RESULT*
|
The result about all items.
|
RESULT_ERROR
|
0
|
RESULT_WARNING
|
1
|
RESULT_PASS
|
2
|
RESULT_DIAGNOSIS_FAILED_ABORT
|
3
|
RESULT_DIAGNOSIS_FAILED_TIMEOUT
|
4
|
RESULT_DIAGNOSIS_FAILED_DETECTOR_DISCONNECTED
|
5
|
RESULT_DIAGNOSIS_FAILED_ACQUISITION_PROCEDURE
|
6
|
RESULT_DIAGNOSIS_FAILED_IMPORTING_PROCEDURE
|
7
|
RESULT_DIAGNOSIS_FAILED_UNKNOWN_ERROR
|
8
|
Remarks
When all item of self-diagnosis is finished, this class has information and diagnosis result of all items.
The [numOfResult] is the number of result about all items.
The [reports] has the information and result of each item.
4.1.37 ACC_CAL_BY_6PLANE_RESULT
The calibration result of the 6-direction acceleration sensor in the VW series
Syntax (C++)
union ACC_CAL_BY_6PLANE_RESULT
Syntax (C#)
class ACC_CAL_BY_6PLANE_RESULT
Members
done1 ~ 6
|
unsigned char
|
Each number from 1 to 6 means an enum of ACCELERATION_CAL_DIRECTION. Check whether calibration of the corresponding direction is completed.
|
error1 ~ 6
|
unsigned char
|
Each number from 1 to 6 means an enum of ACCELERATION_CAL_DIRECTION. Check that there is no problem with the calibration of the direction. If the detector is not positioned in the direction that matches the enum, it will be in an error state.
|
notUsed1~4
|
unsigned char
|
reserved
|
5 CVIVIXSDK (C++) / VivixNet (C#)
5.1 Member functions
5.1.1 Initialize
Syntax
RESULT Initialize (void);
RESULT_SUCCESS
|
Succeeded to initialize VIVIX SDK.
|
RESULT_SDK_IS_ALREADY_IN_USE
|
Failed to initialize VIVIX SDK. [SDK is already in use]
|
RESULT_ERROR
|
Failed to initialize VIVIX SDK.
|
Remarks
When VIVIX SDK has been already initialized, this function returns RESULT_SDK_IS_ALREADY_IN_USE.
When refreshing device information was failed, this function returns RESULT_ERROR.
LogPathSet and LogPathGet can be operated only without the Initialize function call, but at least one function call needs before using other functions of VIVIX SDK.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
nResult = SDK.Initialize();
if(nResult == Vieworks::vivix::RESULT_SUCCESS)
{
// Succeeded to initialize SDK.
}
else
{
// Failed to initialize SDK.
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
nResult = pSDK.Initialize();
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to initialize SDK.
}
else
{
// Failed to initialize SDK.
}
5.1.2 Destruct
Syntax
RESULT Destruct( void )
RESULT_SUCCESS
|
Succeeded to destruct VIVIX SDK.
|
RESULT_SDK_IS_NOT_INITIALIZED
|
The SDK has not been initialized.
|
RESULT_ERROR
|
Failed to destruct VIVIX SDK.
|
Remarks
When VIVIX SDK has not been finalizing, this function returns RESULT_ERROR.
After calling this function, all instances sent through GetDetector and GetScu functions are not effective.
All connections become inactive if this function is called while the devices are connected.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
nResult = SDK.Destruct();
if(nResult == Vieworks::vivix::RESULT_SUCCESS)
{
// Succeeded to destruct SDK.
}
else
{
// Failed to destruct SDK.
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
nResult = pSDK.Destruct();
if (nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to destruct SDK.
}
else
{
// Failed to destruct SDK.
}
5.1.3 GetDetector
Acquires the CDetector instead of the configured detector ID
Syntax (C++)
RESULT GetDetector (
_In- DETECTOR_ID id,
_Out_ detector::CDetector** detectorObj
);
Syntax (C#)
RESULT GetDetector (
int id,
ref Detector detectorObj
);
Parameters
Id [in]
The detector ID to be acquired.
detectorObj [out]
CDetector instance generated in the ID.
RESULT_SUCCESS
|
Success to get the detector instance.
|
RESULT_SDK_IS_NOT_INITIALIZED
|
SDK is not initialized to use.
|
RESULT_INVALID_PARAMETER
|
Parameter value is invalid
|
RESULT_INVALID_MODEL
|
The model is not matched with file information.
|
RESULT_DETECTOR_NO_INFORMATION
|
There is no detector information.
|
RESULT_ERROR
|
Fail to get the detector instance.
|
Remarks
RESULT_ERROR returns if no detector instance exists in the configured ID.
The detector instance which was sent to detectorObj argument can specify the detector type through the DetectorTypeGet() function. The detector instance is casted to the relevant detector class by using this information.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
// SDK Initialize finished.
Vieworks::vivix::detector::CDetector* pDetector = NULL;
int iDetectorCount = -1;
nResult = SDK.DetectorCountGet(&iDetectorCount);
if(nResult == Vieworks::vivix::RESULT_SUCCESS)
{
// Succeeded to get detector count.
if(iDetectorCount > 0)
{
nResult = SDK.GetDetector(0, &pDetector);
if(nResult == Vieworks::vivix::RESULT_SUCCESS)
{
// Succeeded to get detector instance.
}
else
{
// Failed to get detector instance.
}
}
}
else
{
// Failed to get detector count.
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
nResult = pSDK.GetDetector(0, ref pDetector);
if (nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get detector instance.
}
else
{
// Failed to get detector instance.
}
5.1.4 GetSCU
Acquires the CSCU instead of the configured detector ID
Syntax (C++)
RESULT GetSCU (
_Out_ scu::CSCU** SCUObj
);
Syntax (C#)
RESULT GetSCU (
ref CSCU SCUObj
);
Parameters
SCUObj [out]
CDetector instance generated in ID.
RESULT_SUCCESS
|
Success to get the SCU instance.
|
RESULT_SDK_IS_NOT_INITIALIZED
|
SDK is not initialized to use.
|
RESULT_INVALID_PARAMETER
|
Parameter value is invalid
|
RESULT_INVALID_MODEL
|
The model is not matched with file information.
|
RESULT_SCU_NO_INFORMATION
|
There is no SCU information.
|
RESULT_ERROR
|
Fail to get the SCU instance.
|
Remarks
RESULT_ERROR returns if no SCU is registered.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
// SDK Initialize finished.
Vieworks::vivix::scu::CSCU* pSCU = NULL;
nResult = SDK.GetSCU(&pSCU);
if(nResult == Vieworks::vivix::RESULT_SUCCESS)
{
// Succeeded to get SCU instance.
}
else
{
// Failed to get SCU instance.
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.scu.SCU pSCU = null;
nResult = pSDK.GetSCU(ref pSCU);
if (nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get SCU instance.
}
else
{
// Failed to get SCU instance.
}
5.1.5 GetNewDeviceInfo
Discoveres newly-connected detector and SCU.
Syntax (C++)
RESULT GetNewDeviceInfo (
_Out_ DEVICE_INFO_LIST deviceList
);
Syntax (C#)
RESULT GetNewDeviceInfo (
out DEVICE_INFO_LIST deviceList
);
Parameters
deviceList [out]
Detector information and SCU information
RESULT_SUCCESS
|
Succeeded to get new device information.
|
RESULT_SCU_ALREADY_CONNECTED
|
Already SCU is connected
|
RESULT_DETECTOR_ALREADY_CONNECTED
|
Already Detector is connected
|
RESULT_INVALID_PARAMETER
|
[deviceList] is NULL.
|
RESULT_ERROR
|
Failed to get new device information.
|
Remarks
The object of DEVICE_INFO sent to deviceList is used for registering devices only. The device registered from the RegisterDetector function can be used by generating a new instance through GetDetector or GetSCU.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::DEVICE_INFO_LIST DeviceInfoList;
nResult = SDK.GetNewDeviceInfo(&DeviceInfoList);
if(nResult == Vieworks::vivix::RESULT_SUCCESS)
{
// Succeeded to get new device information.
}
else
{
// Failed to get new device information.
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.DEVICE_INFO_LIST DeviceInfoList;
nResult = pSDK.GetNewDeviceInfo(out DeviceInfoList);
if (nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get device information list.
}
else
{
// Failed to get device information list.
}
5.1.6 RegisterDetector
Registers a newly-installed detector.
Syntax (C++)
RESULT RegisterDetector (
_In_ DETECTOR_INFO detectorInfo,
_In_ int id
);
Syntax (C#)
RESULT RegisterDetector (
DETECTOR_INFO detectorInfo,
int id
);
Parameters
detectorInfo [in]
Discovered detector information
Id [in]
Identifier for a new installed detector
RESULT_SUCCESS
|
Succeeded to register new detector information.
|
RESULT_INVALID_PARAMETER
|
[detectorInfo] is NULL.
[id] is invalid.
|
RESULT_ALREADY_REGISTERED_DEVICE
|
Already registered detector.
|
RESULT_DETECTOR_ID_ALREADY_IN_USE
|
Already registered detector identifier.
|
Remarks
After registering the detector, the RefreshDeviceInformation() function must be called before use.
After registering DETECTOR_INFO (acquired through GetNewDeviceInfo) to SDK, create an instance through GetDetector to use the registered device.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::DEVICE_INFO_LIST DeviceInfoList;
nResult = SDK.GetNewDeviceInfo(&DeviceInfoList);
if(nResult == Vieworks::vivix::RESULT_SUCCESS)
{
// Succeeded to get new device information.
for(int i = 0; i < DeviceInfoList.DetectorCount; i++)
{
nResult = SDK.RegisterDetector(DeviceInfoList.DetectorList[i], i);
if(nResult == Vieworks::vivix::RESULT_SUCCESS)
{
// Succeeded to register detector;
}
else
{
// Failed to register detector;
}
}
}
else
{
// Failed to get new device information.
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.DEVICE_INFO_LIST DeviceInfoList;
nResult = pSDK.GetNewDeviceInfo(out DeviceInfoList);
if (nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get new device information list.
for (int i = 0; i < DeviceInfoList.DetectorCount; i++)
{
nResult = pSDK.RegisterDetector(DeviceInfoList.DetectorList[i], i);
if (nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to register detector.
}
else
{
// Failed to register detector.
}
}
}
else
{
// Failed to get new device information list.
}
5.1.7 RegisterSCU
Registers a newly-installed SCU
Syntax (C++)
RESULT RegisterSCU (
_In_ SCU_INFO scuInfo
);
Syntax (C#)
RESULT RegisterSCU (
SCU_INFO scuInfo
);
Parameters
scuInfo [in]
Discovered SCU information
RESULT_SUCCESS
|
Succeeded to register new SCU information.
|
RESULT_INVALID_PARAMETER
|
[scuInfo] is NULL.
|
RESULT_ALREADY_REGISTERED_DEVICE
|
Already registered SCU.
|
Remarks
After registering the SCU, the RefreshDeviceInformation() function must be called before use.
After registering SCU_INFO (required through GetNewDeviceInfo) to SDK, create an instance through GetSCU to use the device.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::DEVICE_INFO_LIST DeviceInfoList;
nResult = SDK.GetNewDeviceInfo(&DeviceInfoList);
if(nResult == Vieworks::vivix::RESULT_SUCCESS)
{
// Succeeded to get new device information.
if(DeviceInfoList.SCUInfo != NULL)
{
nResult = SDK.RegisterSCU(DeviceInfoList.SCUInfo);
if(nResult == Vieworks::vivix::RESULT_SUCCESS)
{
// Succeeded to register SCU;
}
else
{
// Failed to register SCU;
}
}
}
else
{
// Failed to get new device information.
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.DEVICE_INFO_LIST DeviceInfoList;
nResult = pSDK.GetNewDeviceInfo(out DeviceInfoList);
if (nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get new device information list.
if(DeviceInfoList.SCUInfo != null)
{
nResult = pSDK.RegisterSCU(DeviceInfoList.SCUInfo);
if (nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to register SCU.
}
else
{
// Failed to register SCU.
}
}
}
else
{
// Failed to get new device information list.
}
5.1.8 UnregisterDetector
Removes of the registered detector information
Syntax (C++)
RESULT UnregisterDetector (
_In_ int id
);
Syntax (C#)
RESULT UnregisterDetector (
int id
);
Parameters
id [in]
Detector ID to unregistering.
RESULT_SUCCESS
|
Succeeded to set notify receiver.
|
RESULT_SDK_IS_NOT_INITIALIZED
|
SDK is not initialized
|
RESULT_DETECTOR_NO_INFORMATION
|
[id] is invalid
|
RESULT_ERROR
|
Failed to unregister detector information.
|
Remarks
The instance of the unregistered device is not effective any more.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::DEVICE_INFO_LIST DeviceInfoList;
int iDetectorCount = -1;
nResult = SDK.DetectorCountGet(&iDetectorCount);
if(nResult == Vieworks::vivix::RESULT_SUCCESS)
{
// Succeeded to get detector count
if(iDetectorCount > 0)
{
nResult = SDK.UnregisterDetector(0);
if(nResult == Vieworks::vivix::RESULT_SUCCESS)
{
// Succeeded to unregister detector;
}
else
{
// Failed to unregister detector;
}
}
}
else
{
// Failed to get detector count
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
int iDetectorCount = -1;
nResult = pSDK.DetectorCountGet(out iDetectorCount);
if (nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get detector count.
if(iDetectorCount > 0)
{
nResult = pSDK.UnregisterDetector(0);
if (nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to unregister detector.
}
else
{
// Failed to unregister detector.
}
}
}
else
{
// Failed to get detector instance.
}
5.1.9 UnregisterSCU
Removes the registered SCU information
Syntax (C++)
RESULT UnregisterSCU ( void );
Syntax (C#)
RESULT UnregisterSCU ( void );
RESULT_SUCCESS
|
Succeeded to unregister SCU information.
|
RESULT_SDK_IS_NOT_INITIALIZED
|
SDK is not initialized
|
RESULT_SCU_NO_INFORMATION
|
Not registered SCU information.
|
Remarks
The instance of the unregistered device is not effective any more.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::DEVICE_INFO_LIST DeviceInfoList;
nResult = SDK.UnregisterSCU();
if(nResult == Vieworks::vivix::RESULT_SUCCESS)
{
// Succeeded to unregister SCU.
}
else if(nResult == Vieworks::vivix::RESULT_SCU_NO_INFORMATION)
{
// There is no registered SCU.
}
else
{
// Failed to unregister SCU.
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
nResult = pSDK.UnregisterSCU();
if (nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to unregister SCU.
}
else
{
// Failed to unregister SCU.
}
5.1.10 ChangeDetectorID
Changes or exchanges the registered detector ID
Syntax (C++)
RESULT ChangeDetectorID (
_In_ DETECTOR_ID from,
_In_ DETECTOR_ID to,
_In_ bool swap
);
Syntax (C#)
RESULT RegisterSCU (
int from,
int to,
bool swap
);
Parameters
from [in]
Source detector ID
to [in]
Target detector ID
swap [in]
Exchanges the Detector ID
RESULT_SUCCESS
|
Succeeded to register new SCU information.
|
RESULT_SDK_IS_NOT_INITIALIZED
|
The SDK has not been initialized.
|
RESULT_INVALID_PARAMETER
|
Detector ID is out of range.
|
RESULT_DETECTOR_NO_INFORMATION
|
Not registered detector ID.
|
RESULT_DETECTOR_ID_ALREADY_IN_USE
|
Detector ID is already in use.
|
Remarks
To change the detector ID, target detector ID must be not assigned.
And to exchange the detector ID, both detector ID must be assigned.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
nResult = SDK.ChangeDetectorID(0, 1, false);
if(nResult == Vieworks::vivix::RESULT_SUCCESS)
{
// Succeeded to change the detector ID 0 to 1.
}
else
{
// Failed to change the detector ID.
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
nResult = pSDK.ChangeDetectorID(0, 1, false);
if (nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to change the detector ID 0 to 1.
}
else
{
// Failed to change the detector ID.
}
5.1.11 RefreshDeviceInformation
Refreshes the device information.
Syntax (C++)
RESULT RefreshDeviceInformation ( void );
Syntax (C#)
RESULT RefreshDeviceInformation ( void );
RESULT_SUCCESS
|
Succeeded to refresh device information.
|
RESULT_DETECTOR_ALREADY_CONNECTED
|
One or more detector is connected.
|
RESULT_SCU_ALREADY_CONNECTED
|
SCU is connected.
|
Remarks
If the connecting status of equipment is changed after running application, call this function to recollect and renew the information of equipment installed to the system. Otherwise, the changing information of the equipment cannot be renewed properly.
After registering the detector or SCU, call this function first before using the device.
5.1.12 DetectorCountGet
Gets the count of detector information
Syntax
RESULT DetectorCountGet (
_Out_ int count
);
Syntax
RESULT DetectorCountGet (
out int count
);
Parameters
count [out]
Number of detector information.
RESULT_SUCCESS
|
Succeeded to get detector information count.
|
RESULT_SDK_IS_NOT_INITIALIZED
|
SDK is not initialized
|
RESULT_INVALID_PARAMETER
|
[count] is null.
|
Remarks
Maximum number of detector is 5. This function returns number of registered detector information.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::DEVICE_INFO_LIST DeviceInfoList;
int iDetectorCount = -1;
nResult = SDK.DetectorCountGet(&iDetectorCount);
if(nResult == Vieworks::vivix::RESULT_SUCCESS)
{
// Succeeded to get detector count;
}
else
{
// Failed to get detector count;
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
int iDetectorCount = -1;
nResult = pSDK.DetectorCountGet(out iDetectorCount);
if (nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get detector count.
}
else
{
// Failed to get detector count.
}
5.1.13 DetectorInfoGet
Gets the registered CDetector object by detector ID
Syntax (C++)
RESULT DetectorInfoGet (
_In_ int id,
_Out DETECTOR_INFO info
);
Syntax (C#)
RESULT DetectorInfoGet (
int id,
out DETECTOR_INFO info
);
Parameters
id [in]
Detector identifier
info [out]
Detector information structure
RESULT_SUCCESS
|
Succeeded to get detector information.
|
RESULT_SDK_IS_NOT_INITIALIZED
|
SDK is not initialized
|
RESULT_INVALID_PARAMETER
|
Detector ID is out of range.
[info] is null.
|
RESULT_DETECTOR_NO_INFORMATION
|
Not registered detector ID.
|
RESULT_ERROR
|
Failed to get detector information.
|
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::DETECTOR_INFO* DetectorInfo;
nResult = SDK.DetectorInfoGet(0, &DetectorInfo);
if(nResult == Vieworks::vivix::RESULT_SUCCESS)
{
// Succeeded to get detector information
}
else
{
// Failed to get detector information
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.DETECTOR_INFO DetectorInfo;
nResult = pSDK.DetectorInfoGet(0,out DetectorInfo);
if (nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get detector information.
}
else
{
// Failed to get detector information.
}
5.1.14 SCUInfoGet
Gets SCU information in the form of const structure pointer
Syntax (C++)
RESULT SCUInfoGet (
_Out_ SCU_INFO info
);
Syntax (C#)
RESULT SCUInfoGet (
out SCU_INFO info
);
Parameters
info [out]
SCU information structure
RESULT_SUCCESS
|
Succeeded to get SCU information.
|
RESULT_SDK_IS_NOT_INITIALIZED
|
SDK is not initialized.
|
RESULT_INVALID_PARAMETER
|
[info] is null.
|
RESULT_ERROR
|
Failed to get SCU information.
|
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::SCU_INFO* SCUInfo;
nResult = SDK.SCUInfoGet(&SCUInfo);
if(nResult == Vieworks::vivix::RESULT_SUCCESS)
{
// Succeeded to get SCU information
}
else
{
// Failed to get SCU information
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.SCU_INFO SCUInfo;
nResult = pSDK.SCUInfoGet(out SCUInfo);
if (nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get SCU information.
}
else
{
// Failed to get SCU information.
}
5.1.15 TriggerPortSet
Sets detector trigger port
Syntax (C++)
RESULT TriggerPortSet (
_In_ int id,
_In_ TRIGGER_PORT triggerPort
);
Syntax (C#)
RESULT TriggerPortSet (
int id,
TRIGGER_PORT triggerPort
);
Parameters
id [in]
Detector identifier
triggerPort [in]
Detector trigger port
RESULT_SUCCESS
|
Succeeded to set detector trigger port.
|
RESULT_SDK_IS_NOT_INITIALIZED
|
SDK is not initialized.
|
RESULT_INVALID_PARAMETER
|
[triggerPort] is already being used by another detector.
|
RESULT_DETECTOR_NO_INFORMATION
|
No detector information.
|
RESULT_ERROR
|
Failed to set detector trigger port.
|
Remarks
The overlapped items cannot be allocated to triggerPort.
This setting value is effective when the trigger mode of SCU is set as line trigger only.
Refer to the VIVIX-S user manual about the trigger connection of SCU and generator. Be sure to check that not all the registered detectors have ineffective trigger ports (TRIGGER_PORT_NONE), because at least one detector should have the effective trigger port.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
nResult = SDK.TriggerPortSet(0, Vieworks::vivix::TRIGGER_PORT::TRIGGER_PORT_A);
if(nResult == Vieworks::vivix::RESULT_SUCCESS)
{
// Succeeded to set trigger port A
}
else
{
// Failed to set trigger port A
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
nResult = pSDK.TriggerPortSet(0, Vieworks.vivix.net.TRIGGER_PORT.TRIGGER_PORT_A);
if (nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to set trigger port.
}
else
{
// Failed to set trigger port.
}
5.1.16 TriggerPortGet
Gets detector trigger port
Syntax (C++)
RESULT TriggerPortGet (
_In_ int id,
_Out_ TRIGGER _PORT triggerPort
);
Syntax (C#)
RESULT TriggerPortGet (
int id,
ref TRIGGER_PORT triggerPort
);
Parameters
id [in]
Detector identifier
triggerPort [out]
Detector trigger port
RESULT_SUCCESS
|
Succeeded to get detector trigger mode.
|
RESULT_SDK_IS_NOT_INITIALIZED
|
SDK is not initialized.
|
RESULT_INVALID_PARAMETER
|
Detector ID is out of range.
|
RESULT_DETECTOR_NO_INFORMATION
|
No detector information.
|
RESULT_ERROR
|
Failed to get detector trigger mode.
|
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::TRIGGER_PORT TriggerPort = Vieworks::vivix::TRIGGER_PORT::TRIGGER_PORT_NONE;
nResult = SDK.TriggerPortGet(0, &TriggerPort);
if(nResult == Vieworks::vivix::RESULT_SUCCESS)
{
// Succeeded to get trigger port
}
else
{
// Failed to get trigger port
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.TRIGGER_PORT TriggerPort = new Vieworks.vivix.net.TRIGGER_PORT();
nResult = pSDK.TriggerPortGet(0, ref TriggerPort);
if (nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get trigger port.
}
else
{
// Failed to get trigger port.
}
5.1.17 LogPathSet
Syntax (C++)
RESULT LogPathSet (
_In_ FILE_PATH filePath
);
Syntax (C#)
RESULT LogPathSet (
string filePath
);
Parameters
filePath [in]
Path of log file
RESULT_SUCCESS
|
Succeeded to get log path.
|
RESULT_INVALID_PARAMETER
|
Invalid or wrong file path.
|
RESULT_ERROR
|
Failed to get log path.
|
Remarks
Specify the route of log as readable / writable one since it has rights to operate the application which uses VIVIX SDK. If the route has insufficient rights, log cannot be generated.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
nResult = SDK.LogPathSet(_T("D:\\Log\\"));
if(nResult == Vieworks::vivix::RESULT_SUCCESS)
{
// Succeeded to set log path
}
else
{
// Failed to set log path
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
nResult = pSDK.LogPathSet("D:\\Log\\");
if(nResult == Vieworks.vivix.net.RESULT_SUCCESS)
{
// Succeeded to set log path
}
else
{
// Failed to set log path
}
5.1.18 LogPathGet
Syntax (C++)
RESULT LogPathGet (
_Out_ FILE_PATH* filePath
);
Syntax (C#)
RESULT LogPathGet (
out string filePath
);
Parameters
filePath [out]
Path of log file
RESULT_SUCCESS
|
Succeeded to get log path.
|
RESULT_INVALID_PARAMETER
|
[filePath] is null.
|
RESULT_ERROR
|
Failed to get log path.
|
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::FILE_PATH LogPath;
nResult = SDK.LogPathGet(&LogPath);
if(nResult == Vieworks::vivix::RESULT_SUCCESS)
{
// Succeeded to get log path
}
else
{
// Failed to get log path
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
string LogPath;
nResult = pSDK.LogPathGet(out LogPath);
if(nResult == Vieworks.vivix.net.RESULT_SUCCESS)
{
// Succeeded to get log path
}
else
{
// Failed to get log path
}
5.1.19 LogCountLimitSet
Limits the number of log files
Syntax (C++)
RESULT LogCountLimitSet (
_In_ bool enable,
_In_ int limit
);
Syntax (C#)
RESULT LogCountLimitSet (
bool enable,
int limit
);
Parameters
enable [in]
Enable or disable the log count limitation.
limit [in]
The maximum number of log files.
Minimum limit count is 3.
RESULT_SUCCESS
|
Succeeded to get log path.
|
RESULT_INVALID_PARAMETER
|
Invalid limit count.
|
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::FILE_PATH LogPath;
nResult = SDK.LogCountLimitSet(true, 10);
if(nResult == Vieworks::vivix::RESULT_SUCCESS)
{
// Succeeded to set log limit count
}
else
{
// Failed to set log limit count
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
string LogPath;
nResult = pSDK.LogCountLimitSet(true, 10);
if(nResult == Vieworks.vivix.net.RESULT_SUCCESS)
{
// Succeeded to set log limit count
}
else
{
// Failed to set log limit count
}
5.1.20 DebugRawExport
Enables or disables exporting the raw image for debug.
Syntax (C++)
RESULT DebugRawExport (
_In_ bool enable,
_In_ FILE_PATH rawPath
_In_ int imageLimitCount
);
Syntax (C#)
RESULT DebugRawExport (
bool enable,
string rawPath,
int imageLimitCount
);
Parameters
enable [in]
Enable or disable the raw image exporting.
rawPath [in]
The path that the image is saved.
imageLimitCount [in]
Maximum number of raw images.
RESULT_SUCCESS
|
Succeeded to set raw export setting.
|
RESULT_SDK_IS_NOT_INITIALIZED
|
The SDK has not been initialized.
|
RESULT_INVALID_PARAMETER
|
Invalid limit count or invalid path.
|
RESULT_ERROR
|
Failed to create image export folder.
|
Remarks
This setting is valid only for the current instance.
The path on which an image is saved, the application must have the write permission.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::FILE_PATH RawImagePath;
wcscpy_s(RawImagePath, _countof(RawImagePath), L”D:\\RawExport”);
nResult = SDK.DebugRawExport(true, RawImagePath, 5);
if(nResult == Vieworks::vivix::RESULT_SUCCESS)
{
// Succeeded to set raw image export
}
else
{
// Failed to set raw image export
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
string RawImagePath = @”D:\\RawExport”;
nResult = pSDK.DebugRawExport(true, RawImagePath, 5);
if(nResult == Vieworks.vivix.net.RESULT_SUCCESS)
{
// Succeeded to set raw image export
}
else
{
// Failed to set raw image export
5.1.21 UILockPreventionModeGet
Gets whether UI Prevention mode is enabled.
Syntax (C++)
RESULT UILockPreventionModeGet (
_Out_ bool* pbEnable,
);
Syntax (C#)
RESULT UILockPreventionModeGet (
ref bool bEnable,
);
Parameters
pbEnable [out]
whether UI Prevention mode is enabled.
RESULT_SUCCESS
|
Succeeded to get whether UI Prevention mode is enabled.
|
RESULT_INVALID_PARAMETER
|
Parameter is NULL.
|
Remarks
This setting is valid only for the current instance.
This value is set to ‘enable’ at the time when instance is created.
If this value is enabled, message pump will work to prevent UI lock in VIVIX SDK. This can be a problem if the SDK user wants to control the flow of the program using Windows messages.
If this value is disabled, the message pump that works for preventing UI lock in the VIVIX SDK will be stopped, so SDK users may need additional development to prevent UI lock. The SDK User must thoroughly review and test UI updates. In particular, problems may arise when trying to control the UI directly from the Notify / Delegate function.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
bool bEnable;
nResult = SDK.UILockPreventionModeGet(&bEnable);
if(nResult == Vieworks::vivix::RESULT_SUCCESS)
{
// Succeeded to get whether UI prevention mode is enabled.
}
else
{
// Failed to get whether UI prevention mode is enabled
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
bool bEnable;
nResult = pSDK. UILockPreventionModeGet(ref bEnable);
if(nResult == Vieworks.vivix.net.RESULT_SUCCESS)
{
// Succeeded to get whether UI prevention mode is enabled
}
else
{
// Failed to get whether UI prevention mode is enabled.
}
5.1.22 UILockPreventionModeSet
Sets whether UI Prevention mode is enabled
Syntax (C++)
RESULT UILockPreventionModeSet (
_In_ bool bEnable,
);
Syntax (C#)
RESULT UILockPreventionModeSet (
bool bEnable,
);
Parameters
pbEnable [out]
whether UI Prevention mode is enabled.
RESULT_SUCCESS
|
Succeeded to set whether UI Prevention mode is enabled.
|
Remarks
This setting is valid only for the current instance.
This value is set to ‘enable’ at the time when instance is created.
If this value is enabled, message pump will work to prevent UI lock in VIVIX SDK. This can be a problem if the SDK user wants to control the flow of the program using Windows messages.
If this value is disabled, the message pump that works for preventing UI lock in the VIVIX SDK will be stopped, so SDK users may need additional development to prevent UI lock.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
nResult = SDK.UILockPreventionModeSet(false);
if(nResult == Vieworks::vivix::RESULT_SUCCESS)
{
// Succeeded to set whether UI prevention mode is enabled.
}
else
{
// Failed to set whether UI prevention mode is enabled
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
bool bEnable;
nResult = pSDK.UILockPreventionModeSet(false);
if(nResult == Vieworks.vivix.net.RESULT_SUCCESS)
{
// Succeeded to set whether UI prevention mode is enabled
}
else
{
// Failed to set whether UI prevention mode is enabled.
}
5.1.23 KeepRecentImageGet
Gets the parameters for keeping the recent images.
Syntax (C++)
RESULT KeepRecentImageGet (
_Out_ bool* pbEnable,
_Out _ int* pnLimitCount,
_ Out _ FILE_PATH* pfilePath
);
Syntax (C#)
RESULT KeepRecentImageGet (
ref bool bEnable,
ref int nLimitCount
ref string filePath,
);
Parameters
pbEnable [out]
Enable or disable the recent image keeping.
pnLimitCount [out]
Maximum number of recent images.
pfilePath [out]
The path that the image is kept.
RESULT_SUCCESS
|
Succeeded to get the parameters for keeping the recent images.
|
RESULT_INVALID_PARAMETER
|
Parameter is NULL.
|
Remarks
This setting is valid only for the current instance.
The path on which an image is saved, the application must have the write permission.
Images saved with this function can be obtained using RecentImageGet as described in chapter 6.1.48.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
bool bEnable;
int nLimit;
Vieworks::vivix::FILE_PATH RawImagePath;
nResult = SDK.KeepRecentImageGet(&bEnable, &nLimit, &RawImagePath);
if(nResult == Vieworks::vivix::RESULT_SUCCESS)
{
// Succeeded to get the parameters for keeping the recent images.
}
else
{
// Failed to get the parameters for keeping the recent images
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
bool bEnable;
int nLimit;
string RawImagePath;
nResult = pSDK. KeepRecentImageGet(ref bEnable, ref nLimit, ref RawImagePath);
if(nResult == Vieworks.vivix.net.RESULT_SUCCESS)
{
// Succeeded to get the parameters for keeping the recent images
}
else
{
// Failed to get the parameters for keeping the recent images
}
5.1.24 KeepRecentImageSet
Sets the parameters for keeping the recent images
Syntax (C++)
RESULT DebugRawExport (
_In_ bool bEnable,
_In _ int nLimitCount,
_In _ FILE_PATH filePath,
_Out_ bool* pbCheckEnoughStorage,
);
Syntax (C#)
RESULT DebugRawExport (
bool bEnable,
int nLimitCount
string filePath
ref bool bCheckEnoughStorage
);
Parameters
bEnable [in]
Enable or disable the recent image keeping.
nLimitCount [in]
Maximum number of recent images.
filePath [in]
The path that the image is kept.
pbCheckEnoughStorage [out]
When this setting is enabled, checks that the hard disk capacity is adequate.
RESULT_SUCCESS
|
Succeeded to get the parameters for keeping the recent images.
|
RESULT_INVALID_PARAMETER
|
The limit count must be between 1 and 200.
The length of the path must be 255 characters or less.
If folder does not exist, folder creation failed.
You do not have access to the folder.
|
Remarks
This setting is valid only for the current instance.
The path on which an image is saved, the application must have the write permission.
Images saved with this function can be obtained using RecentImageGet as described in chapter 6.1.48.
This function checks the capacity when trying to use the ‘keep recent image’ function, but does not give a warning about the capacity while using the program. Applications that use the SDK need to manage this capacity.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
bool bCheckEnoughStorage
nResult = SDK.KeepRecentImageSet(true, 200, _T("D:\\Log\\"), &bCheckEnoughStorage);
if(nResult == Vieworks::vivix::RESULT_SUCCESS)
{
if(bCheckEnoughStorage == true)
; // Succeeded to set the parameters for keeping the recent images.
else
; // Succeeded to set the parameters but not enough hardisk storage.
}
else
{
// Failed to set the parameters for keeping the recent images
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
bool bCheckEnoughStorage
nResult = pSDK. KeepRecentImageSet(true, 200, _T("D:\\Log\\"), ref bCheckEnoughStorage);
if(nResult == Vieworks.vivix.net.RESULT_SUCCESS)
{
if(bCheckEnoughStorage == true)
; // Succeeded to set the parameters for keeping the recent images.
else
; // Succeeded to set the parameters but not enough hardisk storage.
}
else
{
// Failed to set the parameters for keeping the recent images
}
5.1.25 ClearRecentImage
Clears the saved recent image
Syntax
RESULT ClearRecentImage( void )
RESULT_SUCCESS
|
Succeeded to clear recent image.
|
RESULT_ERROR
|
Failed to clear recent image.
|
Remarks
When this function is called, all raw files in the folder set via the KeepRecentImageSet function are deleted.
If the path is not set, it is automatically set to 'C:\ProgramData\Vieworks\_VIVIX_backup'.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
nResult = SDK.Destruct();
if(nResult == Vieworks::vivix::RESULT_SUCCESS)
{
// Succeeded to destruct SDK.
}
else
{
// Failed to destruct SDK.
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
nResult = pSDK.Destruct();
if (nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to destruct SDK.
}
else
{
// Failed to destruct SDK.
}
6 CDetector (C++) / Detector (C#)
6.1 Member function
6.1.1 DetectorID
Acquires the detector ID of the current instance
Syntax (C++)
DETECTOR_ID DetectorID (void);
DETECTOR_ID
|
Detector ID of the current instance
|
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
Vieworks::vivix::DETECTOR_ID DetectorID = pDetector->DetectorID();
switch (DetectorID)
{
case 0:
// Detector 0
break;
case 1:
// Detector 1
break;
case 2:
// Detector 2
break;
case 3:
// Detector 3
break;
case 4:
// Detector 4
break;
default:
// Invalid Detector
break;
}
}
6.1.2 DetectorTypeGet
Acquires the detector type of the current instance
Syntax
DETECTOR_TYPE DetectorTypeGet (void);
DETECTOR_TYPE
|
Detector type of the current instance
|
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
nResult = SDK.Initialize();
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
Vieworks::vivix::detector::CDetector* pDetector = NULL;
nResult = SDK.GetDetector(0, &pDetector);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS && pDetector != NULL)
{
switch(pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_S:
// The detector is 1417S model.
break;
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_S:
// The detector is 1717S model.
break;
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_V:
// The detector is 1717V model.
break;
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
// The detector is 1417W model.
break;
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
// The detector is 1012N model.
break;
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
// The detector is 1417N model.
break;
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
// The detector is 1717N model.
break;
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
// The detector is 2532E model.
break;
}
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
nResult = pSDK.Initialize();
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
Vieworks.vivix.net.detector.Detector pDetector = null;
nResult = pSDK.GetDetector(0, ref pDetector);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS && pDetector != null)
{
switch(pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_S:
// The detector is 1417S model.
Break;
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_S:
// The detector is 1717S model.
Break;
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_V:
// The detector is 1717V model.
Break;
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
// The detector is 1417W model.
Break;
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
// The detector is 1012N model.
Break;
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
// The detector is 1417N model.
Break;
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
// The detector is 1717N model.
Break;
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
// The detector is 2532E model.
Break;
}
}
}
6.1.3 DetectorClassGet
Shows the class, where the CDtector instance should be casted to. This value can be used to simplify codes.
Syntax (C++)
DETECTOR_CLASS DetectorClassGet( void );
Syntax (C#)
DETECTOR_CLASS DetectorClassGet( void );
Remarks
This function returns DETECTOR_CLASS.
This function simplifies your code than checking for 'detectorType' to construct switch statement. Compare the old code with the new code in the example below. Also, when your viewer supports new detectors, you do not need to check every statement and add a detector model.
Examples (C++) – New Style Code
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
if(pDetector != NULL)
{
switch (pDetector->DetectorClassGet())
{
case DETECTOR_CLASS_FXRDN:
(Vieworks::vivix::detector::CFXRDN*)pDetector->DiagnosableItemsGet(true, &DiagnosableItemInfoList);
break;
case DETECTOR_CLASS_FXRDW:
(Vieworks::vivix::detector::CFXRDW*)pDetector->DiagnosableItemsGet(true, &DiagnosableItemInfoList);
break;
default:
// Not supported model.
break;
}
}
Examples (C++) – Old Style Code
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_T:
case Vieworks::vivix::DETECTOR_TYPE::FXRD2530_V:
case Vieworks::vivix::DETECTOR_TYPE::FXRD3643_V:
case Vieworks::vivix::DETECTOR_TYPE::FXRD4343_V:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->DiagnosableItemsGet(true, &DiagnosableItemInfoList);
}
break;
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDW = (Vieworks::vivix::detector::CFXRDW*)pDetector;
nResult = pFXRDW->DiagnosableItemsGet(true, &DiagnosableItemInfoList);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get diagnosable item list.
}
else
{
// Failed to get diagnosable item list.
}
}
6.1.4 PanelCount
Gets the total number of panels connected in a detector
Syntax(C++/C#)
int PanelCount()
Return Values
The panel count is returned. (1 ~ )
Examples (C++)
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialized, DetectorGet done, Open finished, using namespaces.
int nPanelCount = pDetector->PanelCount();
Examples (C#)
Vieworks.vivix.net.detector.Detector Detector = null;
// SDK Initialized, DetectorGet done, Open finished, using namespaces.
int panelCount = Detector.PanelCount();
6.1.5 Open
Opens the detector connection
Syntax
RESULT Open (void);
RESULT_SUCCESS
|
Succeeded to open the detector connection.
|
RESULT_DETECTOR_ALREADY_CONNECTED
|
The detector has already been connected.
|
RESULT_DETECTOR_IS_IN_BUSY
|
Detector opening is in progress.
Detector is refreshing offset calibration[FXRD-1417W Only]
|
RESULT_INVALID_MODEL
|
Invalid or not supported model.
|
RESULT_ERROR
|
Failed to open the detector connection.
|
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
nResult = SDK.Initialize();
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
nResult = SDK.GetDetector(0, &pDetector);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS && pDetector != NULL)
{
nResult = pDetector->Open();
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to open detector.
}
else
{
// Failed to open detector.
}
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
nResult = pSDK.Initialize();
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
Vieworks.vivix.net.detector.Detector pDetector = null;
nResult = pSDK.GetDetector(0, ref pDetector);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS && pDetector != null)
{
nResult = pDetector.Open();
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to open detector.
}
else
{
// Failed to open detector.
}
}
}
6.1.6 Close
Closes detector connection
Syntax
RESULT Close (void);
RESULT_SUCCESS
|
Succeeded to close detector connection.
|
RESULT_DETECOTR_NOT_CONNECTED
|
Detector is not connected.
|
Remarks
All internal memories are deleted.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
nResult = SDK.Initialize();
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
nResult = SDK.GetDetector(0, &pDetector);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS && pDetector != NULL)
{
nResult = pDetector->Close();
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to close detector.
}
else
{
// Failed to close detector.
}
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
nResult = pSDK.Initialize();
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
Vieworks.vivix.net.detector.Detector pDetector = null;
nResult = pSDK.GetDetector(0, ref pDetector);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS && pDetector != null)
{
nResult = pDetector.Close();
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to close detector.
}
else
{
// Failed to close detector.
}
}
}
6.1.7 IsWirelessSupport
Shows whether the detector model of a relevant instance can support the wireless function or not
Syntax (C++)
bool IsWirelessSupport (void);
Syntax (C#)
bool IsWirelessSupport (void);
bool
|
Checks whether the detector model of a relevant instance can support the wireless function or not.
|
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
bool bWirelessSupport = pDetector->IsWirelessSupport();
if(bWirelessSupport == true)
{
// Wireless support model
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
bool bWirelessSupport = pDetector.IsWirelessSupport();
if(bWirelessSupport == true)
{
// Wireless support model
}
}
6.1.8 TriggerModeSet
Sets detector trigger mode
Syntax (C++)
RESULT TriggerModeSet (
_In_ TRIGGER trigger
);
Syntax (C#)
RESULT TriggerModeSet (
TRIGGER trigger
);
Parameters
trigger [in]
Detector trigger mode
RESULT_SUCCESS
|
Succeeded to set detector trigger mode.
|
RESULT_INVALID_PARAMETER
|
[trigger] value is invalid.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_DETECTOR_IS_IN_BUSY
|
Detector is in offset calibration processing.[FXRD-1417W]
|
RESULT_ERROR
|
Failed to set detector trigger mode.
|
Remarks
Passive mode is supported only for FXRD-1717S and FXRD-1717V.
This function can be used after opening detector connection.
In case of W type or N type detector, the value changed by this function cannot be saved to the detector as a temporary one. Therefore, the changing value is returned to the value configured in Setup when rebooting the detector. The S type detector, however, is saved to the detector and maintains the changed value.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
Vieworks::vivix::TRIGGER TriggerMode = Vieworks::vivix::TRIGGER::TRIGGER_AED;
nResult = pDetector->TriggerModeSet(TriggerMode);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to set trigger mode.
}
else
{
// Failed to set trigger mode.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
Vieworks.vivix.net.TRIGGER TriggerMode = Vieworks.vivix.net.TRIGGER.TRIGGER_AED;
nResult = pDetector.TriggerModeSet(TriggerMode);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to set trigger mode.
}
else
{
// Failed to set trigger mode.
}
}
6.1.9 TriggerModeGet
Gets detector trigger mode
Syntax (C++)
RESULT TriggerModeGet (
_Out_ TRIGGER* trigger
);
Syntax (C#)
RESULT TriggerModeGet (
out TRIGGER trigger
);
Parameters
trigger [out]
Detector trigger mode
RESULT_SUCCESS
|
Succeeded to get detector trigger mode.
|
RESULT_INVALID_PARAMETER
|
[trigger] value is invalid.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to get detector trigger mode.
|
Remarks
Passive mode is supported only FXRD-1717S and FXRD-1717V.
This function can be used after opening detector connection.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
Vieworks::vivix::TRIGGER TriggerMode = Vieworks::vivix::TRIGGER::UNKNOWN;
nResult = pDetector->TriggerModeGet(&TriggerMode);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get trigger mode.
Switch(TriggerMode)
{
case Vieworks::vivix::TRIGGER::TRIGGER_DR:
// The Detector’s trigger mode is DR.
break;
case Vieworks::vivix::TRIGGER::TRIGGER_PASSIVE:
// The Detector’s trigger mode is PASSIVE.
Break;
case Vieworks::vivix::TRIGGER::TRIGGER_AED:
// The Detector’s trigger mode is AED.
Break;
default
// The Detector’s trigger mode is UNKNOWN.
Break;
}
}
else
{
// Failed to get trigger mode.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
Vieworks.vivix.net.TRIGGER TriggerMode = Vieworks.vivix.net.TRIGGER.UNKNOWN;
nResult = pDetector.TriggerModeGet(out TriggerMode);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get trigger mode.
Switch(TriggerMode)
{
case Vieworks.vivix.net.TRIGGER.TRIGGER_DR:
// The Detector’s trigger mode is DR.
break;
case Vieworks.vivix.net.TRIGGER.TRIGGER_PASSIVE:
// The Detector’s trigger mode is PASSIVE.
Break;
case Vieworks.vivix.net.TRIGGER.TRIGGER_AED:
// The Detector’s trigger mode is AED.
Break;
default
// The Detector’s trigger mode is UNKNOWN.
Break;
}
}
else
{
// Failed to get trigger mode.
}
}
6.1.10 SerialGet
Gets detector serial number
Syntax (C++)
RESULT SerialGet (
_Out_ SerialGet* serial
);
Syntax (C#)
RESULT SerialGet (
out string serial
);
Parameters
serial [out]
Detector serial number
RESULT_SUCCESS
|
Succeeded to get detector serial number
|
RESULT_INVALID_PARAMETER
|
[serial] value is invalid.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to get detector trigger mode.
|
Remarks
Acquire the serial number of detector.
This function can be used after opening detector connection.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
Vieworks::vivix::SERIAL Serial;
nResult = pDetector->SerialGet(&Serial);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get serial;
}
else
{
// Failed to get serial;
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
Vieworks.vivix.net.SERIAL Serial;
nResult = pDetector.SerialGet(out Serial);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get serial;
}
else
{
// Failed to get serial;
}
}
6.1.11 ChangeIP
Changes detector IP address
Syntax (C++)
RESULT ChangeIP (
_In_ uint ip,
_In_ uint subnet
);
Syntax (C#)
RESULT ChangeIP (
uint ip,
uint subnet
);
Parameters
ip [in]
IP address
subnet [in]
Subnet mask
RESULT_SUCCESS
|
Succeeded to change detector IP address.
|
RESULT_INVALID_PARAMETER
|
Invalid IP address range
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to change detector IP address.
|
Remarks
IP address and subnet mask should be entered as an integer form.
This function can be used after opening detector connection.
The FXRD-1717S, FXRD-1717V and FXRD-1417S models should be conducted without Detector open. Check the changed IP from RefreshDeviceInformation after rebooting the detector manually.
The FXRD-1417W, FXRD-1012N, FXRD-1417N, FXRD-1717N and VXTD-2532E models should be conducted after Detector Open.
FXRD-1417W reboots automatically after the IP is changed. Check the changed IP from RefreshDeviceInformation after the rebooting.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
nResult = pDetector->ChageIP(2851995939, 4294901760);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to change ip address and subnet;
}
else
{
// Failed to change ip address and subnet;
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
nResult = pDetector.ChageIP(2851995939, 4294901760);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to change ip address and subnet;
}
else
{
// Failed to change ip address and subnet;
}
}
6.1.12 CalibrationReadyStateGet
Gets detector calibration in a ready state
Syntax (C++)
RESULT CalibrationReadyStateGet (
_Out_ CALIBRATION_READY_STATE ready
);
Syntax (C#)
RESULT CalibrationReadyStateGet (
out CALIBRATION_READY_STATE ready
);
Parameters
ready [out]
Calibration ready state
RESULT_SUCCESS
|
Succeeded to get calibration ready state.
|
RESULT_INVALID_PARAMETER
|
[ready] Invalid value
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to get the calibration ready state.
|
Remarks
It is available to check if the calibration data is loaded to each detector instance.
This function can be used after opening detector connection.
If the check is failed, RESULT_ERROR will return.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
Vieworks::vivix::CALIBRATION_READY_STATE CalibrationReadyState;
nResult = pDetector->CalibrationReadyStateGet(&CalibrationReadyState);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get calibration ready state.
If(CalibrationReadyState.OffsetIsReady == true)
{
// Offset data is ready.
}
else
{
// Offset data is not ready.
}
if(CalibrationReadyState.DefectIsReady == true)
{
// Defect map is ready.
}
else
{
// Defect map is not ready.
}
if(CalibrationReadyState.OffsetIsReady == true)
{
// Gain data is ready.
}
else
{
// Gain data is not ready.
}
}
else
{
// Failed to get calibration ready state.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
Vieworks.vivix.net.CALIBRATION_READY_STATE CalibrationReadyState;
nResult = pDetector.CalibrationReadyStateGet(out CalibrationReadyState);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get calibration ready state.
If(CalibrationReadyState.OffsetIsReady == true)
{
// Offset data is ready.
}
else
{
// Offset data is not ready.
}
if(CalibrationReadyState.DefectIsReady == true)
{
// Defect map is ready.
}
else
{
// Defect map is not ready.
}
if(CalibrationReadyState.OffsetIsReady == true)
{
// Gain data is ready.
}
else
{
// Gain data is not ready.
}
}
else
{
// Failed to get calibration ready state.
}
}
6.1.13 CalibrationApplySet
Sets the status for applying detector calibration
Syntax (C++)
RESULT CalibrationApplySet (
_In_ CALIBRATION_TYPE type,
_In_ bool apply
);
Syntax (C#)
RESULT CalibrationApplySet (
CALIBRATION_TYPE type,
bool apply
);
Parameters
type [in]
Calibration type
apply [in]
Determining whether to apply calibration data to the image or not.
RESULT_SUCCESS
|
Succeeded to set detector calibration applied.
|
RESULT_INVALID_PARAMETER
|
[type] value is invalid
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_NOT_OFFSET_CALIBRATED
|
Not ready offset
|
RESULT_DETECTOR_IS_NOT_DEFECT_CALIBRATED
|
Not ready defect offset
|
RESULT_DETECTOR_IS_NOT_GAIN_CALIBRATED
|
Not ready gain
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to set detector calibration applied.
|
Remarks
This function can be used after opening detector connection.
The relevant calibration data should be loaded to apply the specific calibration item.
Check if the calibration data is loaded from CalibrationReadyStateGet function.
The configured item to apply calibration by calling the CalibrationApplySet function will be effective to the images which are taken after the configuration.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
nResult = pDetector->CalibrationApplySet(Vieworks::vivix::CALIBRATION_TYPE:: CALIBRATION_OFFSET, true);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to set offset calibration apply.
}
else
{
// Failed to set offset calibration apply.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
nResult = pDetector.CalibrationApplySet(Vieworks.vivix.net.CALIBRATION_TYPE. CALIBRATION_OFFSET, true);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to set offset calibration apply.
}
else
{
// Failed to set offset calibration apply.
}
}
6.1.14 CalibrationApplyGet
Gets the status for applying detector calibration
Syntax (C++)
RESULT CalibrationApplyGet (
_In_ CALIBRATION_TYPE type,
_Out_ bool* apply
);
Syntax (C#)
RESULT CalibrationApplyGet (
CALIBRATION_TYPE type,
out bool apply
);
Parameters
type [in]
Calibration type
apply [out]
Determining whether to apply calibration data to the image
RESULT_SUCCESS
|
Succeeded to get detector calibration applied.
|
RESULT_INVALID_PARAMETER
|
[type] or [apply] value is invalid
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to get detector calibration applied.
|
Remarks
Check if the calibration data is applied to the image or not.
This function can be used after opening detector connection.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
bool bApply = false;
nResult = pDetector->CalibrationApplyGet(Vieworks::vivix::CALIBRATION_TYPE:: CALIBRATION_OFFSET, &bApply);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get offset calibration apply.
If(bApply == true)
{
// Offset calibration is applied.
}
else
{
// offset calibration is not applied.
}
}
else
{
// Failed to get offset calibration apply.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
bool bApply = false;
nResult = pDetector.CalibrationApplyGet(Vieworks.vivix.net.CALIBRATION_TYPE. CALIBRATION_OFFSET, out bApply);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get offset calibration apply.
If(bApply == true)
{
// Offset calibration is applied.
}
else
{
// offset calibration is not applied.
}
}
else
{
// Failed to get offset calibration apply.
}
}
6.1.15 OffsetRefresh
Refreshes offset calibration data
Syntax (C++)
RESULT OffsetRefresh (
_In_ int count,
_In_ void* eventHandle = NULL
);
Syntax (C#)
RESULT OffsetRefresh (
int count,
);
Parameters
count [in]
Number of shots for offset refresh procedure.
eventHandle [in]
Not supported yet.
RESULT_SUCCESS
|
Succeeded to perform offset refresh.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_NOT_ OFFSET_CALIBRATED
|
Post Offset Calibration Data is not loaded.
|
RESULT_DETECTOR_OFFSET_CALIBRATION_IS_NOT_READY
|
Detector is not ready to perform offset calibration.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_NOT_SUPPORTED_MODEL
|
Detector is not supported model.
|
RESULT_ERROR
|
Failed to perform offset refresh.
|
Remarks
-
This function can be used after opening detector connection.
-
To perform the offset calibration after image acquisition with ghost removal, detector is required to wait 300 seconds.
-
FXRD-1417S and FXRD-1717S models can use this function after calibration or loading through VIVIX Setup.
-
After the OffsetRefresh function succeeds, the process of Offset Refresh is sent to NotifyCalibrationOffsetRefreshStep, and the final result is sent to NotifyCalibrationOffsetRefreshResult.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
pDetector-> SetNotifyCalibrationOffsetRefreshStep(NotifyCalibrationOffsetRefreshStep);
pdetector-> SetNOtifyCalibrationOffsetRefreshResult(NotifyCalibrationOffsetRefreshResult);
nResult = pDetector->OffsetRefresh(5);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to start offset refresh.
}
else
{
// Failed to start offset refresh.
}
}
void NotifyCalibrationOffsetRefreshStep(Vieworks::vivix::DETECTOR_ID id, unsigned int stage, float avgValue, Vieworks::vivix::IMAGE_INFO* image)
{
}
void NotifyCalibrationOffsetRefreshResult(Vieworks::vivix::DETECTOR_ID id, Vieworks::vivix::OFFSET_REFRESH_STATUS status)
{
switch(status)
{
case Vieworks::vivix::OFFSET_REFERSH_STATUS::OFFSET_REFRESH_DONE:
// Succeeded to refresh offset.
Break;
default:
// Failed to refresh offset.
Break;
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
pDetector. SetDelegateCalibrationOffsetRefreshStep(OnDelegateCalibrationOffsetRefreshStep);
pDetector. SetDelegateCalibrationOffsetRefreshResult(OnDelegateCalibrationOffsetRefreshResult);
nResult = pDetector.OffsetRefresh(5);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to start offset refresh.
}
else
{
// Failed to start offset refresh.
}
}
void OnDelegateCalibrationOffsetRefreshStep(int id, uint stage, float avgValue, Vieworks.vivix.net.IMAGE_INFO* image)
{
}
void OnDelegateCalibrationOffsetRefreshResult(ind id, Vieworks.vivix.net.OFFSET_REFRESH_STATUS status)
{
switch(status)
{
case Vieworks.vivix.net.OFFSET_REFERSH_STATUS.OFFSET_REFRESH_DONE:
// Succeeded to refresh offset.
Break;
default:
// Failed to refresh offset.
Break;
}
}
6.1.16 CalibrationLoad
Syntax (C++)
RESULT CalibrationLoad (
_In_ CALIBRATION_FILE_TYPE type,
_In_ const FILE_PATH filePath
);
Syntax (C#)
RESULT CalibrationLoad (
CALIBRATION_FILE_TYPE type,
string filePath
);
Parameters
type [in]
Calibration file type
filePath [in]
Calibration file path by the type.
RESULT_SUCCESS
|
Succeeded to load calibration file.
|
RESULT_INVALID_PARAMETER
|
[type] value is invalid.
|
RESULT_IO_INVALID_FILE_PATH
|
File path is wrong or invalid.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_NOT_SUPPORTED_MODEL
|
Not supported model.
|
RESULT_IO_INVALID_FILE
|
File does not exist.
|
RESULT_IO_INVALID_MODEL
|
Model name of the file is not matched to the detector.
|
RESULT_IO_INVALID_SERIAL
|
Serial of the file is not matched to the detector.
|
RESULT_IO_INVALID_SIZE
|
File size is not matched to the specifications of detector.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to load calibration file.
|
Remarks
This function can be used after opening detector connection.
This task should be processed before making an exposure to receive images.
The taken images can be sent when Offset, Defect, and Gain calibration data files are all loaded.
Check the result of task from CalibrationReadyState.
From VIVIX SDK V1.0.4.14 or the higher version, when you generate the gain data or load the existing one for the first time, the data file for using OSF is created automatically with the file extension ‘sg’.
In case of FXRD-1417W, FXRD-1012N, FXRD-1717N and VXTD-2532E models, it is not supported to process the CalibrationLoad function since the offset calibration data file is saved to the detector after completing the offset calibration.
In case of FXRD-1417N, it is not supported to process the CalibrationLoad function since the all calibration data file is saved to the detector after completing the calibration.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
pDetector->SetNotifyCalibrationFileLoaded(NotifyCalibrationFileLoaded);
Vieworks::vivix::CALIBRATION_FILE_TYPE CalibrationFileType = Vieworks::vivix::CALIBRATION_FILE_TYPE::CALIBRATION_FILE_OFFSET;
Cstring strPath = _T(“D:\offset.dat”);
nResult = pDetector->CalibrationLoad(CalibrationFileType, strPath);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to load calibration data.
}
else
{
// Failed to load calibration data.
}
}
void NotifyCalibrationFileLoaded(Vieworks::vivix::DETECTOR_ID id, Vieworks::vivix::CALIBRATION_TYPE type)
{
switch(type)
{
case Vieworks::vivix::CALIBRATION_TYPE::CALIBRATION_OFFSET:
// Succeeded to load offset data.
Break;
case Vieworks::vivix::CALIBRATION_TYPE::CALIBRATION_DEFECT:
// Succeeded to load defect map.
Break;
case Vieworks::vivix::CALIBRATION_TYPE::CALIBRATION_GAIN:
// Succeeded to load gain data.
Break;
default
// Unknown
break;
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
pDetector.SetDelegateCalibrationFileLoaded(OnDelegateCalibrationFileLoaded);
Vieworks.vivix.net.CALIBRATION_FILE_TYPE CalibrationFileType = Vieworks.vivix.net.CALIBRATION_FILE_TYPE.CALIBRATION_FILE_OFFSET;
string strPath = “D:\\offset.dat”;
nResult = pDetector.CalibrationLoad(CalibrationFileType, strPath);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to load calibration data.
}
else
{
// Failed to load calibration data.
}
}
void OnDelegateCalibrationFileLoaded(int id, Vieworks.vivix.net.CALIBRATION_TYPE type)
{
switch(type)
{
case Vieworks.vivix.net.CALIBRATION_TYPE.CALIBRATION_OFFSET:
// Succeeded to load offset data.
Break;
case Vieworks.vivix.net.CALIBRATION_TYPE.CALIBRATION_DEFECT:
// Succeeded to load defect map.
Break;
case Vieworks.vivix.net.CALIBRATION_TYPE.CALIBRATION_GAIN:
// Succeeded to load gain data.
Break;
default
// Unknown
break;
}
}
6.1.17 CalibrationSave
Syntax (C++)
RESULT CalibrationSave (
_In_ CALIBRATION_FILE_TYPE type,
_In_ const FILE_PATH filePath
);
Syntax (C#)
RESULT CalibrationSave (
CALIBRATION_FILE_TYPE type,
string filePath
);
Parameters
type [in]
Calibration file type.
filePath [in]
Calibration file path by the type.
RESULT_SUCCESS
|
Succeeded to save calibration file.
|
RESULT_INVALID_PARAMETER
|
[type] value is invalid.
|
RESULT_IO_INVALID_FILE_PATH
|
File path is wrong or invalid
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DATA_NOT_FOUND
|
Calibration data is not found.
|
RESULT_NOT_SUPPORTED_MODEL
|
Not supported model.
|
RESULT_DETECTOR_NOT_OFFSET_CALIBRATED
|
Post offset is not calibrated.
|
RESULT_NOT_DETECTOR_DEFECT_CALIBRATED
|
Defect is not calibrated.
|
RESULT_NOT_DETECTOR_GAIN_CALIBRATED
|
Gain is not calibrated.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to save calibration file.
|
Remarks
This function can be used after opening detector connection.
After processing calibration, save the calibration data generated in the memory as a file format.
After the calibration, new defect map is added and saved to the existing file automatically.
In case of FXRD-1417S, FXRD 1717S and FXRD 1717V models, save the calibration data in the memory and load to use it next time.
In case of FXRD-1417W, FXRD-1012N, FXRD-1717N and VXTD-2532E models, it is not supported to process the CalibrationSave function since the offset calibration data file is saved to the detector after completing the offset calibration.
In case of FXRD-1417N, it is not supported to process the CalibrationSave function since all calibration data file is saved to the detector after completing the calibration.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
pDetector->SetNotifyCalibrationFileSaved(NotifyCalibrationFileSaved);
Vieworks::vivix::CALIBRATION_FILE_TYPE CalibrationFileType = Vieworks::vivix::CALIBRATION_FILE_TYPE::CALIBRATION_FILE_OFFSET;
Cstring strPath = _T(“D:\offset.dat”);
nResult = pDetector->CalibrationSave(CalibrationFileType, strPath);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to save calibration data.
}
else
{
// Failed to save calibration data.
}
}
void NotifyCalibrationFileSaved(Vieworks::vivix::DETECTOR_ID id, Vieworks::vivix::CALIBRATION_TYPE type)
{
switch(type)
{
case Vieworks::vivix::CALIBRATION_TYPE::CALIBRATION_OFFSET:
// Succeeded to save offset data.
Break;
case Vieworks::vivix::CALIBRATION_TYPE::CALIBRATION_DEFECT:
// Succeeded to save defect map.
Break;
case Vieworks::vivix::CALIBRATION_TYPE::CALIBRATION_GAIN:
// Succeeded to save gain data.
Break;
default
// Unknown
break;
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
pDetector.SetDelegateCalibrationFileSaved(OnDelegateCalibrationFileSaved);
Vieworks.vivix.net.CALIBRATION_FILE_TYPE CalibrationFileType = Vieworks.vivix.net.CALIBRATION_FILE_TYPE.CALIBRATION_FILE_OFFSET;
Cstring strPath = “D:\\offset.dat”;
nResult = pDetector.CalibrationSave(CalibrationFileType, strPath);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to save calibration data.
}
else
{
// Failed to save calibration data.
}
}
void OnDelegateCalibrationFileSaved(int id, Vieworks.vivix.net.CALIBRATION_TYPE type)
{
switch(type)
{
case Vieworks.vivix.net.CALIBRATION_TYPE.CALIBRATION_OFFSET:
// Succeeded to save offset data.
Break;
case Vieworks.vivix.net.CALIBRATION_TYPE.CALIBRATION_DEFECT:
// Succeeded to save defect map.
Break;
case Vieworks.vivix.net.CALIBRATION_TYPE.CALIBRATION_GAIN:
// Succeeded to save gain data.
Break;
default
// Unknown
break;
}
}
6.1.18 AutoOffsetRefreshConfigSet
Sets the configuration of auto offset refresh
Syntax (C++)
RESULT AutoOffsetRefreshConfigSet (
_In_ bool enable,
_In_ int interval,
_In_ int temperature,
_In_ int shot
);
Syntax (C#)
RESULT AutoOffsetRefreshConfigSet (
bool enable,
int interval,
int temperature,
int shot
);
Parameters
enable [in]
Offset refresh usage
interval [in]
Offset refresh time interval.
Temperature [in]
Offset refresh temperature.
Shot [in]
Number of shots
RESULT_SUCCESS
|
Succeeded to set offset refresh configuration.
|
RESULT_INVALID_PARAMETER
|
Detector ID is out of range or [interval], [temperature] or [shot] is invalid.
|
RESULT_DETECTOR_NO_INFORMATION
|
There is no detector information.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_NOT_SUPPORTED_MODEL
|
Detector is not supported model.
|
RESULT_ERROR
|
Failed to set offset refresh configuration.
|
Remarks
This function can be used after opening detector connection.
Since the FXRD-1717S, FXRD-1717V and FXRD-1417S models are saved to the local PC, the relevant value should be configured again if the connecting PC is changed.
In case of the FXRD-1417W, FXRD-1012N, FXRD-1417N, FXRD-1717N and VXTD-2532E models, the value in the detectors are maintained even though the connecting PC is changed. In addition, the necessity of offset refresh is transmitted to NotifyOffsetRefreshCheck in every time interval if the auto offset refresh function is configured as ‘Enable’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
bool bEnable = false;
int iInterval = 30;
int iTemperatyre = 3;
int iShot = 5;
nResult = pDetector->AutoOffsetRefreshConfigSet(bEnable, iInterval, iTemperature, iShot);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to set auto offset refresh configuration.
}
else
{
// Failed to set auto offset refresh configuration.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
bool bEnable = false;
int iInterval = 30;
int iTemperatyre = 3;
int iShot = 5;
nResult = pDetector.AutoOffsetRefreshConfigSet(bEnable, iInterval, iTemperature, iShot);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to set auto offset refresh configuration.
}
else
{
// Failed to set auto offset refresh configuration.
}
}
6.1.19 AutoOffsetRefreshConfigGet
Gets the configuration of auto offset refresh
Syntax (C++)
RESULT AutoOffsetRefreshConfigGet (
_Out_ bool* enable,
_Out_ int* interval,
_Out_ int* temperature,
_Out_ int* shot
);
Syntax (C#)
RESULT AutoOffsetRefreshConfigGet (
out bool enable,
out int interval,
out int temperature,
out int shot
);
Parameters
enable [out]
Offset refresh usage
interval [out]
Offset refresh time interval
temperature [out]
Offset refresh temperature
shot [out]
Number of shots
RESULT_SUCCESS
|
Succeeded to get offset refresh configuration.
|
RESULT_INVALID_PARAMETER
|
Detector ID is out of range.
|
RESULT_DETECTOR_NO_INFORMATION
|
There is no detector information.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_NOT_SUPPORTED_MODEL
|
Detector is not supported model.
|
RESULT_ERROR
|
Failed to get offset refresh configuration.
|
Remarks
This function can be used after opening detector connection.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
bool bEnable = false;
int iInterval = 0;
int iTemperatyre = 0;
int iShot = 0;
nResult = pDetector->AutoOffsetRefreshConfigGet(&bEnable, &iInterval, &iTemperature, &iShot);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get auto offset refresh configuration.
}
else
{
// Failed to get auto offset refresh configuration.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
bool bEnable = false;
int iInterval = 0;
int iTemperatyre = 0;
int iShot = 0;
nResult = pDetector.AutoOffsetRefreshConfigGet(out bEnable, out iInterval, out iTemperature, out iShot);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get auto offset refresh configuration.
}
else
{
// Failed to get auto offset refresh configuration.
}
}
6.1.20 SaturationSet
Sets saturation value of the detector
Syntax (C++)
RESULT SaturationSet (
_In_ int saturation
);
Syntax (C#)
RESULT SaturationSet (
int saturation
);
Parameters
saturation [in]
Saturation value
RESULT_SUCCESS
|
Succeeded to set saturation value.
|
RESULT_INVALID_PARAMETER
|
Detector ID is out of range.
|
RESULT_DETECTOR_NO_INFORMATION
|
There is no detector information.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_ERROR
|
Failed to set saturation value.
|
Remarks
This function can be used after opening detector connection.
It is available to set the maximum value of the image. The pixel value cannot be more than the saturation value. If the specific value is more than the saturation value, the saturation value is substituted for the pixel value.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
int iSaturation = 10000;
nResult = pDetector->SaturationSet(iSaturation);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to set saturation.
}
else
{
// Failed to set saturation.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
int iSaturation = 10000;
nResult = pDetector.SaturationSet(iSaturation);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to set saturation.
}
else
{
// Failed to set saturation.
}
}
6.1.21 SaturationGet
Gets saturation value of the detector
Syntax (C++)
RESULT SaturationGet (
_Out_ int saturation
);
Syntax (C#)
RESULT SaturationGet (
out int saturation
);
Parameters
saturation [out]
Saturation value
RESULT_SUCCESS
|
Succeeded to get saturation value.
|
RESULT_INVALID_PARAMETER
|
Detector ID is out of range.
|
RESULT_DETECTOR_NO_INFORMATION
|
There is no detector information.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_ERROR
|
Failed to get saturation value.
|
Remarks
This function can be used after opening detector connection.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
int iSaturation = 0;
nResult = pDetector->SaturationGet(&iSaturation);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get saturation.
}
else
{
// Failed to get saturation.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
int iSaturation = 0;
nResult = pDetector.SaturationGet(out iSaturation);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get saturation.
}
else
{
// Failed to get saturation.
}
}
6.1.22 EdgeMaskingSet
Sets whether to mask the area outside of the effective area
Syntax (C++)
RESULT EdgeMaskingSet (
_In_ bool apply,
_In_ unsigned int val
);
Parameters
apply [in]
Masking usage
val [in]
Masking value
RESULT_SUCCESS
|
Succeeded to set masking usage and masking value.
|
RESULT_INVALID_PARAMETER
|
[apply] or [masking value] is invalid.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_ERROR
|
Failed to set masking usage and masking value.
|
Remarks
This function can be used after opening detector connection.
This function is used for replacing the area outside of the effective area to the specific value.
Since the masking value is filled in the original image, turn off the setting if you do not want to use this function. In addition, the setting value is not saved to the detector separately. Therefore, turn off the setting if you do not want to use it after generating the detector instance. And note that the value is set as a default one (Enable) if the detector opens.
If the value is negative, the SDK perform masking by default value of the detector.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
nResult = pDetector->EdgeMaskingSet(true, 0);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to enable masking.
}
else
{
// Failed to enable masking.
}
}
6.1.23 EdgeMaskingGet
Gets whether to mask the area outside of the effective area with the value
Syntax (C++)
RESULT EdgeMaskingGet (
_Out_ bool* apply,
_Out_ unsigned int* val
);
Parameters
apply [out]
Masking usage
val [out]
Masking value
RESULT_SUCCESS
|
Succeeded to get masking usage and masking value.
|
RESULT_INVALID_PARAMETER
|
[apply] or [masking value] is invalid.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_ERROR
|
Failed to get masking usage and masking value.
|
Remarks
This function can be used after opening detector connection.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
bool bMaskingEnable = false;
int iMaskingValue = -1;
nResult = pDetector->EdgeMaskingGet(&bMaskingEnable, &iMaskingValue);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get masking setting value.
}
else
{
// Failed to get masking setting value.
}
}
6.1.24 ImageSizeGet
Gets information on detector image size
Syntax (C++)
RESULT ImageSizeGet (
_Out_ IMAGE_SIZE_INFO* info
);
Syntax (C#)
RESULT ImageSizeGet (
out IMAGE_SIZE_INFO* info
);
Parameters
info [out]
Image size information
RESULT_SUCCESS
|
Succeeded to get image size information.
|
RESULT_INVALID_PARAMETER
|
Detector ID is out of range.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_ERROR
|
Failed to get image size information.
|
Remarks
The value of image width or image height is possible from 1 to 65534.
This function can be used after opening detector connection.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
Vieworks::vivix::IMAGE_SIZE_INFO ImageSizeInfo;
nResult = pDetector->ImageSizeGet(&ImageSizeInfo);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get image size information.
}
else
{
// Failed to get image size information.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
Vieworks.vivix.net.IMAGE_SIZE_INFO ImageSizeInfo;
nResult = pDetector.ImageSizeGet(out ImageSizeInfo);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get image size information.
}
else
{
// Failed to get image size information.
}
}
6.1.25 EffectiveAreaSet
Sets effective area of detector
Syntax (C++)
RESULT EffectiveAreaSet (
_In_ unsigned int EA_top,
_In_ unsigned int EA_bottom,
_In_ unsigned int EA_left,
_In_ unsigned int EA_right
);
Syntax
RESULT EffectiveAreaSet (
uint EA_top,
uint EA_bottom,
uint EA_left,
uint EA_right
);
Parameters
EA_top [in]
Effective area (Top)
EA_bottom [in]
Effective area (bottom)
EA_left [in]
Effective area (left)
EA_right [in]
Effective area (right)
RESULT_SUCCESS
|
Succeeded to set effective area of the detector.
|
RESULT_INVALID_PARAMETER
|
Invalid effective area value.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to set direction of the detector.
|
Remarks
This function is used for setting effective image area. The setting is limited within the existing area which was configured at the time of product shipping. The outlying area of image specified as effective area can be masked by the function ‘EdgeMaskingSet’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
nResult = pDetector->EffectiveAreaSet(10, 3020, 20, 3010);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to set effective area.
}
else
{
// Failed to set effective area.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
nResult = pDetector.EffectiveAreaSet(10, 3020, 20, 3010);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to set effective area.
}
else
{
// Failed to set effective area.
}
}
6.1.26 EffectiveAreaGet
Gets effective area of detector
Syntax (C++)
RESULT EffectiveAreaGet (
_Out_ unsigned int* EA_top,
_Out_ unsigned int* EA_bottom,
_Out_ unsigned int* EA_left,
_Out_ unsigned int* EA_right
);
Syntax (C#)
RESULT EffectiveAreaGet (
out uint EA_top,
out uint EA_bottom,
out uint EA_left,
out uint EA_right
);
Parameters
EA_top [out]
Effective area (Top)
EA_bottom [out]
Effective area (bottom)
EA_left [out]
Effective area (left)
EA_right [out]
Effective area (right)
RESULT_SUCCESS
|
Succeeded to get direction of detector.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to get direction of detector.
|
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
unsigned int top, bottom, left, right;
nResult = pDetector->EffectiveAreaGet(&top, &bottom, &left, &right);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get effective area information.
}
else
{
// Failed to get effective area information.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
uint top, bottom, left, right;
nResult = pDetector.EffectiveAreaGet(out top, out bottom, out left, out right);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get effective area information.
}
else
{
// Failed to get effective area information.
}
}
6.1.27 DirectionSet
Sets direction of detector
Syntax (C++)
RESULT DirectionSet (
_In_ DIRECTION direction
);
Syntax
RESULT DirectionSet (
DIRECTION direction
);
Parameters
direction [in]
Direction of detector
RESULT_SUCCESS
|
Succeeded to set direction of detector.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_ERROR
|
Failed to set direction of detector.
|
Remarks
The configured direction is sent to NotifyFrameGrabberImageIn with the image, but the image cannot be rotated by the direction. As the direction information is stored in the PC, not in the detector, the direction should be set again if the connecting PC is changed.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
nResult = pDetector->DirectionSet(Vieworks::vivix::DIRECTION::DIRECTION_CW180);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to set direction information.
}
else
{
// Failed to set direction information.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
nResult = pDetector.DirectionSet(Vieworks.vivix.net.DIRECTION.DIRECTION_CW180);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to set direction information.
}
else
{
// Failed to set direction information.
}
}
6.1.28 DirectionGet
Gets direction of detector
Syntax (C++)
RESULT DirectionGet (
_Out_ DIRECTION* direction
);
Syntax (C#)
RESULT DirectionGet (
out DIRECTION direction
);
Parameters
direction [out]
Direction of detector
RESULT_SUCCESS
|
Succeeded to get direction of detector.
|
RESULT_INVALID_PARAMETER
|
Detector ID is out of range.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_ERROR
|
Failed to get direction of detector.
|
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
Vieworks::vivix::DIRECTION DirectionInfo;
nResult = pDetector->DirectionGet(&DirectionInfo);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get direction information.
Switch (DirectionInfo)
{
case Vieworks::vivix::DIRECTION_NONE:
// None(CW0)
break;
case Vieworks::vivix::DIRECTION_CW90:
// CW90
break;
case Vieworks::vivix::DIRECTION_CW180:
// CW180
break;
case Vieworks::vivix::DIRECTION_CW270:
// CW270
break;
default:
break;
}
}
else
{
// Failed to get direction information.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
Vieworks.vivix.net.DIRECTION DirectionInfo;
nResult = pDetector.DirectionGet(out DirectionInfo);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get direction information.
Switch (DirectionInfo)
{
case Vieworks.vivix.net.DIRECTION_NONE:
// None(CW0)
break;
case Vieworks.vivix.net.DIRECTION_CW90:
// CW90
break;
case Vieworks.vivix.net.DIRECTION_CW180:
// CW180
break;
case Vieworks.vivix.net.DIRECTION_CW270:
// CW270
break;
default:
break;
}
}
else
{
// Failed to get direction information.
}
}
6.1.29 SWTrigger
Syntax
RESULT SWTrigger (void);
RESULT_SUCCESS
|
Succeeded to S/W trigger.
|
RESULT_INVALID_PARAMETER
|
Detector ID is out of range.
|
RESULT_COMMAND_IS_NOT_READY
|
Cannot use S/W trigger since the detector is not in the state of normal acquisition.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to S/W trigger.
|
Remarks
This function can be used after opening detector connection.
The acquired dark image is sent to the NotifyFrameGrabberImageIn Callback function.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
pDetector->SetNotifyFrameGrabberImageInStart(NotifyFrameGrabberImageInstart);
pDetector->SetNotifyFrameGrabberImageIn(NotifyFrameGrabberImageIn);
pDetector->SetNotifyFrameGrabberImageInEnd(NotifyFrameGrabberImageEnd);
nResult = pDetector->SWTrigger();
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get dark image.
}
else
{
// Failed to get dark image.
}
}
void NotifyFrameGrabberImageInStart(Vieworks::vivix::DETECTOR_ID id, Vieworks::vivix::IMAGE_MODE imgMode)
{
// A function call when the image starts to be sent.
}
void NotifyFrameGrabberImageIn(Vieworks::vivix::DETECTOR_ID id, Vieworks::vivix::IMAGE_MODE imgMode, Vieworks::vivix::IMAGE_INFO* image)
{
// A function call when sending the acquired image.
}
void NotifyFrameGrabberImageInEnd(Vieworks::vivix::DETECTOR_ID id, Vieworks::vivix::IMAGE_MODE imgMode)
{
// A function call when the completing to send the image.
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
pDetector.SetDelegateFrameGrabberImageInStart(OnDelegateFrameGrabberImageInStart);
pDetector.SetDelegateFrameGrabberImageIn(OnDelegateFrameGrabberImageIn);
pDetector.SetDelegateFrameGrabberImageInEnd(OnDelegateFrameGrabberImageInEnd);
nResult = pDetector.SWTrigger();
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get dark image.
}
else
{
// Failed to get dark image.
}
}
void OnDelegateFrameGrabberImageInStart(int id, Vieworks.vivix.net.IMAGE_MODE imgMode)
{
// A function call when the image starts to be sent.
}
void OnDelegateFrameGrabberImageIn(int id, Vieworks.vivix.net.IMAGE_MODE imgMode, Vieworks.vivix.net.IMAGE_INFO* image)
{
// A function call when sending the acquired image.
}
void OnDelegateFrameGrabberImageInEnd(int id, Vieworks.vivix.net.IMAGE_MODE imgMode)
{
// A function call when the completing to send the image.
}
6.1.30 ExposureTimeSet
Sets the exposure time of detector
Syntax (C++)
RESULT ExposureTimeSet (
_In_ int val
);
Syntax (C#)
RESULT ExposureTimeSet (
int val
);
Parameters
val [in]
Exposure time
RESULT_SUCCESS
|
Succeeded to set exposure time.
|
RESULT_INVALID_PARAMETER
|
[val] is out of range.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode
|
RESULT_ERROR
|
Failed to set exposure time.
|
Remarks
Exposure section indicates the period (unit: ㎳) that the detector converts X-rays to image signals.
This value needs to be set longer than the maximum exposure time to prevent X-rays loss while converting it to image signals.
The unit of exposure time is msec.
The range of exposure time can be set from 100~10000. This function can be used after opening detector connection.
For the W type or N type detector, the changed value by the ExposureTimeSet function is not stored in the detector as a temporary value. When rebooting the detector, therefore, the changed value returns to the value which has been set from Setup. In case of the S type detector, the changed value is stored in the detector and is maintained even after rebooting the detector.
If the exposure time of the detector (which uses OSF) is changed by the function, OSF profile cannot generate automatically. If the exposure time is changed from Setup, the OSF profile generates automatically after checking its presence.
For drive mode supported detectors, exposure time is not settable while using CF/PF mode.
|
If you change the time settings, refresh the Offset data and generate new Gain data to acquire optimized images.
|
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
nResult = pDetector->ExposureTimeSet(500);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to set exposure time.
}
else
{
// Failed to set exposure time.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
nResult = pDetector.ExposureTimeSet(500);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to set exposure time.
}
else
{
// Failed to set exposure time.
}
}
6.1.31 ExposureTimeGet
Gets the exposure time of detector
Syntax (C++)
RESULT ExposureTimeGet (
_Out_ int* val
);
Syntax (C#)
RESULT ExposureTimeGet (
out int val
);
Parameters
val [out]
Exposure time
RESULT_SUCCESS
|
Succeeded to get exposure time.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to get exposure time.
|
Remarks
Exposure time means X-ray accumulate time.
Exposure section indicates the period (unit: ㎳) that the detector converts X-rays to image signals.
The unit of exposure time is msec.
This function can be used after opening detector connection.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
int iExposureTime = -1;
nResult = pDetector->ExposureTimeGet(&iExposureTime);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get exposure time.
}
else
{
// Failed to get exposure time.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
int iExposureTime = -1;
nResult = pDetector.ExposureTimeGet(out iExposureTime);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get exposure time.
}
else
{
// Failed to get exposure time.
}
}
6.1.32 ExpOKDelaySet
Sets the EXP_OK delay time of detector
Syntax (C++)
RESULT ExpOKDelaySet (
_In_ int val
);
Syntax (C#)
RESULT ExpOKDelaySet (
int val
);
Parameters
val [in]
EXP_OK delay time
RESULT_SUCCESS
|
Succeeded to set exposure OK delay time.
|
RESULT_INVALID_PARAMETER
|
[val] is out of range.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode
|
RESULT_ERROR
|
Failed to set exposure OK delay time.
|
Remarks
This function can be used after opening detector connection.
For the W type or N type detector, the changed value by the ExpOKDelaySet function is not stored in the detector as a temporary value. When rebooting the detector, therefore, the changed value returns to the value which has been set from Setup. In case of the S type detector, the changed value is stored in the detector and is maintained even after rebooting the detector.
|
If you change the time settings, refresh the Offset data and generate new Gain data to acquire optimized images.
|
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
nResult = pDetector->ExpOKDelaySet(5);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to set exposure OK delay.
}
else
{
// Failed to set exposure OK delay.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
nResult = pDetector.ExpOKDelaySet(5);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to set exposure OK delay.
}
else
{
// Failed to set exposure OK delay.
}
}
6.1.33 ExpOKDelayGet
Gets delay time of detector exposure OK
Syntax (C++)
RESULT ExpOKDelayGet (
_Out_ int* val
);
Syntax (C#)
RESULT ExpOKDelayGet (
out int val
);
Parameters
val [out]
Exposure OK delay time
RESULT_SUCCESS
|
Succeeded to get exposure OK delay time.
|
RESULT_INVALID_PARAMETER
|
[val] is NULL.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to get exposure OK delay time.
|
Remarks
This function can be used after opening detector connection.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
int iExpOKDelay = -1;
nResult = pDetector->ExpOKDelayGet(&iExpOKDelay);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get exposure OK delay.
}
else
{
// Failed to get exposure OK delay.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
int iExpOKDelay = -1;
nResult = pDetector.ExpOKDelayGet(out iExpOKDelay);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get exposure OK delay.
}
else
{
// Failed to get exposure OK delay.
}
}
6.1.34 GainTypeSet
Sets gain type (Gain pF value preset)
Syntax (C++)
RESULT GainTypeSet (
_In_ GAIN_PRESET type
);
Syntax (C#)
RESULT GainTypeSet (
GAIN_PRESET type
);
Parameters
type [in]
Gain type
RESULT_SUCCESS
|
Succeeded to set gain type.
|
RESULT_INVALID_PARAMETER
|
[type] is invalid or out of range.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to set gain type.
|
Remarks
This function can be used after opening detector connection.
For the FXRD-1717S, FXRD-1717V, FXRD-1417S, and FXRD-1417W models, the Gain Type can be set from 0~4.
For the FXRDN models, the Gain Type can be set from 0~5.
This function can be used after opening detector connection.
For the W type or N type detector, the changed value by the GainTypeSet function is not stored in the detector as a temporary value. When rebooting the detector, therefore, the changed value returns to the value which has been set from Setup. In case of the S type detector, the changed value is stored in the detector and is maintained even after rebooting the detector.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
nResult = pDetector->GainTypeSet(Vieworks::vivix::GAIN_TYPE_2);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to set gain type
}
else
{
// Failed to set gain type
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
nResult = pDetector.GainTypeSet(Vieworks.vivix.net.GAIN_TYPE_2);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to set gain type
}
else
{
// Failed to set gain type
}
}
6.1.35 GainTypeGet
Gets gain type (Gain pF value preset)
Syntax (C++)
RESULT GainTypeGet (
_Out_ GAIN_PRESET* type
);
Syntax (C#)
RESULT GainTypeGet (
out GAIN_PRESET type
);
Parameters
type [out]
Gain type
RESULT_SUCCESS
|
Succeeded to get gain type
|
RESULT_INVALID_PARAMETER
|
[type] is null.
|
RESULT_INVALID_MODEL
|
Detector model is invalid.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to get gain type
|
Remarks
This function can be used after opening detector connection.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
Vieworks::vivix::GAIN_PRESET GainPreset;
nResult = pDetector->GainTypeGet(&GainPreset);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get gain type
}
else
{
// Failed to get gain type
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
Vieworks.vivix.net.GAIN_PRESET GainPreset;
nResult = pDetector.GainTypeGet(out GainPreset);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get gain type
}
else
{
// Failed to get gain type
}
}
6.1.36 TriggerDebounceSet
Sets the trigger debounce time of detector by debounce types
Syntax (C++)
RESULT TriggerDebounceSet (
_In_ DEBOUNCE_TYPE type,
_In_ int val
);
Syntax (C#)
RESULT TriggerDebounceSet (
DEBOUNCE_TYPE type,
int val
);
Parameters
type [in]
Debounce type.
Val [in]
Debounce time by the type.
RESULT_SUCCESS
|
Succeeded to set trigger debounce time.
|
RESULT_INVALID_PARAMETER
|
[val] or [type] is out of range.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to set trigger debounce time.
|
Remarks
For FXRD-1717S, FXRD-1717V, FXRD-1417S and FXRD-1417W, the range of debounce time can be set from 0~655(ms).
For FXRDN detectors, the range of debounce time can be set from 0~5000(μs) if the SDK version is less than V1.0.4.0, and from 0~50(ms) if the SDK version is V1.0.4.0 or higher. The input range is same, but the input unit of parameter is changed.
For multi frame supported detectors, the value is set separately for radio mode and CF/PF mode.
This function can be used after opening detector connection.
DEBOUNCE_DR is used to remove the trigger signal occurred due to external noise when DR Trigger is set as the exposure mode. If the value is set to less than 3 ㎳, the detector may not acquire images.
DEBOUNCE_AED is parameter for non-line trigger debounce time.
DEBOUNCE_AED is used to prevent trigger signals occurred due to external noise when AED is set as the exposure mode. If the DEBOUNCE_AED value is set more than the X-ray exposure time, the detector may not acquire images. If unwanted images are acquired without X-ray exposure while operating the equipment, set DEBOUNCE_AED with 1㎳ increments. However, make sure not to exceed the value more than 10㎳.
For the W type or N type detector, the changed value by the TriggerDebounceSet function is not stored in the detector as a temporary value. When rebooting the detector, therefore, the changed value returns to the value which has been set from Setup. In case of the S type detector, the changed value is stored in the detector and is maintained even after rebooting the detector.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
nResult = pDetector->TriggerDebounceSet(Vieworks::vivix::DEBOUNCE_DR, 10);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get DR trigger debounce.
}
else
{
// Failed to get DR trigger debounce.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
nResult = pDetector.TriggerDebounceSet(Vieworks.vivix.net.DEBOUNCE_DR, 10);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get DR trigger debounce.
}
else
{
// Failed to get DR trigger debounce.
}
}
6.1.37 TriggerDebounceGet
Gets the trigger debounce time of detector by debounce types
Syntax (C++)
RESULT TriggerDebounceGet (
_In_ DEBOUNCE_TYPE type,
_Out_ int* val
);
Syntax (C#)
RESULT TriggerDebounceGet (
DEBOUNCE_TYPE type,
out int val
);
Parameters
type [in]
Debounce type.
Val [out]
Debounce time by the type.
RESULT_SUCCESS
|
Succeeded to get trigger debounce time.
|
RESULT_INVALID_PARAMETER
|
[type] value is invalid.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to get trigger debounce time.
|
Remarks
For FXRD-1417S, FXRD-1717S, FXRD-1717V and FXRD-1417W, the unit value transferred with the relative function is ‘msec’.
For FXRD-1012N, FXRD-1417N, FXRD-1717N and VXTD-2532E, the unit value transferred with SDK under V1.0.4.0 is ‘μsec’. If the SDK version is V1.0.4.0 or higher, the unit of transferred value is ‘msec’.
Debounce DR is parameter for active (DR) or passive line trigger debounce time.
Debounce AED is parameter for non-line trigger debounce time.
This function can be used after opening detector connection.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
int iTriggerDebounce = -1;
nResult = pDetector->TriggerDebounceGet(Vieworks::vivix::DEBOUNCE_TYPE::DEBOUNCE_DR, &iTriggerDebounce);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get DR trigger debounce.
}
else
{
// Failed to get DR trigger debounce.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
int iTriggerDebounce = -1;
nResult = pDetector.TriggerDebounceGet(Vieworks.vivix.net.DEBOUNCE_TYPE.DEBOUNCE_DR, out iTriggerDebounce);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get DR trigger debounce.
}
else
{
// Failed to get DR trigger debounce.
}
}
6.1.38 AEDOnOff
Turns on / off the AED sensors of detector in runtime
Syntax (C++)
RESULT AEDOnOff (
_In_ bool on
);
Syntax (C#)
RESULT AEDOnOff (
bool on
);
Parameters
on [in]
AED sensor on or off
RESULT_SUCCESS
|
Succeeded to set AED Sensor on/off.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to set AED Sensor on/off.
|
Remarks
This function can be used after opening detector connection.
The image cannot be taken by using AED when it is disabled.
The AED sensor is turned back on when the detector and SDK are disconnected.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
nResult = pDetector->AEDOnOff(true);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to enable AED.
}
else
{
// Failed to enable AED.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
nResult = pDetector.AEDOnOff(true);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to enable AED.
}
else
{
// Failed to enable AED.
}
}
6.1.39 AEDErrorStateGet
Gets the error state of the AED sensor
Syntax (C++)
RESULT AEDErrorStateGet (
_out_ bool* pbError
);
Syntax (C#)
RESULT AEDErrorStateGet (
Out bool error
);
Parameters
pbError [out]
It gets the error state of the AED sensor.
RESULT_SUCCESS
|
Succeeded to get AED Sensor error state.
|
RESULT_ERROR
|
Failed to get AED Sensor error state.
|
Remarks
This function can be used after opening detector connection.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
bool bError = false;
nResult = pDetector->AEDErrorStateGet(&bError);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
}
else
{
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
bool bError = false;
nResult = pDetector.AEDErrorStateGet(&bError);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
}
else
{
}
}
6.1.40 AEDErrorStatusClear
Clears the error state of the AED sensor
Syntax (C++)
RESULT AEDErrorStatusClear();
Syntax (C#)
RESULT AEDErrorStatusClear();
RESULT_SUCCESS
|
Succeeded to clear AED Sensor error state.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to clear AED Sensor error state.
|
Remarks
This function can be used after opening detector connection.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
nResult = pDetector->AEDErrorStatusClear();
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
}
else
{
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
bool bError = false;
nResult = pDetector.AEDErrorStatusClear();
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
}
else
{
}
}
6.1.41 CalibrationModeSet
Enables or disables the calibration mode
Syntax (C++)
RESULT CalibrationModeSet (
_In_ bool enable
);
Syntax (C#)
RESULT CalibrationModeSet (
bool enable
);
Parameters
enable [in]
Calibration Mode enable/disable
RESULT_SUCCESS
|
Succeeded to set calibration mode.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to set calibration mode.
|
Remarks
This function can be used after opening detector connection.
Be sure to turn on the calibration mode if the calibration is processed by using the provided function, not from the Setup program.
The process of calibration means Offset Calibration, Defect Update, and Gain Calibration. After completing the calibration, be sure to turn off the calibration mode to get the image normally.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
nResult = pDetector->CalibrationModeSet(true);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to enable calibration mode.
}
else
{
// Failed to enable calibration mode.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
nResult = pDetector.CalibrationModeSet(true);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to enable calibration mode.
}
else
{
// Failed to enable calibration mode.
}
}
6.1.42 CalibrationModeGet
Checks the setting value of the current calibration mode
Syntax (C++)
RESULT CalibrationModeGet (
_Out_ bool* enable
);
Syntax (C#)
RESULT CalibrationModeGet (
out bool enable
);
Parameters
enable [out]
Calibration Mode enable/disable
RESULT_SUCCESS
|
Succeeded to get calibration mode state.
|
RESULT_INVALID_PARAMETER
|
[enable] value is null.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to get calibration mode state.
|
Remarks
This function can be used after opening detector connection.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
bool bCalibrationMode = false;
nResult = pDetector->CalibrationModeSet(true);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to enable calibration mode.
}
else
{
// Failed to enable calibration mode.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
bool bCalibrationMode = false;
nResult = pDetector.CalibrationModeSet(true);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to enable calibration mode.
}
else
{
// Failed to enable calibration mode.
}
}
6.1.43 OffsetCalibration
Performs offset calibration
Syntax (C++)
RESULT OffsetCalibration (
_In_ OFFSET_CALIBRATION_PARAM offsetParam
);
Syntax (C#)
RESULT OffsetCalibration (
OFFSET_CALIBRATION_PARAM offsetParam
);
RESULT_SUCCESS
|
Succeeded to perform offset calibration.
|
RESULT_INVALID_PARAMETER
|
The invalid item exists among the [offsetParam] items.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_NOT_CALIBRATION_MODE
|
Detector is not in calibration mode.
|
RESULT_DETECTOR_OFFSET_CALIBRATION_IS_NOT_READY
|
Detector is not ready to perform offset calibration.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_NOT_SUPPORTED_MODEL
|
Detector is not supported model.
|
RESULT_ERROR
|
Failed to perform offset calibration.
|
Remarks
This function can be used after opening detector connection.
To perform the offset calibration after image acquisition with ghost removal, detector is required to wait 300 seconds.
The allowed number of images used for offset calibration is 1~255.
In order to perform offset calibration, user must set to enable calibration mode by CalibrationModeSet function.
For the FXRD-1717S, FXRD-1717V and FXRD-1417S models, save the calibration file as a file format and load it to use after completing the Offset calibration.
For the FXRD-1417W, FXRD-1012N, FXRD-1417N, FXRD-1717N and VXTD-2532E models, it is not supported to process the CalibrationSave function since the Offset calibration file is stored in the detector after completing the Off set calibration.
Refer to <4.1.64.1.6 OFFSET_CALIBRATION_PARAMOFFSET_CALIBRATION_PARAM> for more information on Offset Calibration.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
pDetector->SetNotifyCalibrationStep(NotifyCalibrationStep);
pDetector->SetNotifyCalibrationResult(NotifyCalibrationResult);
nResult = pDetector->CalibrationMode(true);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to enable calibration mode
Vieworks::vivix::OFFSET_CALIBRATION_PARAM OffsetParam;
OffsetParam.action = Vieworks::vivix::OFFSET_CALIBRATION_PARAM::_ACTION::START;
OffsetParam.shotCount = 5;
nResult = pDetector->OffsetCalibration(OffsetParam);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to begin offset calibration.
}
else
{
// Failed to begin offset calibration.
}
}
else
{
// Failed to enable calibration mode.
}
}
void NotifyCalibrationStep(Vieworks::vivix::DETECTOR_ID id, Vieworks::vivix::CALIBRATION_TYPE calibrationType, unsigned int stage, float avgValue, Vieworks::vivix::IMAGE_INFO* imgInfo)
{
// Calibration Step Information.
}
void NotifyCalibrationResult(Vieworks::vivix::DETECTOR_ID id, Vieworks::vivix::CALIBRATION_TYPE type, bool done)
{
// Calibration Result Information.
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
pDetector.SetDelegateCalibrationStep(OnDelegateCalibrationStep);
pDetector.SetDelegateCalibrationResult(OnDelegateCalibrationResult);
nResult = pDetector.CalibrationMode(true);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to enable calibration mode
Vieworks.vivix.net.OFFSET_CALIBRATION_PARAM OffsetParam;
OffsetParam.action = Vieworks.vivix.net.OFFSET_CALIBRATION_PARAM._ACTION.START;
OffsetParam.shotCount = 5;
nResult = pDetector.OffsetCalibration(OffsetParam);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to begin offset calibration.
}
else
{
// Failed to begin offset calibration.
}
}
else
{
// Failed to enable calibration mode.
}
}
void OnDelegateCalibrationStep(int id, Vieworks.vivix.net.CALIBRATION_TYPE calibrationType, uint stage, float avgValue, Vieworks.vivix.net.IMAGE_INFO* imgInfo)
{
// Calibration Step Information.
}
void OnDelegateCalibrationResult(int id, Vieworks.vivix.net.CALIBRATION_TYPE type, bool done)
{
// Calibration Result Information.
}
6.1.44 DefectUpdate
Updates the latest data file of defect map
Syntax (C++)
RESULT DefectUpdate (
_In_ DEFECT_UPDATE_PARAM defectUpdateParam
);
Syntax (C#)
RESULT DefectUpdate (
DEFECT_UPDATE_PARAM defectUpdateParam
);
RESULT_SUCCESS
|
Succeeded to perform defect update.
|
RESULT_INVALID_PARAMETER
|
The invalid item exists among the [defectUpdateParam] items.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_NOT_OFFSET_CALIBRATED
|
Offset Calibration Data is not loaded
|
RESULT_DETECTOR_NOT_DEFECT_CALIBRATED
|
Defect Calibration Data is not loaded.
|
RESULT_DETECTOR_NOT_GAIN_CALIBRATED
|
Gain Calibration Data Is not loaded.
|
RESULT_DETECTOR_NOT_CALIBRATION_MODE
|
Detector is not in calibration mode.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to perform defect update.
|
Remarks
This function can be used after opening detector connection.
In order to perform defect update, user must set to enable calibration mode by CalibrationModeSet function.
This function can be operated when the state of Offset Calibration, Defect Calibration, and Gain Calibration is ready.
Refer to <4.1.74.1.7 DEFECT_UPDATE_PARAMDEFECT_UPDATE_PARAM> for more information on Defect Update.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
pDetector->SetNotifyCalibrationStep(NotifyCalibrationStep);
pDetector->SetNotifyCalibrationResult(NotifyCalibrationResult);
nResult = pDetector->CalibrationMode(true);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to enable calibration mode
Vieworks::vivix::DEFECT_UPDATE_PARAM DefectParam;
DefectParam.action = Vieworks::vivix::DEFECT_UPDATE_PARAM::_ACTION::START;
DefectParam.numberofshot = 5;
DefectParam.threshhold = 5;
DefectParam.offset = 100;
nResult = pDetector->DefectUpdate(DefectParam);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to begin defect update.
}
else
{
// Failed to begin defect update.
}
}
else
{
// Failed to enable calibration mode.
}
}
void NotifyCalibrationStep(Vieworks::vivix::DETECTOR_ID id, Vieworks::vivix::CALIBRATION_TYPE calibrationType, unsigned int stage, float avgValue, Vieworks::vivix::IMAGE_INFO* imgInfo)
{
// Calibration Step Information.
}
void NotifyCalibrationResult(Vieworks::vivix::DETECTOR_ID id, Vieworks::vivix::CALIBRATION_TYPE type, bool done)
{
// Calibration Result Information.
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
pDetector.SetDelegateCalibrationStep(OnDelegateCalibrationStep);
pDetector.SetDelegateCalibrationResult(OnDelegateCalibrationResult);
nResult = pDetector.CalibrationMode(true);
if(nRestul == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to enable calibration mode
Vieworks.vivix.net.DEFECT_UPDATE_PARAM DefectParam;
DefectParam.action = Vieworks.vivix.net.DEFECT_UPDATE_PARAM._ACTION.START;
DefectParam.numberofshot = 5;
DefectParam.threshhold = 5;
DefectParam.offset = 100;
nResult = pDetector.DefectUpdate(DefectParam);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to begin defect update.
}
else
{
// Failed to begin defect update.
}
}
else
{
// Failed to enable calibration mode.
}
}
void OnDelegateCalibrationStep(int id, Vieworks.vivix.net.CALIBRATION_TYPE calibrationType, uint stage, float avgValue, Vieworks.vivix.net.IMAGE_INFO* imgInfo)
{
// Calibration Step Information.
}
void OnDelegateCalibrationResult(int id, Vieworks.vivix.net.CALIBRATION_TYPE type, bool done)
{
// Calibration Result Information.
}
6.1.45 GainCalibration
Performs gain calibration
Syntax (C++)
RESULT GainCalibration (
_In_ GAIN_CALIBRATION_PARAM gainParam
);
Syntax (C#)
RESULT GainCalibration (
GAIN_CALIBRATION_PARAM gainParam
);
RESULT_SUCCESS
|
Succeeded to perform gain calibration.
|
RESULT_INVALID_PARAMETER
|
Detector ID is out of range.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_NOT_CALIBRATION_MODE
|
Detector is not in calibration mode.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_DETECTOR_NOT_OFFSET
_CALIBRATED
|
Offset is not calibrated.
|
RESULT_DETECTOR_NOT_DEFECT
_CALIBRATED
|
Defect is not calibrated.
|
RESULT_ERROR
|
Failed to perform gain calibration.
|
Remarks
This function can be used after opening detector connection.
In order to perform gain calibration, user must set to enable calibration mode by CalibrationModeSet function.
This function can be operated when the state of Offset Calibration and Defect Calibration is ready.
Refer to <4.1.84.1.8 GAIN_CALIBRATION_PARAMGAIN_CALIBRATION_PARAM> for more information on Gain Calibration.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
pDetector->SetNotifyCalibrationStep(NotifyCalibrationStep);
pDetector->SetNotifyCalibrationResult(NotifyCalibrationResult);
nResult = pDetector->CalibrationMode(true);
if(nRestul == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to enable calibration mode
Vieworks::vivix::GAIN_CALIBRATION_PARAM GainParam;
GainParam.action = Vieworks::vivix::GAIN_CALIBRATION_PARAM::_ACTION::START;
GainParam.shotCount = 10;
nResult = pDetector->GainCalibration(GainParam);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to begin defect update.
}
else
{
// Failed to begin defect update.
}
}
else
{
// Failed to enable calibration mode.
}
}
void NotifyCalibrationStep(Vieworks::vivix::DETECTOR_ID id, Vieworks::vivix::CALIBRATION_TYPE calibrationType, unsigned int stage, float avgValue, Vieworks::vivix::IMAGE_INFO* imgInfo)
{
// Calibration Step Information.
}
void NotifyCalibrationResult(Vieworks::vivix::DETECTOR_ID id, Vieworks::vivix::CALIBRATION_TYPE type, bool done)
{
// Calibration Result Information.
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
pDetector.SetDelegateCalibrationStep(OnDelegateCalibrationStep);
pDetector.SetDelegateCalibrationResult(OnDelegateCalibrationResult);
nResult = pDetector.CalibrationMode(true);
if(nRestul == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to enable calibration mode
Vieworks.vivix.net.GAIN_CALIBRATION_PARAM GainParam;
GainParam.action = Vieworks.vivix.net.GAIN_CALIBRATION_PARAM._ACTION.START;
GainParam.shotCount = 10;
nResult = pDetector.GainCalibration(GainParam);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to begin defect update.
}
else
{
// Failed to begin defect update.
}
}
else
{
// Failed to enable calibration mode.
}
}
void OnDelegateCalibrationStep(int id, Vieworks.vivix.net.CALIBRATION_TYPE calibrationType, uint stage, float avgValue, Vieworks.vivix.net.IMAGE_INFO* imgInfo)
{
// Calibration Step Information.
}
void OnDelegateCalibrationResult(int id, Vieworks.vivix.net.CALIBRATION_TYPE type, bool done)
{
// Calibration Result Information.
}
6.1.46 OSFEnableGet
Brings the usage setting of OSF
Syntax (C++)
RESULT OSFEnableGet (
_Out_ bool* enable
);
Syntax (C#)
RESULT OSFEnableGet (
out bool enable
);
Parameters
enable [Out]
Enable OSF.
RESULT_SUCCESS
|
Succeeded to get OSF on/off.
|
RESULT_INVALID_PARAMETER
|
[enable] is NULL.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
Remarks
This function can be used after opening detector connection.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
bool bOSFEnable = false;
nResult = pDetector->OSFEnableGet(&bOSFEnable);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get OSF.
}
else
{
// Failed to get OSF.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
bool bOSFEnable = false;
nResult = pDetector.OSFEnableGet(out bOSFEnable);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get OSF.
}
else
{
// Failed to get OSF.
}
}
6.1.47 OSFEnableSet
Enables or disables the use of OSF
Syntax (C++)
RESULT OSFEnableSet (
_In_ bool enable
);
Syntax (C#)
RESULT OSFEnableSet (
bool enable
);
Parameters
enable [in]
Enable OSF
RESULT_SUCCESS
|
Succeeded to set OSF on/off.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_NOT_SUPPORTED_VERSION
|
Not supported version.
|
RESULT_OSF_DATA_IS_NOT_READY
|
No OSF profile exists.
|
RESULT_ERROR
|
Failed to set OSF on/off.
|
Remarks
This function can be used after opening detector connection.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
bool bOSFEnable = false;
nResult = pDetector ->OSFEnableGet(&bOSFEnable);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to set OSF.
}
else
{
// Failed to set OSF.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
bool bOSFEnable = false;
nResult = pDetector .OSFEnableSet(bOSFEnable);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to set OSF.
}
else
{
// Failed to set OSF.
}
}
6.1.48 OSFProfileListGet
Gets a list of OSF profile
Syntax (C++)
RESULT OSFProfileListGet (
_Out_ OSF_PROFILE_LIST* OSFProfileLIst
);
Syntax (C#)
RESULT OSFProfileListGet (
out OSF_PROFILE_LIST OSFProfileLIst
);
Parameters
OSFProfileLIst [out]
List of OSF profile in detector.
RESULT_SUCCESS
|
Succeeded to get OSF profile list.
|
RESULT_INVALID_PARAMETER
|
[OSFProfileList] is NULL.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_ERROR
|
Failed to get OSF profile list.
|
Remarks
This function can be used after opening detector connection.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
Vieworks::vivix::OSF_PROFILE_LIST osfProfileList;
nResult = pDetector->OSFProfileListGet(&osfProfileList);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get OSF profile list.
}
else
{
// Failed to OSF profile list.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
Vieworks::vivix::net::OSF_PROFILE_LIST osfProfileList = null;
nResult = pDetector.OSFProfileLIstGet(out osfProfileList);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get OSF profile list.
}
else
{
// Failed to get OSF profile list.
}
}
6.1.49 TemperatureGet
Gets the temperature of detector information
Syntax (C++)
RESULT TemperatureGet (
_Out_ double* temperature
);
Syntax (C#)
RESULT TemperatureGet (
out double temperature
);
Parameters
temperature [out]
Current temperature of detector.
RESULT_SUCCESS
|
Succeeded to get temperature of detector.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to get temperature information.
|
Remarks
This function can be used after opening detector connection.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
double dTemperature;
nResult = pDetector->TemperatureGet(&dTemperature);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get temperature information.
}
else
{
// Failed to get temperature information.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
double dTemperature;
nResult = pDetector. TemperatureGet(out dTemperature);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get temperature information.
}
else
{
// Failed to get temperature information.
}
}
6.1.50 CompanyCodeGet
Checks the serial number assigned to the specific companies
Syntax (C++)
RESULT CompanyCodeGet (
_Out_ unsigned long* code
);
Syntax (C#)
RESULT CompanyCodeGet (
out uint code
);
Parameters
code [out]
Company Code
RESULT_SUCCESS
|
Succeeded to get company code.
|
RESULT_INVALID_PARAMETER
|
[code] is NULL.
|
RESULT_NOT_SUPPORTED_MODEL
|
Detector is not supported model.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to get company code.
|
Remarks
This function can be used after opening detector connection.
This function does not supported FXRD-1417S and FXRD-1717S Model.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
unsigned long iCompanyCode = 0;
pDetector->CompanyCodeGet(&iCompanyCode);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get company code.
}
else
{
// Failed to get company code.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
uint iCompanyCode = 0;
pDetector.CompanyCodeGet(out iCompanyCode);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get company code.
}
else
{
// Failed to get company code.
}
}
6.1.51 PacketTrigger
SDK sends a packet trigger signal directly to the detector.
With this function, you can implement DR Trigger without SCU. The SDK user must implement the signal transmission / reception with the generator that SCU has performed.
Syntax
RESULT PacketTrigger (int nUserTimeoutMs = -1);
RESULT_SUCCESS
|
Succeeded to transmit a packet trigger signal and to receive EXP_OK signal from the detector.
|
RESULT_COMMAND_IS_NOT_READY
|
Cannot use packet trigger since the detector is not in the state of normal acquisition. Or the trigger mode is not set to DR trigger, or the exposure time is not set to 800 or higher.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_NOT_SUPPORTED_VERSION
|
Not supported F/W version.
|
RESULT_COMMAND_TIMEOUT
|
Exposure OK has been timeout.
|
RESULT_ERROR
|
Failed to transmit a packet trigger signal.
|
Remarks
-
This function can be used after opening detector connection.
-
This function is only available when Trigger mode is set to DR.
-
This function is available only when nUserTimeoutMs is not entered and the exposure time is set to 800 or higher.
-
This function manually designates timeout of Exposure OK if nUserTimeoutMs is entered. The value should be no higher than ExpOkDelayTime + (Exposure time / 2).
-
If exp ok is later than timeout, the acquired image is dropped. Timeout
-
If image is dropped, ERR_IMAGE_ACQ_FAILED is transmitted via notifyError callback.
-
This function enables the SDK user to enable DR Trigger without using SCU.
-
This SDK function is available only when F/W that supports this operation is installed in the detector.
-
Please refer to the table below for available versions.
FXRD-1417S
|
v2.1
|
FXRD-1717S
|
v2.2
|
FXRD-1717V
|
v1.0
|
FXRD-1417W
|
v2.0
|
FXRD-1012N
|
v1.0.3.40
|
FXRD-1417N
|
v1.0.0.8
|
FXRD-1717N
|
v1.0.1.40
|
VXTD-2532E
|
V1.0.0.4
|
Others
|
All
|
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
nResult = pDetector->PacketTrigger();
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to transmit a packet trigger signal.
}
else
{
// Failed to transmit a packet trigger signal.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
nResult = pDetector.PacketTrigger();
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to transmit a packet trigger signal.
}
else
{
// Failed to transmit a packet trigger signal.
}
}
6.1.52 RecentImageGet
Gets a recently captured image through the image ID
Syntax (C++)
RESULT RecentImageGet (
_In_ int nImageID
);
Syntax (C#)
RESULT RecentImageGet (
int nImageID
);
Parameters
nImageID [in]
Enter the ID of the image you want to get.
RESULT_SUCCESS
|
Succeeded to get the recent image.
|
RESULT_DATA_NOT_FOUND
|
Failed to get the recent image.
|
Remarks
This function can be used after opening detector connection.
-
The image is sent to the NotifyFrameGrabberImageIn Callback function.
-
Passes the file found in the path set through the KeepRecentImageSet function to the user.
-
When the image stored on the hard disk is acquired through NotifyFrameGrabberImageIn, the value of Vieworks::vivix::IMAGE_MODE among parameters is transmitted to IMAGE_MODE_BACKUP.
-
For FXRD-1417W, stored image and backup image are additionally searched.
-
For FXRD-1417N and 1717N, backup images are additionally searched.
-
For FXRD-1012N and VXTD-2532E, backup images and FTM images are additionally searched.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
int nImageID = FFFFFFF; //User should know the previous image id.
nResult = pDetector->RecentImageGet(nImageID);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get the recent image.
}
else
{
// Failed to get the recent image.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
int nImageID = FFFFFFF; //User should know the previous image id.
nResult = pDetector.RecentImageGet(nImageID);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get the recent image.
}
else
{
// Failed to get the recent image.
}
}
6.1.53 ShockReportListGet
Gets a list of shock reports during input period.
Syntax (C++)
RESULT ShockReportListGet(
_Out_ LOG_LIST* logList
);
Syntax (C#)
RESULT ShockReportListGet(
out LOG_LIST logList
);
Parameters
logList [out]
shock reports list.
RESULT_SUCCESS
|
Succeeded to get list.
|
RESULT_INVALID_PARAMETER
|
[logList] is NULL.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to get list.
|
Remarks
-
This function can be used after opening detector connection. Input Timestamp to startDate and endDate of LOG_LIST as a parameter to search the reports in the certain period. Input 0 to startDate and endDate and send it as a parameter if you need the reports list of the whole period.
-
Check up to the time (in seconds) of the input timestamp.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
Vieworks::vivix::LOG_LIST LogList;
CTime t1(2015, 3, 10, 0, 0, 0);
CTime t2(2015, 3, 12, 0, 0, 0);
LogList.startDate = t1.GetTime();
LogList.endDate = t2.GetTime();
nResult = pDetector->ShockReportListGet(&LogList);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded.
}
else
{
// Failed.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
Vieworks.vivix.net.LOG_LIST LogList;
CTime t1(2015, 3, 10, 0, 0, 0);
CTime t2(2015, 3, 12, 0, 0, 0);
LogList.startDate = t1.GetTime();
LogList.endDate = t2.GetTime();
nResult = pDetector.ShockReportListGet(out LogList);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded.
}
else
{
// Failed.
}
}
6.1.54 ShockReportGet
Syntax (C++)
RESULT ShockReportGet(
_In_ LOG_DATA* logData
);
Syntax (C#)
RESULT ShockReportGet(
LOG_DATA* logData
);
Parameters
logData [in]
Log data
RESULT_SUCCESS
|
Succeeded to get the shock report.
|
RESULT_INVALID_PARAMETER
|
[logData] is NULL.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to get the shock report.
|
Remarks
This function can be used after opening detector connection. Assign the shock report to be brought by using LOG_DATA in the LOG_LIST structure, which was acquired by ShockReportListGet. The report is saved to “Detector\[Serial number]” at the bottom of the storage route of SDK log.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
Vieworks::vivix::LOG_LIST LogList;
CTime t1(2015, 3, 10, 0, 0, 0);
CTime t2(2015, 3, 12, 0, 0, 0);
LogList.startDate = t1.GetTime();
LogList.endDate = t2.GetTime();
nResult = pDetector->ShockReportListGet(&LogList);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
if(LogList.LogCount > 0)
{
nResult = pDetector->ShockReportGet(&LogList.LogList[0]);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded.
}
else
{
// Failed.
}
}
}
else
{
// Failed to get list.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
Vieworks.vivix.net.LOG_LIST LogList;
CTime t1(2015, 3, 10, 0, 0, 0);
CTime t2(2015, 3, 12, 0, 0, 0);
LogList.startDate = t1.GetTime();
LogList.endDate = t2.GetTime();
nResult = pDetector.ShockReportListGet(out LogList);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
if(LogList.LogCount > 0)
{
nResult = pDetector.ShockReportGet(LogList.LogList[0]);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded.
}
else
{
// Failed.
}
}
}
else
{
// Failed to get list.
}
}
6.1.55 DigitalOffsetSet
Sets the digital offset value of detector
Syntax (C++)
RESULT DigitalOffsetSet (
_In_ int nVal
);
Syntax (C#)
RESULT DigitalOffsetSet (
int offset
);
Parameters
nVal[in]
offset value
Return Values
RESULT_SUCCESS
|
Succeeded to set value.
|
RESULT_INVALID_PARAMETER
|
Digital Offset is out of range.
|
RESULT_DETECTOR_NO_INFORMATION
|
There is no detector information.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_ERROR
|
Failed to set value.
|
Remarks
This function can be used after opening detector connection.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
int nOffset = 100;
nResult = pDetector->DigitalOffsetSet(nOffset);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to set digital offset.
}
else
{
// Failed to set digital offset.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
int nOffset = 100;
nResult = pDetector. DigitalOffsetSet (nOffset);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to set digital offset.
}
else
{
// Failed to set digital offset.
}
}
6.1.56 DigitalOffsetGet
Gets digital offset value of detector
Syntax (C++)
RESULT DigitalOffsetGet (
_Out_ int pnVal
);
Syntax (C#)
RESULT DigitalOffsetGet (
out int offset
);
Parameters
nVal [out]
digital offset value
Return Values
RESULT_SUCCESS
|
Succeeded to get value.
|
RESULT_INVALID_PARAMETER
|
Parameter is null.
|
RESULT_DETECTOR_NO_INFORMATION
|
There is no detector information.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_ERROR
|
Failed to get value.
|
Remarks
This function can be used after opening detector connection.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
int nOffset = 0;
nResult = pDetector->DigitalOffsetGet(&nOffset);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get offset.
}
else
{
// Failed to get offset.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
int nOffset = 0;
nResult = pDetector. DigitalOffsetGet(out nOffset);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get offset.
}
else
{
// Failed to get offset.
}
}
6.1.57 AccelerationValueGet
Gets position information of the detector
Syntax (C++)
RESULT AccelerationValueGet (
_Out_ int* posX,
_Out_ int* posY,
_Out_ int* posZ,
_Out_ float* pitch,
_Out_ float* roll
);
Syntax (C#)
RESULT AccelerationValueGet (
out int* posX,
out int* posY,
out int* posZ,
out float* pitch,
out float* roll
);
Parameters
posX [out]
A variable for indicating the axis-X position of detector.
posY [out]
A variable for indicating the axis-Y position of detector.
posZ [out]
A variable for indicating the axis-Z position of detector.
roll [out]
A variable for indicating the roll position of detector.
pitch [out]
A variable for indicating the pitch position of detector.
Return Values
RESULT_SUCCESS
|
Succeeded to get position information.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
Remarks
This function can be used after opening detector connection.
This function works only if the detector has an acceleration sensor.
The pitch and roll values are displayed in units of 3 degrees.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
int posX, posY, posZ;
float roll, pitch;
nResult = pDetector ->AccelerationValueGet(&posX, &posY, &posZ, &roll, &pitch);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get values.
}
else
{
// Failed to get values.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
int posX, posY, posZ;
float roll, pitch;
nResult = pDetector. AccelerationValueGet(out posX, out posY, out posZ, out roll, out pitch);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get position information.
}
else
{
// Failed to get position information.
}
}
6.1.58 AccelerationCalibration
Calibrates the acceleration sensor
Syntax
RESULT AccelerationCalibration ();
Return Values
RESULT_SUCCESS
|
Acceleration sensor calibration command was sent normally.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_NOT_SUPPORTED_MODEL
|
There is no acceleration sensor in the detector..
|
RESULT_ERROR
|
Failed to send the accelerometer calibration command.
|
Remarks
This function can be used after opening detector connection.
It is available to check the progress using the API below.
SetNotify/DelegateAccSensorCalibrationProgress, Notify/DelegateAccSensorCalibrationProgress
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
nResult = pDetector-> AccelerationCalibration();
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
nResult = pDetector. AccelerationCalibration();
}
6.1.59 PartialModeGet
Gets panel indexes of partial mode
Syntax
virtual RESULT PartialModeGet(int* pnFirstPanelIndex, int* pnLastPanelIndex);
RESULT_SUCCESS
|
Succeeded to get partial mode info.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_NOT_SUPPORTED_MODEL
|
Detector is not partial mode supported.
|
RESULT_ERROR
|
Failed to send partial mode get command.
|
Remarks
This function can be used after opening detector connection.
Partial mode related API’s are supported for multi panel detectors.
The index of the top most panel is 0, the next is 1, and so on.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
int nFirst, nLast;
nResult = pDetector-> PartialModeGet(&nFirst, &nLast);
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
int nFirst, nLast;
nResult = pDetector. PartialModeGet (out nFirst, out nLast);
6.1.60 PartialModeSet
Sets partial mode by panel indexes
Syntax
virtual RESULT PartialModeSet(int nFirstPanelIndex, int nLastPanelIndex);
RESULT_SUCCESS
|
Succeeded to set partial mode info.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_NOT_SUPPORTED_MODEL
|
Detector is not partial mode supported.
|
RESULT_ERROR
|
Failed to send partial mode set command.
|
Remarks
This function can be used after opening detector connection.
Partial mode related API’s are supported for multi panel detectors.
The index of the top most panel is 0, the next is 1, and so on.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
int nFirst = 0, nLast = 2;
nResult = pDetector-> PartialModeSet(nFirst, nLast);
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
int nFirst = 0, nLast = 2;
nResult = pDetector. PartialModeSet(nFirst, nLast);
6.1.61 BorderCorrectionGet
Gets border correction state
Syntax
virtual RESULT BorderCorrectionGet(bool* pbEnable);
RESULT_SUCCESS
|
Succeeded to get border correction state.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_NOT_SUPPORTED_MODEL
|
Detector is not partial mode supported.
|
RESULT_ERROR
|
Failed to send border correction state get command.
|
Remarks
This function can be used after opening detector connection.
Partial mode related API’s are supported for multi panel detectors.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
bool bEnable
nResult = pDetector-> BorderCorrectionGet(&bEnable);
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
bool bEnable;
nResult = pDetector. BorderCorrectionGet(out bEnable);
6.1.62 BorderCorrectionSet
Sets border correction state
Syntax
virtual RESULT BorderCorrectionSet(bool bEnable);
RESULT_SUCCESS
|
Succeeded to set border correction state.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_NOT_SUPPORTED_MODEL
|
Detector is not partial mode supported.
|
RESULT_ERROR
|
Failed to send border correction state set command.
|
Remarks
This function can be used after opening detector connection.
Partial mode related API’s are supported for multi panel detectors.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
bool bEnable = true
nResult = pDetector-> BorderCorrectionSet(bEnable);
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
bool bEnable = true;
nResult = pDetector. BorderCorrectionSet(bEnable);
6.1.63 BaseSensitivityGet
Gets the Base Sensitivity of the detector
Syntax (C++)
RESULT BaseSensitivityGet (
int* pnValue
);
Syntax (C#)
RESULT BaseSensitivityGet(
Out int value
);
Parameters
pnValue [out]
A variable for indicating Base Sensitivity.
RESULT_SUCCESS
|
Succeeded to get Base Sensitivity.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_NOT_SUPPORTED_MODEL
|
This function can use by FXRD-2530VW, FXRD-3643VW, FXRD-4343VW only.
|
RESULT_NOT_SUPPORTED_VERSION
|
The latest firmware of FXRD-2530VW, FXRD-3643VW, and FXRD-4343VW are required.
|
RESULT_ERROR
|
Failed to get Base Sensitivity.
|
Remarks
FXRD-1717S, FXRD-1717V, FXRD-2530VW, FXRD 3643VW, and FXRD-4343VW models can get the Base Sensitivity.
This value and current sensitivity ratio can be used to calculate Exposure Index.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD2530_V:
case Vieworks::vivix::DETECTOR_TYPE::FXRD3643_V:
case Vieworks::vivix::DETECTOR_TYPE::FXRD4343_V:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
int nValue = -1;
nResult = pFXRDN-> BaseSensitivityGet(&nValue);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
}
else
{
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD2530_V:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD3643_V:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD4343_V:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
int nValue = -1;
nResult = pFXRDN. BaseSensitivityGet(out nValue);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
}
else
{
}
}
6.1.64 CurrentSensitivityRatioGet
Gets the current sensitivity ratio of the detector.
Current sensitivity ration depends on a gain type of the current detector.
Syntax (C++)
RESULT CurrentSensitivityRatioGet (
int* pnValue
);
Syntax (C#)
RESULT CurrentSensitivityRatioGet (
Out int value
);
Parameters
pnValue [out]
A variable for indicating Current Sensitivity Ratio.
RESULT_SUCCESS
|
Succeeded to get Current Sensitivity Ratio.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_NOT_SUPPORTED_MODEL
|
This function can use by FXRD-2530VW, FXRD-3643VW, FXRD-4343VW only.
|
RESULT_NOT_SUPPORTED_VERSION
|
The latest firmware of FXRD-2530VW, FXRD-3643VW, and FXRD-4343VW are required.
|
RESULT_ERROR
|
Failed to get Current Sensitivity Ratio.
|
Remarks
FXRD-1717S, FXRD-1717V, FXRD-2530VW, FXRD 3643VW, and FXRD-4343VW models can get Current Sensitivity ratio.
This value and Base Sensitivity can be used to calculate Exposure Index.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD2530_V:
case Vieworks::vivix::DETECTOR_TYPE::FXRD3643_V:
case Vieworks::vivix::DETECTOR_TYPE::FXRD4343_V:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
int nValue = -1;
nResult = pFXRDN-> BaseSensitivityGet(&nValue);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
}
else
{
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD2530_V:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD3643_V:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD4343_V:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
int nValue = -1;
nResult = pFXRDN. BaseSensitivityGet(out nValue);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
}
else
{
}
}
6.2 Callback Notification Setting Functions
6.2.1 SetNotifyFrameGrabberImageInStart / SetDelegateFrameGrabberImageInStart
Sets the notification of NotifyFrameGrabberImageInStart / DelegateFrameGrabberImageInStart
Syntax (C++)
void SetNotifyFrameGrabberImageInStart (
_In_ NotifyFrameGrabberImageInStart pNotify
);
Syntax (C#)
void SetDelegateFrameGrabberImageInStart (
DelegateFrameGrabberImageInStart val
);
Parameters
pNotify [in]
NotifyFrameGrabberImageInStart
val [in]
DelegateFrameGrabberImageInStart
Remarks
Refer to ‘detector::NotifyFrameGrabberImageInStart’.
Refer to ‘detector.DelegateFrameGrabberImageInStart’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
If(pDetector != NULL)
{
pDetector->SetNotifyFrameGrabberImageInStart(NotifyFrameGrabberImageInStart);
}
void NotifyFrameGrabberImageInStart(Vieworks::vivix::DETECTOR_ID id, Vieworks::vivix::IMAGE_MODE imgMode)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
If(pDetector != null)
{
pDetector.SetDelegateFrameGrabberImageInStart(OnDelegateFrameGrabberImageInStart);
}
void OnDelegateFrameGrabberImageInStart(int id, Vieworks.vivix.net.IMAGE_MODE imgMode)
{
}
6.2.2 SetNotifyFrameGrabberImageIn / SetDelegateFrameGrabberImageIn
Sets the notification of NotifyFrameGrabberImageIn / DelegateFrameGrabberImageIn
Syntax (C++)
void SetNotifyFrameGrabberImageIn (
_In_ NotifyFrameGrabberImageIn pNotify
);
Syntax (C#)
void SetDelegateFrameGrabberImageIn (
DelegateFrameGrabberImageIn val
);
Parameters
pNotify [in]
NotifyFrameGrabberImageIn
val [in]
DelegateFrameGrabberImageIn
Remarks
Refer to ‘detector::NotifyFrameGrabberImageIn’.
Refer to ‘detector.DelegateFrameGrabberImageIn’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
If(pDetector != NULL)
{
pDetector->SetNotifyFrameGrabberImageIn(NotifyFrameGrabberImageIn);
}
void NotifyFrameGrabberImageIn(Vieworks::vivix::DETECTOR_ID id, Vieworks::vivix::IMAGE_MODE imgMode, Vieworks::vivix::IMAGE_INFO* image)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
If(pDetector != null)
{
pDetector.SetDelegateFrameGrabberImageIn(OnDelegateFrameGrabberImageIn);
}
void OnDelegateFrameGrabberImageIn(int id, Vieworks.vivix.net.IMAGE_MODE imgMode, Vieworks.vivix.net.IMAGE_INFO* image)
{
}
6.2.3 SetNotifyFrameGrabberImageInEnd / SetDelegateFrameGrabberImageInEnd
Sets the notification of NotifyFrameGrabberImageInEnd / DelegateFrameGrabberImageInEnd
Syntax (C++)
void SetNotifyFrameGrabberImageInEnd (
_In_ NotifyFrameGrabberImageInEnd pNotify
);
Syntax (C#)
void SetDelegateFrameGrabberImageInEnd (
DelegateFrameGrabberImageInEnd val
);
Parameters
pNotify [in]
NotifyFrameGrabberImageInEnd
val [in]
DelegateFrameGrabberImageInEnd
Remarks
Refer to ‘detector::NotifyFrameGrabberImageEnd’.
Refer to ‘detector.DelegateFrameGrabberImageEnd’.
Examples
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
If(pDetector != NULL)
{
pDetector->SetNotifyFrameGrabberImageInEnd(NotifyFrameGrabberImageInEnd);
}
void NotifyFrameGrabberImageInEnd(Vieworks::vivix::DETECTOR_ID id, Vieworks::vivix::IMAGE_MODE imgMode)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
If(pDetector != null)
{
pDetector.SetDelegateFrameGrabberImageInEnd(OnDelegateFrameGrabberImageInEnd);
}
void OnDelegateFrameGrabberImageInEnd(int id, Vieworks.vivix.net.IMAGE_MODE imgMode)
{
}
6.2.4 SetNotifyExposed / SetDelegateExposed
Sets NotifyExposed notification
Syntax (C++)
void SetNotifyExposed (
_In_ NotifyExposed pNotify
);
Syntax (C#)
void SetDelegateExposed (
DelegatExposed val
);
Parameters
pNotify [in]
NotifyExposed
val [in]
DelegateExposed
Remarks
Refer to ‘detector::NotifyExposed’.
Refer to ‘detector.DelegateExposed’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != NULL)
{
pDetector->SetNotifyExposed(NotifyExposed);
}
void NotifyExposed (Vieworks::vivix::DETECTOR_ID id)
{
// Detector is exposed
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != null)
{
pDetector.SetDelegateExposed(OnDelegateExposed);
}
void OnDelegateExposed(int id)
{
// Detector is exposed
}
6.2.5 SetNotifyReadyForExposure / SetDelegateReadyForExposure
Sets NotifyReadyForExposure notification
Syntax (C++)
void SetNotifyReadyForExposure (
_In_ NotifyReadyForExposure pNotify
);
Syntax (C#)
void SetDelegateReadyForExposure (
DelegatReadyForExposure val
);
Parameters
pNotify [in]
NotifyReadyForExposure
val [in]
DelegateReadyForExposure
Remarks
Refer to ‘detector::NotifyReadyForExposure’.
Refer to ‘detector.DelegateReadyForExposure’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != NULL)
{
pDetector->SetNotifyReadyForExposure(NotifyReadyForExposure);
}
void NotifyReadyForExposure (Vieworks::vivix::DETECTOR_ID id, bool bReady)
{
// Detector is ready for exposure (true / false)
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != null)
{
pDetector.SetDelegateReadyForExposure(OnDelegateReadyForExposure);
}
void OnDelegateReadyForExposure(int id, bool bReady)
{
// Detector is ready for exposure (true / false)
}
6.2.6 SetNotifyOffsetRefreshCheck / SetDelegateOffsetRefreshCheck
Sets the notification of NotifyOffsetRefreshCheck / DelegateOffsetRefreshCheck
Syntax (C++)
void SetNotifyOffsetRefreshCheck (
_In_ NotifyOffsetRefreshCheck pNotify
);
Syntax (C#)
void SetDelegateOffsetRefreshCheck (
DelegateOffsetRefreshCheck val
);
Parameters
pNotify [in]
NotifyOffsetRefreshCheck
val [in]
DelegateOffsetRefreshCheck
Remarks
Refer to ‘detector::NotifyOffsetRefreshCheck’.
Refer to ‘detector.DelegateOffsetRefreshCheck’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
If(pDetector != NULL)
{
pDetector->SetNotifyOffsetRefreshCheck(NotifyOffsetRefreshCheck);
}
void NotifyOffsetRefreshCheck(Vieworks::vivix::DETECTOR_ID id, double previousTemperature, double currentTemperature, bool needRefresh)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
If(pDetector != null)
{
pDetector.SetDelegateOffsetRefreshCheck(OnDelegateOffsetRefreshCheck);
}
void OnDelegateOffsetRefreshCheck(int id, double previousTemperature, double currentTemperature, bool needRefresh)
{
}
6.2.7 SetNotifyCalibrationIsNotReady / SetDelegateCalibrationIsNotReady
Sets NotifyCalibrationIsNotReady / DelegateCalibrationIsNotReady notification callback or delegates to the VIVIX SDK.
Syntax (C++)
void SetNotifyCalibrationIsNotReady (
_In_ NotifyCalibrationIsNotReady pNotify
);
Syntax (C#)
void SetDelegateCalibrationIsNotReady (
DelegateCalibrationIsNotReady val
);
Parameters
pNotify [in]
NotifyCalibrationIsNotReady
val [in]
DelegateCalibrationIsNotReady
Remarks
Refer to ‘detector::NotifyCalibrationIsNotReady’.
Refer to ‘detector.DelegateCalibrationIsNotReady’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
If(pDetector != NULL)
{
pDetector->SetNotifyCalibrationIsNotReady(NotifyCalibrationIsNotReady);
}
void NotifyCalibrationIsNotReady(Vieworks::vivix::DETECTOR_ID id, int timeLeft)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
If(pDetector != null)
{
pDetector.SetDelegateCalibrationIsNotReady(OnDelegateCalibrationIsNotReady);
}
void OnDelegateCalibrationIsNotReady(int id, int timeLeft)
{
}
6.2.8 SetNotifyCalibrationStep / SetDelegateCalibrationStep
Sets the notification of NotifyCalibrationStep / DelegateCalibrationStep
Syntax (C++)
void SetNotifyCalibrationStep (
_In_ NotifyCalibrationStep pNotify
);
Syntax (C#)
void SetDelegateCalibrationStep (
DelegateCalibrationStep val
);
Parameters
pNotify [in]
NotifyCalibrationStep
val [in]
DelegateCalibrationStep
Remarks
Refer to ‘detector::NotifyCalibrationStep’
Refer to ‘detector.DelegateCalibrationStep’
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
If(pDetector != NULL)
{
pDetector->SetNotifyCalibrationStep(NotifyCalibrationStep);
}
void NotifyCalibrationStep(Vieworks::vivix::DETECTOR_ID id, Vieworks::vivix::CALIBRATION_TYPE calibrationType, unsigned int stage, float avgValue, Vieworks::vivix::IMAGE_INFO* imgInfo)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
If(pDetector != null)
{
pDetector.SetDelegateCalibrationStep(OnDelegateCalibrationStep);
}
void OnDelegateCalibrationStep(int id, Vieworks.vivix.net.CALIBRATION_TYPE calibrationType, uint stage, float avgValue, Vieworks.vivix.net.IMAGE_INFO* imgInfo)
{
}
6.2.9 SetNotifyCalibrationResult / SetDelegateCalibrationResult
Sets the notification of NotifyCalibrationResult / DelegateCalibrationResult
Syntax (C++)
void SetNotifyCalibrationResult (
_In_ NotifyCalibrationResult pNotify
);
Syntax (C#)
void SetDelegateCalibrationResult (
DelegateCalibrationResult val
);
Parameters
pNotify [in]
NotifyCalibrationResult
val [in]
DelegateCalibrationResult
Remarks
Refer to ‘detector::NotifyCalibrationResult’.
Refer to ‘detector.DelegateCalibrationResult’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
If(pDetector != NULL)
{
pDetector->SetNotifyCalibrationResult(NotifyCalibrationResult);
}
void NotifyCalibrationResult(Vieworks::vivix::DETECTOR_ID id, Vieworks::vivix::CALIBRATION_TYPE calibrationType, bool done)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
If(pDetector != null)
{
pDetector.SetDelegateCalibrationResult(OnDelegateCalibrationResult);
}
void OnDelegateCalibrationResult(int id, Vieworks.vivix.net.CALIBRATION_TYPE calibrationType, bool done)
{
}
6.2.10 SetNotifyCalibrationOffsetRefreshStep / SetDelegateCalibrationOffsetRefreshStep
Sets the notification of NotifyCalibrationOffsetRefreshStep / DelegateCalibrationOffsetRefreshStep
Syntax (C++)
void SetNotifyCalibrationOffsetRefreshStep (
_In_ NotifyCalibrationOffsetRefreshStep pNotify
);
Syntax (C#)
void SetDelegateCalibrationOffsetRefreshStep (
DelegateCalibrationOffsetRefreshStep val
);
Parameters
pNotify [in]
NotifyCalibrationOffsetRefreshStep
val [in]
DelegateCalibrationOffsetRefreshStep
Remarks
Refer to ‘detector::NotifyCalibrationOffsetRefreshStep’.
Refer to ‘detector.DelegateCalibrationOffsetRefreshStep’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
If(pDetector != NULL)
{
pDetector-> SetNotifyCalibrationOffsetRefreshStep(NotifyCalibrationOffsetRefreshStep);
}
void NotifyCalibrationResult(Vieworks::vivix::DETECTOR_ID id, unsigned int stage, float avgValue, Vieworks::vivix::IMAGE_INFO* image)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
If(pDetector != null)
{
pDetector. SetDelegateCalibrationOffsetRefreshStep(OnDelegateCalibrationOffsetRefreshStep);
}
void OnDelegateCalibrationResult(int id, uint stage, float avgValue, Vieworks.vivix.net.IMAGE_INFO* image)
{
}
6.2.11 SetNotifyCalibrationOffsetRefreshResult / SetDelegateCalibrationOffsetRefreshResult
Sets the notification of NotifyCalibrationOffsetRefreshResult / DelegateCalibrationOffsetRefreshResult
Syntax (C++)
void SetNotifyCalibrationOffsetRefreshResult (
_In_ NotifyCalibrationOffsetRefreshResult pNotify
);
Syntax (C#)
void SetDelegateCalibrationOffsetRefreshResult (
DelegateCalibrationOffsetRefreshResult val
);
Parameters
pNotify [in]
NotifyCalibrationOffsetRefreshResult
val [in]
DelegateCalibrationOffsetRefreshResult
Remarks
Refer to ‘detector::NotifyCalibrationOffsetRefreshResult’.
Refer to ‘detector.DelegateCalibrationOffsetRefreshResult’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
If(pDetector != NULL)
{
pDetector->SetNotifyCalibrationOffsetRefreshResult(NotifyCalibrationOffsetRefreshResult);
}
void NotifyCalibrationOffsetRefreshResult(Vieworks::vivix::DETECTOR_ID id,Vieworks::vivix::OFFSET_REFRESH_STATUS status)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
If(pDetector != null)
{
pDetector.SetDelegateCalibrationOffsetRefreshResult
(OnDelegateCalibrationOffsetRefreshResult);
}
void OnDelegateCalibrationOffsetRefreshResult(int id,Vieworks.vivix.net.OFFSET_REFRESH_STATUS status)
{
}
6.2.12 SetNotifyCalibrationFileLoaded / SetDelegateCalibrationFileLoaded
Sets the notification of NotifyCalibrationFileLoaded / DelegateCalibrationFileLoaded
Syntax (C++)
void SetNotifyCalibrationFileLoaded (
_In_ NotifyCalibrationFileLoaded pNotify
);
Syntax (C#)
void SetDelegateCalibrationFileLoaded (
DelegateCalibrationFileLoaded val
);
Parameters
pNotify [in]
NotifyCalibrationFileLoaded
val [in]
DelegateCalibrationFileLoaded
Remarks
Refer to ‘detector::NotifyCalibrationFileLoaded’.
Refer to ‘detector.DelegateCalibrationFileLoaded’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
If(pDetector != NULL)
{
pDetector->SetNotifyCalibrationFileLoaded(NotifyCalibrationFileLoaded);
}
void NotifyCalibrationFileLoaded(Vieworks::vivix::DETECTOR_ID id, Vieworks::vivix::CALIBRATION_TYPE fileType)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
If(pDetector != null)
{
pDetector.SetDelegateCalibrationFileLoaded(OnDelegateCalibrationFileLoaded);
}
void OnDelegateCalibrationFileLoaded(int id, Vieworks.vivix.net.CALIBRATION_TYPE fileType)
{
}
6.2.13 SetNotifyCalibrationFileSaved / SetDelegateCalibrationFileSaved
Sets the notification of NotifyCalibrationFileSaved / DelegateCalibrationFileSaved
Syntax (C++)
void SetNotifyCalibrationFileSaved (
_In_ NotifyCalibrationFileSaved pNotify
);
Syntax (C#)
void SetDelegateCalibrationFileSaved (
DelegateCalibrationFileSaved val
);
Parameters
pNotify [in]
NotifyCalibrationFileSaved
val [in]
DelegateCalibrationFileSaved
Remarks
Refer to ‘detector::NotifyCalibrationFileSaved’.
Refer to ‘detector.DelegateCalibrationFileSaved’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
If(pDetector != NULL)
{
pDetector->SetNotifyCalibrationFileSaved(NotifyCalibrationFileSaved);
}
void NotifyCalibrationFileSaved(Vieworks::vivix::DETECTOR_ID id, Vieworks::vivix::CALIBRATION_TYPE fileType)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
If(pDetector != null)
{
pDetector.SetDelegateCalibrationFileSaved(OnDelegateCalibrationFileSaved);
}
void OnDelegateCalibrationFileSaved(int id, Vieworks.vivix.net.CALIBRATION_TYPE fileType)
{
}
6.2.14 SetNotifyReconnected / SetDelegateReconnected
Sets the notification of NotifyReconnected / DelegateReconnected
Syntax (C++)
void SetNotifyReconnected (
_In_ NotifyReconnected pNotify
);
Syntax (C#)
void SetDelegateReconnected (
DelegateReconnected val
);
Parameters
pNotify [in]
NotifyReconnected
val [in]
DelegateReconnected
Remarks
Refer to ‘detector::NotifyReconnected’.
Refer to ‘detector.DelegateReconnected’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
If(pDetector != NULL)
{
pDetector->SetNotifyReconnected(NotifyReconnected);
}
void NotifyReconnected(Vieworks::vivix::DETECTOR_ID id)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
If(pDetector != null)
{
pDetector.SetDelegateReconnected(OnDelegateReconnected);
}
void OnDelegateReconnected(int id)
{
}
6.2.15 SetNotifyDisconnected / SetDelegateDisconnected
Sets the notification of NotifyDisconnected / DelegateDisconnected
Syntax (C++)
void SetNotifyDisconnected (
_In_ NotifyDisconnected pNotify
);
Syntax (C#)
void SetDelegateDisconnected (
DelegateDisconnected val
);
Parameters
pNotify [in]
NotifyDisconnected
val [in]
DelegateDisconnected
Remarks
Refer to ‘detector::NotifyDisconnected’
Refer to ‘detector.DelegateDisconnected’
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
If(pDetector != NULL)
{
pDetector->SetNotifyDisconnected(NotifyDisconnected);
}
void NotifyDisconnected(Vieworks::vivix::DETECTOR_ID id)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
If(pDetector != null)
{
pDetector.SetDelegateDisconnected(OnDelegateDisconnected);
}
void OnDelegateDisconnected(int id)
{
}
6.2.16 SetNotifyError / SetDelegateError
Sets the notification of NotifyError / DelegateError
Syntax (C++)
void SetNotifyError (
_In_ NotifyError pNotify
);
Syntax (C#)
void SetDelegateError (
DelegateError val
);
Parameters
pNotify [in]
NotifyError
val [in]
DelegateError
Remarks
Refer to ‘detector::NotifyError’.
Refer to ‘detector.DelegateError’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
If(pDetector != NULL)
{
pDetector->SetNotifyError(NotifyError);
}
void NotifyError(Vieworks::vivix::DETECTOR_ID id, Vieworks::vivix::ERROR_TYPE type)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
If(pDetector != null)
{
pDetector.SetDelegateError(OnDelegateError);
}
void OnDelegateError(int id, Vieworks.vivix.net.ERROR_TYPE type)
{
}
6.2.17 SetNotifyShockDetection / SetDelegateShockDetection
Sets the notification of NotifyShockDetection / DelegateShockDetection
Syntax (C++)
void SetNotifyShockDetection (
_In_ NotifyShockDetection pNotify
);
Syntax (C#)
void SetDelegateShockDetection (
DelegateShockDetection val
);
Parameters
pNotify [in]
NotifyShockDetection
val [in]
DelegateShockDetection
Remarks
Refer to ‘detector::NotifyShockDetection.
Refer to ‘detector.DelegateShockDetection.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
If(pDetector != NULL)
{
pDetector->SetNotifyShockDetection(NotifyShockDetection);
}
void NotifyShockDetection(Vieworks::vivix::DETECTOR_ID id)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
If(pDetector != null)
{
pDetector.SetDelegateShockDetection(OnDelegateShockDetection);
}
void OnDelegateShockDetection(int id)
{
}
6.2.18 SetNotifyImageTransmissionProgress / SetDelegateImageTransmissionProgress
Sets the notification of NotifyImageTransmissionProgress / DelegateImageTransmissionProgress
Syntax (C++)
void SetNotifyImageTransmissionProgress(
_In_ NotifymageTransmissionProgress pNotify
);
Syntax (C#)
void SetDelegateImageTransmissionProgress (
DelegateImageTransmissionProgress val
);
Parameters
pNotify [in]
NotifyImageTransmissionProgress
val [in]
DelegateImageTransmissionProgress
Remarks
Refer to ‘detector::NotifyImageTransmissionProgress’.
Refer to ‘detector.DelegateImageTransmissionProgress
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != NULL)
{
pDetector->SetNotifyImageTransmissionProgress(NotifyImageTransmissionProgress);
}
void NotifyImageTransmissionProgress (Vieworks::vivix::DETECTOR_ID id, int progress)
{
// Image transmission progress
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != NULL)
{
pDetector.SetDelegateImageTransmissionProgress
(OnDelegateImageTransmissionProgress);
}
void OnDelegateImageTransmissionProgress (int id, int progress)
{
// Image transmission progress
}
6.2.19 SetNotifyAccSensorCalibrationProgress / SetDelegateAccSensorCalibrationProgress
Sets the notification of NotifyAccSensorCalibrationProgress / DelegateAccSensorCalibrationProgress
Syntax (C++)
void SetNotifyIAccSensorCalibrationProgress (
_In_ NotifyAccSensorCalibrationProgress pNotify
);
Syntax (C#)
void SetDelegateAccSensorCalibrationProgress (
DelegateAccSensorCalibrationProgress val
);
Parameters
pNotify [in]
NotifyAccSensorCalibrationProgress
val [in]
DelegateAccSensorCalibrationProgress
Remarks
Refer to ‘detector::NotifyAccSensorCalibrationProgress.
Refer to ‘detector.DelegateAccSensorCalibrationProgress
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != NULL)
{
pDetector->SetNotifyAccSensorCalibrationProgress
(NotifyAccSensorCalibrationProgress);
}
void NotifyAccSensorCalibrationProgress (Vieworks::vivix::DETECTOR_ID id, int progress)
{
// Acc Sensor Calibration Progress
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != NULL)
{
pDetector.SetDelegateAccSensorCalibrationProgress
(OnDelegateAccSensorCalibrationProgress);
}
void OnDelegateAccSensorCalibrationProgress (int id, int progress)
{
// Acc Sensor Calibration Progress
}
6.2.20 SetNotifyFrameGrabberImageInEX / SetDelegateFrameGrabberImageInEX
Sets NotifyFrameGrabberImageInEX notification.
NotifyFrameGrabberImageInEX has IMAGE_INFO_EX as a parameter. Refer to <4.1.274.1.27 IMAGE_INFOIMAGE_INFO> and <4.1.284.1.28 IMAGE_INFO_EXIMAGE_INFO_EX>.
It is recommended to use this function instead of the existing callback function, because it will be added to the IMAGE_INFO_EX structure even when other items are added to the Image Info structure in the future.
If you use NotifyFrameGrabberImageInEX and NotifyFrameGrabberImageIn together, you will only obtain one image by NotifyFrameGrabberImageInEX.
Syntax (C++)
void SetNotifyFrameGrabberImageInEX (
_In_ NotifyFrameGrabberImageInEX pNotify
);
Syntax (C#)
void SetDelegateFrameGrabberImageInEX (
DelegateFrameGrabberImageInEX val
);
Parameters
pNotify [in]
NotifyFrameGrabberImageInEX
val [in]
DelegateFrameGrabberImageInEX
Remarks
Refer to ‘detector::NotifyFrameGrabberImageInEX.
Refer to ‘detector.DelegateFrameGrabberImageInEX’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
pDetector->SetNotifyFrameGrabberImageInEX(NotifyFrameGrabberImageInEX);
void NotifyFrameGrabberImageInEX(Vieworks::vivix::DETECTOR_ID id, Vieworks::vivix::IMAGE_MODE imgMode, Vieworks::vivix::IMAGE_INFO_EX* image)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
//SDK Initialize finished.
//DetectorGet finished.
pDetector.SetDelegateFrameGrabberImageInEX(OnDelegateFrameGrabberImageInEX);
void OnDelegateFrameGrabberImageInEX(int id, Vieworks.vivix.net.IMAGE_MODE imgMode, Vieworks.vivix.net.IMAGE_INFO_EX image)
{
}
6.3 Callback Notification Functions
6.3.1 detector::NotifyFrameGrabberImageInStart / detector.DelegateFrameGrabberImageInStart
Notifies that the image transmission is started.
Syntax (C++)
void detector::NotifyFrameGrabberImageInStart (
_In_ DETECTOR_ID id,
_In_ IMAGE_MODE imgMode
);
Syntax (C#)
void detector.DelegateFrameGrabberImageInStart (
int id,
IMAGE_MODE imgMode
);
Parameters
id[in]
Detector ID
imgMode [in]
Frame grabber image mode
Remarks
FXRD-1717S / FXRD-1417S: When the image is transferred from filter driver.
FXRD-1417S: When the image is transferred from detector.
6.3.2 detector::NotifyFrameGrabberImageIn / detector.DelegateFrameGrabberImageIn
Acquired image data and its information
Syntax (C++)
void detector::NotifyFrameGrabberImageIn (
_In_ DETECTOR_ID id,
_In_ IMAGE_MODE imgMode,
_In_ IMAGE_INFO image
);
Syntax (C#)
void detector.DelegateFrameGrabberImageIn (
int id,
IMAGE_MODE imgMode,
IMAGE_INFO image
);
Parameters
Id [in]
Detector ID
imgMode [in]
Frame grabber image mode
image [in]
Image information
Remarks
The real image is sent to this function.
6.3.3 detector::NotifyFrameGrabberImageInEnd / detector.DelegateFrameGrabberImageInEnd
Detector frame grabber image in end notification.
Syntax (C++)
void detector::NotifyFrameGrabberImageInEnd (
_In_ DETECTOR_ID id,
_In_ IMAGE_MODE imgMode
);
Syntax (C#)
void detector.DelegateFrameGrabberImageInEnd (
int id,
IMAGE_MODE imgMode
);
Parameters
id [in]
Detector ID
imgMode [in]
Frame grabber image mode
Remarks
Notifies that the image transmission is finished.
6.3.4 detector::NotifyExposed / detector.DelegateExposed
Transmits the notification generated when the detector is exposed to x-ray
Syntax (C++)
void detector::NotifyExposed (
_In_ DETECTOR_ID id,
);
Syntax (C#)
void detector.DelegateExposed (
int id,
);
Parameters
id [in]
Detector ID
6.3.5 detector::NotifyReadyForExposure / detector.DelegateReadyForExposure
Gets ready for exposure notification
Syntax (C++)
void detector::NotifyReadyForExposure (
_In_ DETECTOR_ID id,
_In_ bool bReady
);
Syntax (C#)
void detector.DelegateReadyForExposure (
int id,
bool bReady
);
Parameters
id [in]
Detector ID
bool [in]
Exposure availability
6.3.6 detector::NotifyOffsetRefreshCheck / detector.DelegateOffsetRefreshCheck
Notifies the check result of offset refresh.
Syntax (C++)
void detector::NotifyOffsetRefreshCheck (
_In_ DETECTOR_ID id,
_In_ double previousTemperature,
_In_ double currentTemperature,
_In_ bool needRefresh
);
Syntax (C#)
void detector.DelegateOffsetRefreshCheck (
int id,
double previousTemperature,
double currentTemperature,
bool needRefresh
);
Parameters
id [in]
Detector ID
previousTemperature [in]
Previous temperature
currentTemperature [in]
Current temperature
needRefresh [in]
If this detector need offset refresh this value is true.
Remarks
If Auto Offset Refresh is turned on by using the AutoOffsetRefreshConfigSet function, the relevant notification is called in every interval of setting time. If difference between the previous temperature and current temperature occurs as much as the configured difference, the needRefresh function is sent as true.
6.3.7 detector::NotifyCalibrationIsNotReady / detector.DelegateCalibrationIsNotReady
Notifies when Offset Calibration cannot be processed.
Syntax (C++)
void detector::NotifyCalibrationIsNotReady (
_In_ DETECTOR_ID id,
_In_ int timeLeft
);
Syntax (C#)
void detector.DelegateCalibrationIsNotReady (
int id,
int timeLeft
);
Parameters
id [in]
Detector ID
timeLeft [in]
Time left to offset calibration
6.3.8 detector::NotifyCalibrationStep / detector.DelegateCalibrationStep
Notifies detector calibration step
Syntax (C++)
void detector::NotifyCalibrationStep (
_In_ DETECTOR_ID id,
_In_ CALIBRATION_TYPE calibrationType,
_In_ uint stage,
_In_ float avgValue,
_In_ IMAGE_INFO image
);
Syntax (C#)
void detector.DelegateCalibrationStep (
int id,
CALIBRATION_TYPE calibrationType,
uint stage,
float avgValue,
IMAGE_INFO image
);
Parameters
id [in]
Detector ID
calibrationType [in]
Calibration type
stage [in]
Stage of calibration
avgValue [in]
Average value
image [in]
Image information
Remarks
If the calibration is processed by OffsetCalibration, DefectUpdate, and GainCalibration functions, the process can be checked from the relevant notification.
6.3.9 detector::NotifyCalibrationResult / detector.DelegateCalibrationResult
Notifies the result of detector calibration
Syntax (C++)
void detector::NotifyCalibrationResult (
_In_ DETECTOR_ID id,
_In_ CALIBRATION_TYPE type,
_In_ bool done
);
Syntax (C#)
void detector.DelegateCalibrationResult (
int id,
CALIBRATION_TYPE type,
bool done
);
Parameters
id [in]
Detector ID
type [in]
Calibration type
done [in]
Done or fail detector calibration
Remarks
If the calibration is processed by OffsetCalibration, DefectUpdate, and GainCalibration functions, the completion time and result of calibration can be checked from the relevant notification.
6.3.10 detector::NotifyCalibrationOffsetRefreshStep / detector.DelegateCalibrationOffsetRefreshStep
Notifies the refresh step of detector offset
Syntax (C++)
void detector::NotifyCalibrationOffsetRefreshStep (
_In_ DETECTOR_ID id,
_In_ uint stage,
_In_ float avgValue,
_In_ IMAGE_INFO image
);
Syntax (C#)
void detector.DelegateCalibrationOffsetRefreshStep (
int id,
uint stage,
float avgValue,
IMAGE_INFO image
);
Parameters
id [in]
Detector ID
stage [in]
Stage of calibration
avgValue [in]
Average value
image [in]
Image information
Remarks
If the calibration is processed by OffsetRefresh function, the process can be checked from the relevant notification.
6.3.11 detector::NotifyCalibrationOffsetRefreshResult / detector.DelegateCalibrationOffsetRefreshResult
Notifies the result of performed offset refresh.
Syntax (C++)
void detector::NotifyCalibrateOffsetRefreshResult (
_In_ DETECTOR_ID id,
_In_ OFFSET_REFRESH_STATUS result
);
Syntax (C#)
void detector.DelegateCalibrateOffsetRefreshResult (
int id,
OFFSET_REFRESH_STATUS result
);
Parameters
id [in]
Detector ID
result [in]
Offset refresh result
Remarks
If the calibration is processed by OffsetRefresh function, the process can be checked from the relevant notification.
6.3.12 detector::NotifyCalibrationFileLoaded / detector.DelegateCalibrationFileLoaded
Notifies the upload of detector calibration file
Syntax (C++)
void detector::NotifyCalibrationFileLoaded (
_In_ DETECTOR_ID id,
_In_ CALIBRATION_TYPE fileType
);
Syntax (C#)
void detector.DelegateCalibrationFileLoaded (
int id,
CALIBRATION_TYPE fileType
);
Parameters
id [in]
Detector ID
fileType [in]
Calibration file type
Remarks
If the Offset Calibration file, Defect Map file, and Gain Calibration file are loaded successfully by using the CalibrationLoad function, the relevant notification is called.
6.3.13 detector::NotifyCalibrationFileSaved / detector.DelegateCalibrationFileSaved
Notifies the saved detector calibration file
Syntax (C++)
void detector::NotifyCalibrationFileSaved (
_In_ DETECTOR_ID id,
_In_ CALIBRATION_TYPE fileType
);
Syntax (C#)
void detector.DelegateCalibrationFileSaved (
int id,
CALIBRATION_TYPE fileType
);
Parameters
id [in]
Detector ID
fileType [in]
Calibration file type
Remarks
If the Offset Calibration file, Defect Map file, and Gain Calibration file are saved successfully by using the CalibrationSave function, the relevant notification is called.
6.3.14 detector::NotifyReconnected / detector.DelegateReconnected
Notifies the reconnected detector
Syntax (C++)
void detector::NotifyReconnected (
_In_ DETECTOR_ID id
);
Syntax (C#)
void detector.DelegateReconnected (
int id
);
Parameters
id [in]
Detector ID
6.3.15 detector::NotifyDisconnected / detector.DelegateDisconnected
Notifies disconnected detector
Syntax (C++)
void Disconnected (
_In_ DETECTOR_ID id
);
Syntax (C#)
void Disconnected (
int id
);
Parameters
id [in]
Detector ID
6.3.16 detector::NotifyError / detector.DelegateError
Syntax (C++)
void detector::NotifyError (
_In_ DETECTOR_ID id,
_In_ ERROR_TYPE type
);
Syntax (C#)
void detector.DelegateError (
int id,
ERROR_TYPE type
);
Parameters
id [in]
Detector ID
type [in]
Error type
Remarks
-
Detector Not Calibrated: Detector was taken the image but detector is not calibrated.
-
Not Enough Memory: Insufficient free memory space to perform action.
-
Image Timeout: Image transmission timeout.
-
Hard disk Capacity Shortage: There is not enough hard disk space.
6.3.17 detector::NotifyShockDetection / detector.DelegateShockDetection
Syntax (C++)
void detector::NotifyShockDetection(
_In_ DETECTOR_ID id,
SHOCK_LEVEL eLevel,
int nExpectedFallHeightcm
);
Syntax (C#)
void detector.DelegateShockDetection(
int id
SHOCK_LEVEL level,
int expectedFallHeightcm
);
Parameters
id [in]
Detector ID
This notification occurs in the F/W where this function can operate.
You can receive a notification up to 7 seconds after the shock occurred.
6.3.18 detector::NotifyImageTransmissionProgress / detector.DelegateImageTransmissionProgress
Notifies the progress of image transmission
Syntax (C++)
void detector::NotifyImageTransmissionProgress (
_In_ DETECTOR_ID id,
_In_ int progress
);
Syntax (C#)
void detector. DelegateImageTransmissionProgress (
int id,
int progress
);
Parameters
id [in]
Detector ID
progress [in]
Image transmission progress
6.3.19 detector::NotifyAccSensorCalibrationProgress/ detector.DelegateAccSensorCalibrationProgress
Notifies the progress of acceleration calibration
Syntax (C++)
void detector::NotifyAccSensorCalibrationProgress (
_In_ DETECTOR_ID id,
_In_ int progress
);
Syntax (C#)
void detector. DelegateAccSensorCalibrationProgress (
int id,
int progress
);
Parameters
id [in]
Detector ID
progress [in]
Calibration progress
6.3.20 detector::NotifyFrameGrabberImageInEX / detector.DelegateFrameGrabberImageInEX
Notifies acquired image data and its information.
NotifyFrameGrabberImageInEX is an extension of NotifyFrameGrabberImageIn as a callback to pass information that was not in the existing IMAGE_INFO, such as Partial mode.
Syntax (C++)
void detector:: NotifyFrameGrabberImageInEX (
_In_ DETECTOR_ID id,
_In_ IMAGE_MODE imgMode,
_In_ IMAGE_INFO_EX image
);
Syntax (C#)
void detector. DelegateFrameGrabberImageInEX (
int id,
IMAGE_MODE imgMode,
IMAGE_INFO_EX image
);
Parameters
Id [in]
Detector ID
imgMode [in]
Frame grabber image mode
image [in]
Image information
Remarks
The real image is sent to this function.
7 CFXRDS
7.1 Member Functions
7.1.1 VersionInfoGet
Brings the version information of the detector
Syntax (C++)
RESULT VersionInfoGet (
_Out_ DETECTOR_VERSION_INFO* info
);
Syntax (C#)
RESULT VersionInfoGet (
out DETECTOR_VERSION_INFO* info
);
Parameters
info [out]
Version information
RESULT_SUCCESS
|
Succeeded to get version information.
|
RESULT_INVALID_PARAMETER
|
[info] is NULL.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_ERROR
|
Failed to get version information.
|
Remarks
This function can be used after opening detector connection.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
Vieworks::vivix::DETECTOR_VERSION_INFO DetectorVersionInfo;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_S:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_V:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_S:
{
Vieworks::vivix::detector::CFXRDS* pFXRDS = NULL;
pFXRDS = (Vieworks::vivix::detector::CFXRDS*)pDetector;
nResult = pFXRDS->VersionInfoGet(&DetectorVersionInfo);
}
break;
default:
// Not supported model.
Break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get version information.
}
else
{
// Failed to get version information.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
Vieworks.vivix.net.DETECTOR_VERSION_INFO DetectorVersionInfo;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_S:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_V:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_S:
{
Vieworks.vivix.net.detector.FXRDS pFXRDS = null;
pFXRDS = pDetector as Vieworks.vivix.net.detector.FXRDS;
nResult = pFXRDS.VersionInfoGet(out DetectorVersionInfo);
}
break;
default:
// Not supported model.
Break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get version information.
}
else
{
// Failed to get version information.
}
}
7.1.2 InterpacketDelaySet
Sets the delay time of detector interpacket
Syntax (C++)
RESULT InterpacketDelaySet (
_In_ bool enable
);
Syntax (C#)
RESULT InterpacketDelaySet (
bool enable
);
Parameters
enable [in]
Enable interpacket delay.
RESULT_SUCCESS
|
Succeeded to set interpacket delay time.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_ERROR
|
Failed to set interpacket delay time.
|
Remarks
This function can be used after opening detector connection.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_S:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_V:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_S:
{
Vieworks::vivix::detector::CFXRDS* pFXRDS = NULL;
pFXRDS = (Vieworks::vivix::detector::CFXRDS*)pDetector;
nResult = pFXRDS->InterpacketDelaySet(true);
}
break;
default:
// Not supported model.
Break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to enable interpacket delay.
}
else
{
// Failed to enable interpacket delay.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_S:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_V:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_S:
{
Vieworks.vivix.net.detector.FXRDS pFXRDS = null;
pFXRDS = pDetector as Vieworks.vivix.net.detector.FXRDS;
nResult = pFXRDS.InterpacketDelaySet(true);
}
break;
default:
// Not supported model.
Break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to enable interpacket delay.
}
else
{
// Failed to enable interpacket delay.
}
}
7.1.3 InterpacketDelayGet
Gets the delay time of detector interpacket
Syntax (C++)
RESULT InterpacketDelayGet (
_Out_ bool* enable
);
Syntax (C#)
RESULT InterpacketDelayGet (
bool* enable
);
Parameters
enable [out]
Enable Interpacket delay
RESULT_SUCCESS
|
Succeeded to get interpacket delay time.
|
RESULT_INVALID_PARAMETER
|
[enable] value is NULL.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_ERROR
|
Failed to get interpacket delay time.
|
Remarks
This function can be used after opening detector connection.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
bool bInterpacketDelay = false;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_S:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_V:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_S:
{
Vieworks::vivix::detector::CFXRDS* pFXRDS = NULL;
pFXRDS = (Vieworks::vivix::detector::CFXRDS*)pDetector;
nResult = pFXRDS->InterpacketDelayGet(&bInterpacketDelay);
}
break;
default:
// Not supported model.
Break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to enable interpacket delay.
}
else
{
// Failed to enable interpacket delay.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
bool bInterpacketDelay = false;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_S:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_V:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_S:
{
Vieworks.vivix.net.detector.FXRDS pFXRDS = null;
pFXRDS = pDetector as Vieworks.vivix.net.detector.FXRDS;
nResult = pFXRDS.InterpacketDelayGet(out bInterpacketDelay);
}
break;
default:
// Not supported model.
Break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to enable interpacket delay.
}
else
{
// Failed to enable interpacket delay.
}
}
7.2 Callback Notification Setting Function
7.2.1 SetNotifyTemperature / SetDelegateTemperature
Sets NotifyTemperature notification
Syntax (C++)
void SetNotifyTemperature (
_In_ NotifyTemperature pNotify
);
Syntax (C#)
void SetDelegateTemperature (
DelegateTemperature val
);
Parameters
pNotify [in]
NotifyTemperature
val [in]
DelegateTemperature
Remarks
Refer to ‘detector::NotifyTemperature’.
Refer to ‘detector.DelegateTemperature’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
If(pDetector != NULL)
{
switch(pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_S:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_V:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_S:
{
((Vieworks::vivix::detector::FXRDS*)pDetector)->SetNotifyTemperature(NotifyTemperature);
}
break;
default:
// Not supported model
break;
}
}
void NotifyTemperature(Vieworks::vivix::DETECTOR_ID id, double temperature)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
If(pDetector != null)
{
switch(pDetector.DetectorTypeGet())
{
Case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_S:
Case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_V:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_S:
{
Vieworks.vivix.net.detector.FXRDS pFXRDS = null;
pFXRDS = pDetector as Vieworks.vivix.net.detector.FXRDS;
pFXRDS.SetDelegateTemperature(OnDelegateTemperature);
}
break;
default:
// Not supported model
break;
}
}
void OnDelegateTemperature(int id, double temperature)
{
}
7.3 Callback Notification Function
7.3.1 detector::NotifyTemperature / detector.DelegateTemperature
Syntax (C++)
void detector::NotifyTemperature (
_In_ DETECTOR_ID id,
_In_ double temperature
);
Syntax (C#)
void detector.DelegateTemperature (
int id,
double temperature
);
Parameters
id [in]
Detector ID
temperature [in]
Temperature
8 CFXRDW
8.1 Member Functions
8.1.1 VersionInfoGet
Brings the version information of the detector
Syntax (C++)
RESULT VersionInfoGet (
_In_ DETECTOR_VERSION_INFO* info
);
Syntax (C#)
RESULT VersionInfoGet (
out DETECTOR_VERSION_INFO info
);
Parameters
info [in]
Detector version information.
RESULT_SUCCESS
|
Succeeded to get version information.
|
RESULT_INVALID_PARAMETER
|
[info] is NULL.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to get version information.
|
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
bool bInterpacketDelay = false;
Vieworks::vivix::DETECTOR_VERSION_INFO DetectorVersionInfo;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDW = (Vieworks::vivix::detector::CFXRDW*)pDetector;
nResult = pFXRDW->VersionInfoGet(&DetectorVersionInfo);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get detector version information.
}
else
{
// Failed to get detector version information.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
bool bInterpacketDelay = false;
Vieworks.vivix.net.DETECTOR_VERSION_INFO DetectorVersionInfo;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
nResult = pFXRDW.VersionInfoGet(out DetectorVersionInfo);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get detector version information.
}
else
{
// Failed to get detector version information.
}
}
8.1.2 IsSleep
Checks the sleep state of the detector
Syntax (C++)
RESULT IsSleep (
_In_ bool* isSleep
);
Syntax (C#)
RESULT IsSleep (
out bool isSleep
);
RESULT_SUCCESS
|
Succeeded to get sleep state.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_ERROR
|
Failed to get sleep state.
|
Remarks
This function can be used after opening detector connection.
If the value of isSleep is true, it means that the detector is under the sleep state currently.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
bool bSleep = false;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDW = (Vieworks::vivix::detector::CFXRDW*)pDetector;
nResult = pFXRDW->IsSleep(&bSleep);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to set sleep state
if(bSleep == true)
{
// Detector is sleep state.
}
else
{
// Detector is not sleep state.
}
}
else
{
// Failed to get sleep state
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
bool bSleep = false;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
nResult = pFXRDW.IsSleep(out bSleep);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to set sleep state
if(bSleep == true)
{
// Detector is sleep state.
}
else
{
// Detector is not sleep state.
}
}
else
{
// Failed to get sleep state
}
}
8.1.3 NetworkConfigurationGet
Gets network configuration
Syntax (C++)
RESULT NetworkConfigurationGet (
_Out_ NETWORK_CONFIGURATION* config
);
Syntax (C#)
RESULT NetworkConfigurationGet (
out NETWORK_CONFIGURATION config
);
Parameters
config [out]
Network configuration
RESULT_SUCCESS
|
Succeeded to get network configuration.
|
RESULT_INVALID_PARAMETER
|
[config] is NULL.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to get network configuration.
|
Remarks
This function can be used after opening detector connection. This function brings the configuration related to the network information. The information is not stored in the detector, but recorded in the SDK memory. Therefore, call the ConfigurationRead function first and call the NetworkConfigurationGet function to get the setting value stored in the real detector.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
Vieworks::vivix::NETWORK_CONFIGURATION NetworkConfiguration;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDW = (Vieworks::vivix::detector::CFXRDW*)pDetector;
nResult = pFXRDW->NetworkConfigurationGet(&NetworkConfiguration);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get network configuration.
}
else
{
// Failed to get network configuration.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
Vieworks.vivix.net.NETWORK_CONFIGURATION NetworkConfiguration;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
nResult = pFXRDW.NetworkConfigurationGet(out NetworkConfiguration);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get network configuration.
}
else
{
// Failed to get network configuration.
}
}
8.1.4 NetworkConfigurationSet
Sets network configuration
Syntax (C++)
RESULT NetworkConfigurationSet (
_In_ NETWORK_CONFIGURATION* config
);
Syntax (C#)
RESULT NetworkConfigurationSet (
NETWORK_CONFIGURATION config
);
Parameters
config [in]
Network configuration
RESULT_SUCCESS
|
Succeeded to set network configuration.
|
RESULT_INVALID_PARAMETER
|
The invalid item exists among the [config] items.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to set networks configuration.
|
Remarks
This function can be used after opening detector connection. This function set Configuration related to the network information. The information is not configured from the detector, but recorded in the SDK memory. Therefore, call the ConfigurationSave function to send the save the information in the SDK memory to the detector.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
Vieworks::vivix::NETWORK_CONFIGURATION NetworkConfiguration;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDW = (Vieworks::vivix::detector::CFXRDW*)pDetector;
nResult = pFXRDW->NetworkConfigurationSet(&NetworkConfiguration);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to set network configuration.
}
else
{
// Failed to set network configuration.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
Vieworks.vivix.net.NETWORK_CONFIGURATION NetworkConfiguration;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
nResult = pFXRDW.NetworkConfigurationSet(NetworkConfiguration);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to set network configuration.
}
else
{
// Failed to set network configuration.
}
}
8.1.5 WirelessNetworkConfigurationGet
Gets wireless network configuration
Syntax (C++)
RESULT WirelessNetworkConfigurationGet (
_Out_ WIRELESS_NETWORK_CONFIGURATION* config
);
Syntax (C#)
RESULT WirelessNetworkConfigurationGet (
out WIRELESS_NETWORK_CONFIGURATION config
);
Parameters
config [out]
Wireless network configuration
RESULT_SUCCESS
|
Succeeded to get wireless network configuration.
|
RESULT_INVALID_PARAMETER
|
[config] is NULL.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to get wireless network configuration.
|
Remarks
This function can be used after opening detector connection. This function brings the configuration related to the wireless network information. The information is not stored in the detector, but recorded in the SDK memory. Therefore, call the ConfigurationRead function first and then call the WirelessNetworkConfigurationGet function to get the setting value in the real detector.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
Vieworks::vivix::WIRELESS_NETWORK_CONFIGURATION WirelessNetworkConfiguration;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDW = (Vieworks::vivix::detector::CFXRDW*)pDetector;
nResult = pFXRDW->WirelessNetworkConfigurationGet(&WirelessNetworkConfiguration);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get wireless network configuration.
}
else
{
// Failed to get wireless network configuration.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
Vieworks.vivix.net.WIRELESS_NETWORK_CONFIGURATION WirelessNetworkConfiguration;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
nResult = pFXRDW.WirelessNetworkConfigurationGet(out WirelessNetworkConfiguration);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get wireless network configuration.
}
else
{
// Failed to get wireless network configuration.
}
}
8.1.6 WirelessNetworkConfigurationSet
Sets wireless network configuration
Syntax (C++)
RESULT WirelessNetworkConfigurationSet (
_In_ WIRELESS_NETWORK_CONFIGURATION* config
);
Syntax (C#)
RESULT WirelessNetworkConfigurationSet (
WIRELESS_NETWORK_CONFIGURATION* config
);
Parameters
config [in]
Wireless network configuration
RESULT_SUCCESS
|
Succeeded to set wireless network configuration.
|
RESULT_INVALID_PARAMETER
|
The invalid item exists among the [config] items.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to set wireless network configuration.
|
Remarks
This function can be used after opening detector connection. This function set configuration related to the wireless network information. The information is not configured in the detector, but recorded in the SDK memory. Therefore, call the ConfigurationSave function to send and save the information in the SDK memory to the detector.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
Vieworks::vivix::WIRELESS_NETWORK_CONFIGURATION WirelessNetworkConfiguration;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDW = (Vieworks::vivix::detector::CFXRDW*)pDetector;
nResult = pFXRDW->WirelessNetworkConfigurationSet(&WirelessNetworkConfiguration);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to set wireless network configuration.
}
else
{
// Failed to set wireless network configuration.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
Vieworks.vivix.net.WIRELESS_NETWORK_CONFIGURATION WirelessNetworkConfiguration;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
nResult = pFXRDW.WirelessNetworkConfigurationSet(WirelessNetworkConfiguration);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to set wireless network configuration.
}
else
{
// Failed to set wireless network configuration.
}
}
8.1.7 WirelessAPConfigurationGet
Description
Gets wireless AP configuration
Syntax (C++)
RESULT WirelessAPConfigurationGet (
_Out_ WIRELESS_AP_CONFIGURATION* config
);
Syntax (C#)
RESULT WirelessAPConfigurationGet (
out WIRELESS_AP_CONFIGURATION config
);
Parameters
config [out]
Wireless AP configuration
RESULT_SUCCESS
|
Succeeded to get wireless AP configuration.
|
RESULT_INVALID_PARAMETER
|
[config] is NULL.
|
RESULT_DETECTOR_NO_INFORMATION
|
There is no detector information.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to get wireless AP configuration.
|
Remarks
This function can be used after opening detector connection. This function brings the configuration related to the wireless AP information. The information is not stored in the detector, but recorded in the SDK memory. Therefore, call the ConfigurationRead function first and then call WirelessAPConfigurationGet function to get the setting value in the real detector.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
Vieworks::vivix::WIRELESS_AP_CONFIGURATION WirelessAPConfiguration;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDW = (Vieworks::vivix::detector::CFXRDW*)pDetector;
nResult = pFXRDW->WirelessAPConfigurationGet(&WirelessAPConfiguration);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get wireless AP configuration.
}
else
{
// Failed to get wireless AP configuration.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
Vieworks.vivix.net.WIRELESS_AP_CONFIGURATION WirelessAPConfiguration;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
nResult = pFXRDW.WirelessAPConfigurationGet(out WirelessAPConfiguration);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get wireless AP configuration.
}
else
{
// Failed to get wireless AP configuration.
}
}
8.1.8 WirelessAPConfigurationSet
Sets wireless AP configuration
Syntax (C++)
RESULT WirelessAPConfigurationSet (
_In_ WIRELESS_AP_CONFIGURATION* config
);
Syntax (C#)
RESULT WirelessAPConfigurationSet (
WIRELESS_AP_CONFIGURATION config
);
Parameters
config [in]
Wireless AP configuration.
RESULT_SUCCESS
|
Succeeded to set trigger debounce time.
|
RESULT_INVALID_PARAMETER
|
The invalid item exists among the [config] items.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to set trigger debounce time.
|
Remarks
This function can be used after opening detector connection. This function set configuration related to the wireless AP function. The information is not configured in the detector, but recorded in the SDK memory. Therefore, call the ConfigurationSave function to send and save the information in the SDK memory to the detector.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
Vieworks::vivix::WIRELESS_AP_CONFIGURATION WirelessAPConfiguration;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDW = (Vieworks::vivix::detector::CFXRDW*)pDetector;
nResult = pFXRDW->WirelessAPConfigurationSet(&WirelessAPConfiguration);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to set wireless AP configuration.
}
else
{
// Failed to set wireless AP configuration.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
Vieworks.vivix.net.WIRELESS_AP_CONFIGURATION WirelessAPConfiguration;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
nResult = pFXRDW.WirelessAPConfigurationSet(WirelessAPConfiguration);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to set wireless AP configuration.
}
else
{
// Failed to set wireless AP configuration.
}
}
8.1.9 ConfigurationRead
Calls the configuration value stored in the real detector to the SDK memory
Syntax
RESULT ConfigurationRead (void);
RESULT_SUCCESS
|
Succeeded to read configuration.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to read configuration.
|
Remarks
This function can be used after opening detector connection. This function gets the information of Wireless AP Configuration, Network Configuration, and Wireless Network Configuration in the real detector to the SDK memory. The acquired information in the SDK memory can be brought by NetworkConfigurationGet, WirelessAPConfigurationGet, TriggerConfigurationGet functions. Note that the information of Wireless AP Configuration, Network Configuration, and Trigger Configuration which have not been stored by the CalibrationSave function can be renewed to the information stored in the detector.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDW = (Vieworks::vivix::detector::CFXRDW*)pDetector;
nResult = pFXRDW->ConfigurationRead();
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to read configuration.
}
else
{
// Failed to read configuration.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
nResult = pFXRDW.ConfigurationRead();
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to read configuration.
}
else
{
// Failed to read configuration.
}
}
8.1.10 ConfigurationSave
Saves the configuration value in the SDK memory to the detector
Syntax
RESULT ConfigurationSave (void);
RESULT_SUCCESS
|
Succeeded to save configuration.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to save configuration.
|
Remarks
This function can be used after opening detector connection. Send and save the configured information of Network Configuration, Wireless AP Configuration, and Trigger Configuration in the SDK memory to the detector. The FXRD-1417W model reboots up after applying the ConfigurationSave function successfully.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDW = (Vieworks::vivix::detector::CFXRDW*)pDetector;
nResult = pFXRDW->ConfigurationSave();
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to save configuration.
}
else
{
// Failed to save configuration.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
nResult = pFXRDW.ConfigurationSave();
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to save configuration.
}
else
{
// Failed to save configuration.
}
}
8.1.11 SleepModeEnable
Syntax (C++)
RESULT SleepModeEnable (
_In_ bool enable
);
Syntax (C#)
RESULT SleepModeEnable (
bool enable
);
Parameters
enable [in]
Sleep mode enable/disable
RESULT_SUCCESS
|
Succeeded to set sleep mode enable/disable.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to set sleep mode enable/disable.
|
Remarks
This function can be used after opening detector connection. If the sleep mode is turned on from VIVIX Setup, apply this function to turn off the sleep mode temporarily. If the sleep mode is turned off from VIVIX Setup, it cannot be enabled although applying this function. Since the sleep mode is enabled when the detector reboots up, turn off the mode if necessary.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDW = (Vieworks::vivix::detector::CFXRDW*)pDetector;
nResult = pFXRDW->SleepModeEnable(true);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to enable sleep mode.
}
else
{
// Failed to enable sleep mode.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
nResult = pFXRDW.SleepModeEnable(true);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to enable sleep mode.
}
else
{
// Failed to enable sleep mode.
}
}
8.1.12 WakeUp
Syntax
RESULT WakeUp (void);
RESULT_SUCCESS
|
Succeeded to wakeup detector.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_NOT_SUPPORTED_MODEL
|
Detector is not supported model.
|
RESULT_ERROR
|
Failed to wakeup detector or it is not in the sleep state.
|
Remarks
This function can be used after opening detector connection. This function cannot be applied if the detector is not in the sleep mode.
The detector wakes up completely at the time of calling the NotifyWakeUp function which was registered by the user.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDW = (Vieworks::vivix::detector::CFXRDW*)pDetector;
nResult = pFXRDW->WakeUp();
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to wake up detector.
}
else
{
// Failed to wake up detector.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
nResult = pFXRDW.WakeUp();
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to wake up detector.
}
else
{
// Failed to wake up detector.
}
}
8.1.13 GoSleep
Forces the detector to sleep
Syntax
RESULT GoSleep (void);
RESULT_SUCCESS
|
Detector successfully enters sleep mode.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_NOT_SUPPORTED_MODEL
|
Not a supported detector model.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is already in sleep state.
|
RESULT_ERROR
|
Detector failed to enter sleep mode or it is not in the sleep state.
|
Remarks
This function can be used after opening detector connection. This function cannot be applied if the detector is in the sleep mode.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDW = (Vieworks::vivix::detector::CFXRDW*)pDetector;
nResult = pFXRDW->GoSleep();
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to go sleep the detector.
}
else
{
// Failed to go sleep the detector.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
nResult = pFXRDW.GoSleep();
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to go sleep the detector.
}
else
{
// Failed to go sleep the detector.
}
}
8.1.14 RemainSleepModeEntryTime
Checks the remaining time until entering the sleep mode
Syntax (C++)
RESULT RemainSleepModeEntryTime(
_Out_ int* remainTime
);
Syntax (C#)
RESULT RemainSleepModeEntryTime(
out int remainTime
);
RESULT_SUCCESS
|
Succeeded to get the sleep mode entry remain time.
|
RESULT_DETECTOR_NOT_CONNECTED
|
The detector is not connected.
|
RESULT_NOT_SUPPORTED_MODEL
|
The connecting detector model is not a supported one.
|
RESULT_ERROR
|
Failed to get the sleep mode entry remain time.
|
Remarks
This function is used for getting standby time which remains until the detector enters the sleep mode. This remaining time is initialized at the time of shooting. In case the detector is already in the sleep mode, the value is invalid.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
int nRemainTime = 0;
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDW = (Vieworks::vivix::detector::CFXRDW*)pDetector;
nResult = pFXRDW->RemainSleepModeEntryTime(&nRemainTime);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get sleep mode entry remain time.
}
else
{
// Failed to get sleep mode entry remain time.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
int nRemainTime = 0;
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
nResult = pFXRDW.RemainSleepModeEntryTime(out nRemainTime);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get sleep mode entry remain time.
}
else
{
// Failed to get sleep mode entry remain time.
}
}
8.1.15 StoredImageListGet
Brings the list of images stored in the detector
Syntax (C++)
RESULT StoredImageListGet (
_Out_ STORED_IMAGE_LIST* info
);
Syntax (C#)
RESULT StoredImageListGet (
out STORED_IMAGE_LIST info
);
Parameters
info [out]
Stored image list.
RESULT_SUCCESS
|
Succeeded to get stored image list.
|
RESULT_INVALID_PARAMETER
|
[info] is NULL.
|
REUSLT_NOT_SUPPORTED_VERSION
|
Not supported FW version.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to set trigger debounce time.
|
Remarks
This function can be used after opening detector connection. This function can be used from FW V1.08 or the higher version of FXRD-1417W detector model only.
The image is taken when the detector is not connected to the SDK.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
Vieworks::vivix::STORED_IMAGE_LIST StoredImageList;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDW = (Vieworks::vivix::detector::CFXRDW*)pDetector;
nResult = pFXRDW->StoredImageListGet(&StoredImageList);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get stored image list.
}
else
{
// Failed to get stored image list.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
Vieworks.vivix.net.STORED_IMAGE_LIST StoredImageList;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
nResult = pFXRDW.StoredImageListGet(out StoredImageList);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get stored image list.
}
else
{
// Failed to get stored image list.
}
}
8.1.16 StoredImageGet
Syntax (C++)
RESULT StoredImageGet (
_In_ STORED_IMAGE_INFO* info
);
Syntax (C#)
RESULT StoredImageGet (
STORED_IMAGE_INFO info
);
Parameters
info [in]
Stored image information.
RESULT_SUCCESS
|
Succeeded to set trigger debounce time.
|
RESULT_INVALID_PARAMETER
|
[info] is NULL.
|
REUSLT_NOT_SUPPORTED_VERSION
|
Not supported FW version.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to set trigger debounce time.
|
Remarks
This function can be used after opening detector connection. This function can be used from FW V1.08 or the higher version of FXRD-1417W detector model only.
The image is taken when the detector is not connected to the SDK.
The images are sent through the FrameGrabberImageIn Callback function after applying the order successfully. The images are removed from the internal memory of the detector.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
Vieworks::vivix::STORED_IMAGE_LIST StoredImageList;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDW = (Vieworks::vivix::detector::CFXRDW*)pDetector;
nResult = pFXRDW->StoredImageListGet(&StoredImageList);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get stored image list.
if(StoredImageList.nCount > 0)
{
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDW = (Vieworks::vivix::detector::CFXRDW*)pDetector;
pFXRDW->SetNotifyFrameGrabberImageIn(NotifyFrameGrabberImageIn);
nResult = pFXRDW->StoredImageGet(&StoredImageList.pInfoList[0]);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get stored image.
}
else
{
// Failed to get stored image.
}
}
}
else
{
// Failed to get stored image list.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
Vieworks.vivix.net.STORED_IMAGE_LIST StoredImageList;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
nResult = pFXRDW.StoredImageListGet(out StoredImageList);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get stored image list.
if(StoredImageList.nCount > 0)
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
pFXRDW.SetDelegateFrameGrabberImageIn(OnDelegateFrameGrabberImageIn);
nResult = pFXRDW.StoredImageGet(StoredImageList.aryInfoList[0]);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get stored image.
}
else
{
// Failed to get stored image.
}
}
}
else
{
// Failed to get stored image list.
}
}
8.1.17 BackupImageListGet
Syntax (C++)
RESULT BackupImageListGet (
_Out_ STORED_IMAGE_LIST* info
);
Syntax (C#)
RESULT BackupImageListGet (
out STORED_IMAGE_LIST info
);
Parameters
info [out]
Backup image list.
RESULT_SUCCESS
|
Succeeded to get backup image list.
|
RESULT_INVALID_PARAMETER
|
[info] is NULL.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to set trigger debounce time.
|
Remarks
This function can be used after opening detector connection. This function can be used from FW V1.08 or higher.
The backup image is the image that was captured when the detector was connected to the SDK and the SDK could not be delivered to the SDK properly.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
Vieworks::vivix::STORED_IMAGE_LIST BackupImageList;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDW = (Vieworks::vivix::detector::CFXRDW*)pDetector;
nResult = pFXRDW->BackupImageListGet(&BackupImageList);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get backup image list.
}
else
{
// Failed to get backup image list.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
Vieworks.vivix.net.STORED_IMAGE_LIST BackupImageList;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
nResult = pFXRDW.BackupImageListGet(out BackupImageList);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get backup image list.
}
else
{
// Failed to get backup image list.
}
}
8.1.18 BackupImageGet
Syntax (C++)
RESULT BackupImageGet (
_In_ STORED_IMAGE_INFO* info
);
Syntax (C#)
RESULT BackupImageGet (
STORED_IMAGE_INFO* info
);
Parameters
info [in]
Backup image information
RESULT_SUCCESS
|
Succeeded to get backup image.
|
RESULT_INVALID_PARAMETER
|
[info] is NULL.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to get backup image.
|
Remarks
This function can be used after opening detector connection. This function can be used from FW V1.08 or the higher version only.
The backup image is the image that was captured when the detector was connected to the SDK and the SDK could not be delivered to the SDK properly.
The images are sent through the FrameGrabberImageIn Callback function after applying the order successfully. The images are removed from the internal memory of the detector.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
Vieworks::vivix::STORED_IMAGE_LIST BackupImageList;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDW = (Vieworks::vivix::detector::CFXRDW*)pDetector;
nResult = pFXRDW->BackupImageListGet(&BackupImageList);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get backup image list.
if(BackupImageList.nCount > 0)
{
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDW = (Vieworks::vivix::detector::CFXRDW*)pDetector;
pFXRDW->SetNotifyFrameGrabberImageIn(NotifyFrameGrabberImageIn);
nResult = pFXRDW->BackupImageGet(&BackupImageList.pInfoList[0]);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get backup image.
}
else
{
// Failed to get backup image.
}
}
}
else
{
// Failed to get backup image list.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
Vieworks.vivix.net.STORED_IMAGE_LIST BackupImageList;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
nResult = pFXRDW.BackupImageListGet(out BackupImageList);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get backup image list.
if(BackupImageList.nCount > 0)
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
pFXRDW.SetDelegateFrameGrabberImageIn(OnDelegateFrameGrabberImageIn);
nResult = pFXRDW.BackupImageGet(BackupImageList.aryInfoList[0]);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get backup image.
}
else
{
// Failed to get backup image.
}
}
}
else
{
// Failed to get backup image list.
}
}
8.1.19 RemoveImage
RESULT RemoveImage(STORED_IMAGE_INFO* info)
Syntax (C++)
RESULT RemoveImage (
_In_ STORED_IMAGE_INFO* info
);
Syntax (C#)
RESULT RemoveImage (
STORED_IMAGE_INFO info
);
Parameters
info [in]
Image information.
RESULT_SUCCESS
|
Succeeded to remove image in detector.
|
RESULT_INVALID_PARAMETER
|
[info] is NULL.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to remove image in detector.
|
Remarks
This function can be used after opening detector connection. It deletes the backed-up or stored image in the detector.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
Vieworks::vivix::STORED_IMAGE_LIST BackupImageList;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDW = (Vieworks::vivix::detector::CFXRDW*)pDetector;
nResult = pFXRDW->BackupImageListGet(&BackupImageList);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get backup image list.
if(BackupImageList.nCount > 0)
{
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDW = (Vieworks::vivix::detector::CFXRDW*)pDetector;
nResult = pFXRDW->RemoveImage(&BackupImageList.pInfoList[0]);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to remove backup image.
}
else
{
// Failed to remove backup image.
}
}
}
else
{
// Failed to get backup image list.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
Vieworks.vivix.net.STORED_IMAGE_LIST BackupImageList;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
nResult = pFXRDW.BackupImageListGet(out BackupImageList);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get backup image list.
if(BackupImageList.nCount > 0)
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
nResult = pFXRDW.RemoveImage(BackupImageList.aryInfoList[0]);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to remove backup image.
}
else
{
// Failed to remove backup image.
}
}
}
else
{
// Failed to get backup image list.
}
}
8.1.20 LogDataListGet
Syntax (C++)
RESULT LogDataListGet (
_Out_ LOG_LIST* logList
);
Syntax (C#)
RESULT LogDataListGet (
out LOG_LIST logList
);
Parameters
logList [out]
Log data list.
RESULT_SUCCESS
|
Succeeded to get log data list.
|
RESULT_INVALID_PARAMETER
|
[logList] is NULL.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to get log data list.
|
Remarks
This function can be used after opening detector connection. Input Timestamp to startDate and endDate of LOG_LIST as a parameter to search the log in the certain period. Input 0 to startDate and endDate and send it as a parameter if you need the log data list of the whole period.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
Vieworks::vivix::LOG_LIST LogList;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDW = (Vieworks::vivix::detector::CFXRDW*)pDetector;
CTime t1(2015, 3, 10, 0, 0, 0);
CTime t2(2015, 3, 12, 0, 0, 0);
// Boundary set
LogList.startDate = t1.GetTime();
LogList.endDate = t2.GetTime();
nResult = pFXRDW->LogDataListGet(&LogList);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get log list.
}
else
{
// Failed to get log list.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
Vieworks.vivix.net.LOG_LIST LogList;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
CTime t1(2015, 3, 10, 0, 0, 0);
CTime t2(2015, 3, 12, 0, 0, 0);
// Boundary set
LogList.startDate = t1.GetTime();
LogList.endDate = t2.GetTime();
nResult = pFXRDW.LogDataListGet(out LogList);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get log list.
}
else
{
// Failed to get log list.
}
}
8.1.21 LogDataGet
Syntax (C++)
RESULT LogDataGet (
_In_ LOG_DATA* logData
);
Syntax (C#)
RESULT LogDataGet (
LOG_DATA* logData
);
Parameters
logData [in]
Log data
RESULT_SUCCESS
|
Succeeded to get log data.
|
RESULT_INVALID_PARAMETER
|
[logData] is NULL.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to get log data.
|
Remarks
This function can be used after opening detector connection. Assign the log data to be brought by using LOG_DATA in the LOG_LIST structure, which was acquired by LogDataListGet. The log data is saved to “Detector\[Serial number]” at the bottom of the storage route of SDK log.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
Vieworks::vivix::LOG_LIST LogList;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417W:
{
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDW = (Vieworks::vivix::detector::CFXRDW*)pDetector;
CTime t1(2015, 3, 10, 0, 0, 0);
CTime t2(2015, 3, 12, 0, 0, 0);
// Boundary set
LogList.startDate = t1.GetTime();
LogList.endDate = t2.GetTime();
nResult = pFXRDW->LogDataListGet(&LogList);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get log list.
if(LogList.LogCount > 0)
{
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDW = (Vieworks::vivix::detector::CFXRDW*)pDetector;
nResult = pFXRDW->LogDataGet(&LogList.LogList[0]);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get log in log path.
}
else
{
// Failed to get log.
}
}
}
else
{
// Failed to get log list.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
Vieworks.vivix.net.LOG_LIST LogList;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
CTime t1(2015, 3, 10, 0, 0, 0);
CTime t2(2015, 3, 12, 0, 0, 0);
// Boundary set
LogList.startDate = t1.GetTime();
LogList.endDate = t2.GetTime();
nResult = pFXRDW.LogDataListGet(out LogList);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get log list.
if(LogList.LogCount > 0)
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
nResult = pFXRDW.LogDataGet(LogList.LogList[0]);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get log in log path.
}
else
{
// Failed to get log.
}
}
}
else
{
// Failed to get log list.
}
}
8.1.22 LogExportToday
Downloads the today’s log only
Syntax (C++)
RESULT LogExportToday (
_In_ const FILE_PATH exportPath
);
Syntax (C#)
RESULT LogExportToday (
string exportPath
);
Parameters
exportPath [in]
Folder path.
RESULT_SUCCESS
|
Succeeded to export log today.
|
RESULT_INVALID_PARAMETER
|
[exportPath] is not valid or not folder path.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_IO_INSUFFICIENT_PERMISSION
|
[exportPath] does not have write permission.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to export log today.
|
Remarks
This function can be used after opening detector connection.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDW = (Vieworks::vivix::detector::CFXRDW*)pDetector;
nResult = pFXRDW->LogExportToday(_T("D:\\LogFolder"));
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to export today log.
}
else
{
// Failed to export today log.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
nResult = pFXRDW.LogExportToday("D:\\LogFolder");
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to export today log.
}
else
{
// Failed to export today log.
}
}
8.1.23 LogExportAll
Saves all logs including shock report in the specified path
Syntax (C++)
RESULT LogExportAll (
_In_ bool bIncludeShockReport,
_In_ const FILE_PATH exportPath
);
Syntax (C#)
RESULT LogExportAll (
bool bIncludeShockReport,
string exportPath,
DelegateLogDownloadState state,
DelegateLogDownloadResult result
);
Parameters
bIncludeShockReport [in]
Whether the shock sensor log is included or not.
exportPath [in]
Folder path.
state [in]
Delegate Log Download State.
result [in]
Delegate Log Download Result.
RESULT_SUCCESS
|
Succeeded to export log all.
|
RESULT_INVALID_PARAMETER
|
[exportPath] is not valid or not folder path.
|
RESULT_DETECTOR_IS_IN_BUSY
|
Cannot execute the function since another performance is being processed.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to export log all.
|
Remarks
This function can be used after opening detector connection.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDW = (Vieworks::vivix::detector::CFXRDW*)pDetector;
nResult = pFXRDW->LogExportAll(true, _T("D:\\LogFolder"));
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to export all log.
}
else
{
// Failed to export all log.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
nResult = pFXRDW.LogExportAll(true, "D:\\LogFolder", null, null);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to export all log.
}
else
{
// Failed to export all log.
}
}
8.1.24 ShockReportExportAll
Syntax (C++)
RESULT ShockReportExportAll (
_In_ const FILE_PATH exportPath
);
Syntax (C#)
RESULT ShockReportExportAll (
string exportPath
DelegateShockReportDownloadState state,
DelegateShockReportDownloadResult result
);
Parameters
exportPath [in]
Folder path.
state [in]
Delegate Shock Report Download State.
result [in]
Delegate Shock Report Download Result.
RESULT_SUCCESS
|
Succeeded to export shock report.
|
RESULT_INVALID_PARAMETER
|
[exportPath] is not valid or not folder path.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to export shock report.
|
Remarks
This function can be used after opening detector connection.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDW = (Vieworks::vivix::detector::CFXRDW*)pDetector;
nResult = pFXRDW->ShockReportExportAll(_T("D:\\LogFolder"));
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to export shock report.
}
else
{
// Failed to export shock report.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
nResult = pFXRDW.ShockReportExportAll("D:\\LogFolder", null, null);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to export shock report.
}
else
{
// Failed to export shock report.
}
}
8.1.25 CurrentPatientInfoSet
Sets the current patient information
Syntax (C++)
RESULT RESULT CurrentPatientInfoSet (
_In_ PATIENT_INFO* info
);
Syntax (C#)
RESULT RESULT CurrentPatientInfoSet (
PATIENT_INFO* info
);
Parameters
info [in]
Patient information.
RESULT_SUCCESS
|
Succeeded to set current patient information.
|
RESULT_INVALID_PARAMETER
|
[info] is NULL or invalid.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to set current patient information.
|
Remarks
This function can be used after opening detector connection.
The limitations of each member of Info are shown in the table below.
patientName
|
Must be entered. (1 to 65 characters)
Unavailable characters $ % & [ ] { } | ; : < > =
|
patientId
|
Must be entered. (1 to 65 characters)
Unavailable characters $ % & [ ] { } | ; : < > =
|
accNo
|
17 characters or less.
Unavailable characters $ % & [ ] { } | ; : < > =
|
studyDate
|
Must be entered. (1 to 9 characters)
Unavailable characters $ % & [ ] { } | ; : < > =
|
studyTime
|
Must be entered. (1 to 7 characters)
Unavailable characters $ % & [ ] { } | ; : < > =
|
8.1.26 PatientInfoListSet
Sets a list of patient information
Syntax (C++)
RESULT PatientInfoListSet (
_In_ PATIENT_INFO_LIST* info,
_In_ PATIENT_LIST_SET_TYPE type
);
Syntax (C#)
RESULT PatientInfoListSet (
PATIENT_INFO_LIST* info,
PATIENT_LIST_SET_TYPE type
);
Parameters
info [in]
Patient information list
type [in]
Patient list set type.
RESULT_SUCCESS
|
Succeeded to set patient information list.
|
RESULT_INVALID_PARAMETER
|
[info] is NULL.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to set patient information list.
|
Remarks
This function can be used after opening detector connection.
Supported models: FXRD-1417W / FXRD-1012N / VXTD-2532E
The limitations of each member of ‘Info patientStepInfo’ are shown in the table below.
name
|
Must be entered. (1 to 65 characters)
Unavailable characters $ % & [ ] { } | ; : < > =
|
birth
|
9 characters or less.
Unavailable characters $ % & [ ] { } | ; : < > =
|
id
|
Must be entered. (1 to 65 characters)
Unavailable characters $ % & [ ] { } | ; : < > =
|
accNo
|
17 characters or less.
Unavailable characters $ % & [ ] { } | ; : < > =
|
studyDate
|
Must be entered. (1 to 9 characters)
Unavailable characters $ % & [ ] { } | ; : < > =
|
studyTime
|
Must be entered. (1 to 7 characters)
Unavailable characters $ % & [ ] { } | ; : < > =
|
scheduledDateTime
|
Must be entered. (1 to 15 characters)
Unavailable characters $ % & [ ] { } | ; : < > =
|
8.1.27 BodyPartInfoListSet
Sets a list of body part information
Syntax (C++)
RESULT BodyPartInfoListSet (
_In_ BODY_PART_LIST* info
);
Syntax (C#)
RESULT BodyPartInfoListSet (
BODY_PART_LIST* info
);
Parameters
info [in]
Body part information list.
RESULT_SUCCESS
|
Succeeded to set body part information list.
|
RESULT_INVALID_PARAMETER
|
[info] is NULL or invalid.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to set body part information list.
|
Remarks
This function can be used after opening detector connection.
The limitations of each member of Info are shown in the table below.
nBodypartCount
|
0 (zero) or more
|
viewerserial
|
Must be entered. (1 to 9 characters)
Unavailable characters $ % & [ ] { } | ; : < > =
|
aryBodypartInfo[ ].meaning
|
Must be entered. (1 to 65 characters)
Unavailable characters $ % & [ ] { } | ; : < > =
|
aryBodypartInfo[ ].aryProjectionInfo[ ].meaning
|
Must be entered. (1 to 65 characters)
Unavailable characters $ % & [ ] { } | ; : < > =
|
8.1.28 SelfDiagnosis
Commands the detector to process self-diagnosis
Syntax (C++)
RESULT SelfDiagnosis (
_In_ bool bWithSCU
);
Syntax (C#)
RESULT SelfDiagnosis (
bool bWithSCU
);
Parameters
bWithSCU [in]
Check whether the self-diagnosis related to SCU is processed or not when processing the detector self-diagnosis.
RESULT_SUCCESS
|
Succeeded to set trigger debounce time.
|
RESULT_DETECTOR_IS_IN_BUSY
|
Cannot execute the self-diagnosis since another performance is being processed.
|
RESULT_NOT_SUPPORTED_VERSION
|
Not supported version.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to set trigger debounce time.
|
Remarks
This function can be used after opening detector connection. The self-diagnosis is supported from the detector FW V1.10 or the higher version. Executes all diagnosable items in the detector FW and sends the result. The self-diagnosis items can be different depending on the firmware version of detector. The callback functions related to the self-diagnosis are NotifySelfDiagnosisTimeout, NotifySelfDiagnosisItemResult, and NotifySelfDiagnosisDone.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDW = (Vieworks::vivix::detector::CFXRDW*)pDetector;
nResult = pFXRDW->SelfDiagnosis(true);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to start self diagnosis.
}
else
{
// Failed to start self diagnosis.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
nResult = pFXRDW.SelfDiagnosis(true);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to start self diagnosis.
}
else
{
// Failed to start self diagnosis.
}
}
8.1.29 DiagnosableItemsGet
Gets a list of diagnosable item
Syntax (C++)
RESULT DiagnosableItemsGet (
_In_ bool bIsSCU,
_Out_ DIAGNOSABLE_ITEM_INFO_LIST* list
);
Syntax (C#)
RESULT DiagnosableItemsGet (
_In_ bool bIsSCU,
ref DIAGNOSABLE_ITEM_INFO_LIST list
);
Parameters
bIsSCU [in]
Include SCU related function diagnosis.
list [out]
Diagnosable item information list.
RESULT_SUCCESS
|
Succeeded to get diagnosable item list.
|
RESULT_INVALID_PARAMETER
|
Detector ID is out of range or [type] value is invalid or out of range.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to get diagnosable item list.
|
Remarks
This function can be used after opening detector connection.
The self-diagnosis is supported from the detector FW V1.10 or the higher version. It receives the list of diagnosable items from the detector firmware. Execute the self-diagnosis to all diagnosable items or partial items by using the DiagnoseItem function. The self-diagnosis items can be different depending on the firmware version of detector. The callback functions related to the self-diagnosis are NotifySelfDiagnosisTimeout, NotifySelfDiagnosisItemResult, and NotifySelfDiagnosisDone.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
Vieworks::vivix::DIAGNOSABLE_ITEM_INFO_LIST DiagnosableItemInfoList;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDW = (Vieworks::vivix::detector::CFXRDW*)pDetector;
nResult = pFXRDW->DiagnosableItemsGet(true, &DiagnosableItemInfoList);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get diagnosable item list.
}
else
{
// Failed to get diagnosable item list.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
Vieworks.vivix.net.DIAGNOSABLE_ITEM_INFO_LIST DiagnosableItemInfoList = new Vieworks.vivix.net.DIAGNOSABLE_ITEM_INFO_LIST();
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDW;
nResult = pFXRDW.DiagnosableItemsGet(true, ref DiagnosableItemInfoList);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.RESULT.RESULT_SUCCESS)
{
// Succeeded to get diagnosable item list.
}
else
{
// Failed to get diagnosable item list.
}
}
8.1.30 DiagnoseItem
Syntax (C++)
RESULT DiagnoseItem (
_In_ int category,
_In_ int item
);
Syntax (C#)
RESULT DiagnoseItem (
_In_ int category,
_In_ int item
);
Parameters
category [in]
It is the category number of the item to be self-diagnosed.
item [in]
It is the item number of the item to be self-diagnosed.
RESULT_SUCCESS
|
Succeeded to start diagnosis.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to start diagnosis.
|
Remarks
This function can be used after opening detector connection.
The self-diagnosis is supported from the detector FW V1.10 or the higher version.
The diagnosable items can be sent by using the DiagnosableItemsGet function.
Execute the self-diagnosis to all diagnosable items or partial items by using the DiagnoseItem function
The callback functions related to the DiagnoseItem function are NotifySelfDiagnosisTimeout and NotifySelfDiagnosisItemResult.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
Vieworks::vivix::DIAGNOSABLE_ITEM_INFO_LIST DiagnosableItemInfoList;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDW = (Vieworks::vivix::detector::CFXRDW*)pDetector;
nResult = pFXRDW->DiagnosableItemsGet(true, &DiagnosableItemInfoList);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get diagnosable item list.
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDW = (Vieworks::vivix::detector::CFXRDW*)pDetector;
if(DiagnosableItemInfoList.numOfitems > 0)
{
nResult = pFXRDN->DiagnoseItem(DiagnosableItemInfoList.items[0].categoryId, DiagnosableItemInfoList.items[0].itemId);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to diagnose item.
}
else
{
// Failed to diagnose item.
}
}
}
else
{
// Failed to get diagnosable item list.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
Vieworks.vivix.net.DIAGNOSABLE_ITEM_INFO_LIST DiagnosableItemInfoList = new Vieworks.vivix.net.DIAGNOSABLE_ITEM_INFO_LIST();
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDW;
nResult = pFXRDW.DiagnosableItemsGet(true, ref DiagnosableItemInfoList);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get diagnosable item list.
Vieworks.vivix.net.detector.FXRDW pFXRDW = NULL;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
if(DiagnosableItemInfoList.numOfitems > 0)
{
nResult = pFXRDW.DiagnoseItem(DiagnosableItemInfoList.items[0].categoryId, DiagnosableItemInfoList.items[0].itemId);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to diagnose item.
}
else
{
// Failed to diagnose item.
}
}
}
else
{
// Failed to get diagnosable item list.
}
}
8.1.31 AbortSelfDiagnosis
Syntax (C++)
RESULT AbortSelfDiagnosis (void);
Syntax (C#)
RESULT AbortSelfDiagnosis (void);
RESULT_SUCCESS
|
Succeeded to abort self diagnosis.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_NOT_SUPPORTED_VERSION
|
Not supported version.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to abort self diagnosis.
|
Remarks
This function can be used after opening detector connection.
The self-diagnosis is supported in the V1.10 or the higher version of F/W.
The callback function related to this function is NotifySelfDiagnosisDone.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDW*)pDetector;
nResult = pFXRDW->AbortSelfDiagnosis();
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to abort self diagnosis.
}
else
{
// Failed to abort self diagnosis.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
nResult = pFXRDW.AbortSelfDiagnosis();
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to abort self diagnosis.
}
else
{
// Failed to abort self diagnosis.
}
}
8.1.32 ConnectionTypeGet
Gets the interface communicated wth the connecting detector.
Syntax (C++)
RESULT ConnectionTypeGet (
_Out_ CONNECTION_INTERFACE* interfaceType
);
Syntax (C#)
RESULT IsSCUConnected (
Out CONNECTION_INTERFACE interfaceType
);
Parameters
interfaceType [out]
A variable for indicating communication interface type between a detector and SDK.
RESULT_SUCCESS
|
Succeeded to get connection type.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
Remarks
Acquires information about the communication way between the detector and SDK. This information is the same as that of being transferred through KeepAlive notification / delegate.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
CONNECTION_INTERFACE connectionType;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDW = (Vieworks::vivix::detector::CFXRDW*)pDetector;
nResult = pFXRDW->ConnectionTypeGet(&connectionType);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get connection interface information.
}
else
{
// Failed to get connection interface information.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
CONNECTION_INTERFACE connectionType;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
nResult = pFXRDW.ConnectionTypeGet(out connectionType);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get connection interface information.
}
else
{
// Failed to get connection interface information.
}
}
8.1.33 WirelessSignalGet
Gets information about the signal strength of wireless communication.
Syntax (C++)
RESULT WirelessSignalGet (
_Out_ WIRELESS_SIGNAL_QUALITY* wirelessQuality,
_Out_ unsigned int* linkQuality
);
Syntax (C#)
RESULT WirelessSignalGet (
Out WIRELESS_SIGNAL_QUALITY wirelessQuality,
Out unsigned int linkQuality
);
Parameters
wirelessQuality [out]
Signal strength level of wireless communication
linkQuality [out]
Signal strength value of wireless communication
RESULT_SUCCESS
|
Succeeded to get wireless signal information.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
Remarks
Acquires information about the communication way between the detector and SDK. This information is the same as that of being transferred through KeepAlive notification / delegate.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
WIRELESS_SIGNAL_QUALITY wirelessQuality;
unsigned int linkQuality;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDW = (Vieworks::vivix::detector::CFXRDW*)pDetector;
nResult = pFXRDW->WirelessSignalGet(&wirelessQuality, &linkQuality);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get wireless signal information.
}
else
{
// Failed to get wireless signal information.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
WIRELESS_SIGNAL_QUALITY wirelessQuality;
unsigned int linkQuality;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
nResult = pFXRDW.WirelessSignalGet(out wirelessQuality, out linkQuality);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get wireless signal information.
}
else
{
// Failed to get wireless signal information.
}
}
8.1.34 BatteryStateGet
Gets information of the battery installed to the detector.
Syntax (C++)
RESULT BatteryStateGet (
_Out_ BATTERY_REMAIN_LEVEL* batteryRemain,
_Out_ double* batteryGauge,
_Out_ double* voltage
);
Syntax (C#)
RESULT BatteryStateGet (
Out BATTERY_REMAIN_LEVEL batteryRemain,
Out double batteryGauge,
Out double voltage
);
Parameters
batteryRemain [out]
Battery level
batteryGauge [out]
Battery level (Unit: %)
voltage [out]
Battery voltage
RESULT_SUCCESS
|
Succeeded to get battery state information.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
Remarks
Acquires information about the communication way between the detector and SDK. This information is the same as that of being transferred through KeepAlive notification / delegate.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
BATTERY_REMAIN_LEVEL batteryRemain;
double batteryGauge;
double voltage;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDW = (Vieworks::vivix::detector::CFXRDW*)pDetector;
nResult = pFXRDW->BatteryStateGet(&batteryRemain, &batteryGauge, &voltage);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get battery state information.
}
else
{
// Failed to get battery state information.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
BATTERY_REMAIN_LEVEL batteryRemain;
double batteryGauge;
double voltage;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
nResult = pFXRDW.BatteryStateGet(out batteryRemain, out batteryGauge, out voltage);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get battery state information.
}
else
{
// Failed to get battery state information.
}
}
8.1.35 OffsetDownload
Downloads the offset calibration data
Syntax (C++)
RESULT OffsetDownload (
_In_ const FILE_PATH filePath
);
Syntax (C#)
RESULT OffsetDownload (
string filePath
);
Parameters
filePath [in]
File path.
RESULT_SUCCESS
|
Succeeded to download the offset calibration data file.
|
RESULT_INVALID_PARAMETER
|
[filePath] is not valid or not file path.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to download the offset calibration data file.
|
Remarks
This function can be used after opening detector connection.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDW = (Vieworks::vivix::detector::CFXRDW*)pDetector;
nResult = pFXRDW->OffsetDownload(_T("D:\\offset.dat"));
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to download offset calibration data.
}
else
{
// Failed to download offset calibration data.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
nResult = pFXRDW.OffsetDownload("D:\\offset.dat");
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to download offset calibration data.
}
else
{
// Failed to download offset calibration data.
}
}
8.1.36 IsSCUConnected
Checks if communication between a detector and SCU are successfully linked.
Syntax (C++)
RESULT IsSCUConnected (
_Out_ bool bConnected
);
Syntax (C#)
RESULT IsSCUConnected (
Out bool bConnected
);
Parameters
bConnected [out]
A variable for indicating if communication between a detector and SCU are linked normally.
RESULT_SUCCESS
|
Succeeded to get connection state with SCU.
|
Remarks
Indicating whether communication between the detector and SCU is linked or not. The detector cannot receive signals from a generator if it is not connected with SCU.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
bool bSCUConnected = false;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDW = (Vieworks::vivix::detector::CFXRDW*)pDetector;
nResult = pFXRDW->IsSCUConnected(&bSCUConnected);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get connection state.
}
else
{
// Failed to get connection state.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
bool bSCUConnected = false;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
nResult = pFXRDW.IsSCUConnected(out bSCUConnected);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get connection state.
}
else
{
// Failed to get connection state.
}
}
8.1.37 ImageTransmissionAbort
Aborts the current image transmission
Syntax (C++)
RESULT ImageTransmissionAbort (void);
Syntax (C#)
RESULT ImageTransmissionAbort (void);
RESULT_SUCCESS
|
Succeeded to abort image transmission.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_NOT_SUPPORTED_VERSION
|
Not supported F/W version.
|
RESULT_ERROR
|
There is no image in transit, or failed to abort image transmission.
|
Remarks
Since the image transmission timeout can be set up to 120 seconds, the feature to stop transmitting images is added.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
Vieworks::vivix::detector::CFXRDW* pFXRDW = NULL;
pFXRDW = (Vieworks::vivix::detector::CFXRDW*)pDetector;
nResult = pFXRDW->ImageTransmissionAbort();
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to abort image transmission.
}
else
{
// Failed to abort image transmission.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
bool bSCUConnected = false;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
nResult = pFXRDW.ImageTransmissionAbort();
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to abort image transmission.
}
else
{
// Failed to abort image transmission.
}
}
8.2 Callback Notification Setting Function
8.2.1 SetNotifyPowerWarning / SetDelegatePowerWarning
Sets NotifyPowerWarning notification
Syntax (C++)
void SetNotifyPowerWarning (
_In_ NotifyPowerWarning pNotify
);
Syntax (C#)
void SetDelegatePowerWarning (
DelegatePowerWarning val
);
Parameters
pNotify [in]
NotifyPowerWarning
val [in]
DelegatePowerWarning
Remarks
Refer to ‘detector::NotifyPowerWarning’.
Refer to ‘detector.DelegatePowerWarning’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != NULL)
{
switch(pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
((Vieworks::vivix::detector::FXRDW*)pDetector)->SetNotifyPowerWarning(NotifyPowerWarning);
}
break;
default:
// Not supported model
break;
}
}
void NotifyPowerWarning(Vieworks::vivix::DETECTOR_ID id, VOLTAGE_STATUS status)
{
switch(status)
{
case Vieworks::vivix::VOLTAGE_STATUS::VOLTAGE_WARNING:
{
// Voltage warning
}
break;
case Vieworks::vivix::VOLTAGE_STATUS::VOLTAGE_POWER_OFF:
{
// Power off
}
break;
case Vieworks::vivix::VOLTAGE_HIBERNATE:
{
// Hibernate
}
break;
default:
{
// Invalid Voltage Status
}
break;
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != null)
{
switch(pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
pFXRDW.SetDelegatePowerWarning(OnDelegatePowerWarning);
}
break;
default:
// Not supported model
break;
}
}
void OnDelegatePowerWarning(int id, VOLTAGE_STATUS status)
{
switch(status)
{
case Vieworks.vivix.net.VOLTAGE_STATUS.VOLTAGE_WARNING:
{
// Voltage warning
}
break;
case Vieworks.vivix.net.VOLTAGE_STATUS.VOLTAGE_POWER_OFF:
{
// Power off
}
break;
case Vieworks.vivix.net.VOLTAGE_HIBERNATE:
{
// Hibernate
}
break;
default:
{
// Invalid Voltage Status
}
break;
}
}
8.2.2 SetNotifySleep / SetDelegateSleep
Sets NotifySleep / DelegateSleep notification
Syntax (C++)
void SetNotifySleep (
_In_ NotifySleep pNotify
);
Syntax (C#)
void SetDelegateSleep (
DelegateSleep val
);
Parameters
pNotify [in]
NotifySleep
val [in]
DelegateSleep
Remarks
Refer to ‘detector::NotifySleep’.
Refer to ‘detector.DelegateSleep’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != NULL)
{
switch(pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
((Vieworks::vivix::detector::FXRDW*)pDetector)->SetNotifySleep(NotifySleep);
}
break;
default:
// Not supported model
break;
}
}
void NotifySleep(Vieworks::vivix::DETECTOR_ID id)
{
// Detector is in sleep state
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != null)
{
switch(pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
pFXRDW.SetDelegateSleep(OnDelegateSleep);
}
break;
default:
// Not supported model
break;
}
}
void OnDelegateSleep(int id)
{
// Detector enters sleep state
}
8.2.3 SetNotifyWakeUp / SetDelegateWakeUp
Sets NotifyWakeUp / DelegateWakeUp notification
Syntax (C++)
void SetNotifyWakeUp (
_In_ NotifyWakeUp pNotify
);
Syntax (C#)
void SetDelegateWakeUp (
DelegateWakeUp val
);
Parameters
pNotify [in]
NotifyWakeUp
val [in]
DelegateWakeUp
Remarks
Refer to ‘detector::NotifyWakeUp’.
Refer to ‘detector.DelegateWakeUp’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != NULL)
{
switch(pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
((Vieworks::vivix::detector::FXRDW*)pDetector)->SetNotifyWakeUp(NotifyWakeUp);
}
break;
default:
// Not supported model
break;
}
}
void NotifyWakeUp(Vieworks::vivix::DETECTOR_ID id)
{
// The detector converts from the Sleep status to the normal.
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != null)
{
switch(pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
pFXRDW.SetDelegateWakeUp(OnDelegateWakeUp);
}
break;
default:
// Not supported model
break;
}
}
void OnDelegateWakeUp(int id)
{
// The detector converts from the Sleep status to the normal.
}
8.2.4 SetNotifyKeepAlive / SetDelegateKeepAlive
Sets NotifyKeepAlive / DelegateKeepAlive notification
Syntax (C++)
void SetNotifyKeepAlive (
_In_ NotifyKeepAlive pNotify
);
Syntax (C#)
void SetDelegateKeepAlive (
DelegateKeepAlive val
);
Parameters
pNotify [in]
NotifyKeepAlive
val [in]
DelegateKeepAlive
Remarks
Refer to ‘detector::NotifyKeepAlive’.
Refer to ‘detector.DelegateKeepAlive’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != NULL)
{
switch(pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
((Vieworks::vivix::detector::FXRDW*)pDetector)->SetNotifyKeepAlive(NotifyKeepAlive);
}
break;
default:
// Not supported model
break;
}
}
void NotifyKeepAlive(Vieworks::vivix::DETECTOR_ID id, double temperature, Vieworks::vivix::CONNECTION_INTERFACE interfaceType, Vieworks::vivix::WIRELESS_SIGNAL_QUALITY wirelessQuality, unsigned int linkQuality, Vieworks::vivix::BATTERY_REMAIN_LEVEL batteryRemain, unsigned int batteryGauge)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != null)
{
switch(pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
pFXRDW.SetDelegateKeepAlive(OnDelegateKeepAlive);
}
break;
default:
// Not supported model
break;
}
}
void OnDelegateKeepAlive(int id, double temperature, Vieworks.vivix.net.CONNECTION_INTERFACE interfaceType, Vieworks.vivix.net.WIRELESS_SIGNAL_QUALITY wirelessQuality, uint linkQuality, Vieworks.vivix.net.BATTERY_REMAIN_LEVEL batteryRemain, uint batteryGauge)
{
}
8.2.5 SetNotifyLogDownloadState / SetDelegateLogDownloadState
Sets the notification of NotifyLogDownloadState / DelegateLogDownloadState
Syntax (C++)
void SetNotifyLogDownloadState(
_In_ NotifyLogDownloadState pNotify
);
Syntax (C#)
void SetDelegateLogDownloadState(
DelegateLogDownloadState val
);
Parameters
pNotify [in]
NotifyLogDownloadState
val [in]
DelegateLogDownloadState
Remarks
Refer to ‘detector::NotifyLogDownloadState’.
Refer to ‘detector.DelegateLogDownloadState’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != NULL)
{
switch(pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
((Vieworks::vivix::detector::FXRDW*)pDetector)->SetNotifyLogDownloadState(NotifyLogDownloadState);
}
break;
default:
// Not supported model
break;
}
}
void NotifyLogDownloadState(Vieworks::vivix::DETECTOR_ID id, int currentStep, int totalStep, bool success)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != null)
{
switch(pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
pFXRDW.SetDelegateLogDownloadState(OnDelegateLogDownloadState);
}
break;
default:
// Not supported model
break;
}
}
void OnDelegateLogDownloadState(int id, int currentStep, int totalStep, bool success)
{
}
8.2.6 SetNotifyLogDownloadResult / SetDelegateLogDownloadResult
Sets the notification of NotifyLogDownloadResult / DelegateLogDownloadResult
Syntax (C++)
void SetNotifyLogDownloadResult(
_In_ NotifyLogDownloadResult pNotify
);
Syntax (C#)
void SetDelegateLogDownloadResult(
DelegateLogDownloadResult val
);
Parameters
pNotify [in]
NotifyLogDownloadResult
val [in]
DelegateLogDownloadResult
Remarks
Refer to ‘detector::NotifyLogDownloadResult’.
Refer to ‘detector.DelegateLogDownloadResult’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != NULL)
{
switch(pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
((Vieworks::vivix::detector::FXRDW*)pDetector)->SetNotifyLogDownloadResult(NotifyLogDownloadResult);
}
break;
default:
// Not supported model
break;
}
}
void NotifyLogDownloadResult(Vieworks::vivix::DETECTOR_ID id, bool success)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != null)
{
switch(pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
pFXRDW.SetDelegateLogDownloadResult(OnDelegateLogDownloadResult);
}
break;
default:
// Not supported model
break;
}
}
void OnDelegateLogDownloadResult(int id, bool success)
{
}
8.2.7 SetNotifyReboot / SetDelegateReboot
Sets the notification of NotifyReboot / DelegateReboot
Syntax (C++)
void SetNotifyReboot(
_In_ NotifyReboot pNotify
);
Syntax (C#)
void SetDelegateReboot(
DelegateReboot val
);
Parameters
pNotify [in]
NotifyReboot
val [in]
DelegateReboot
Remarks
Refer to ‘detector::NotifyReboot’.
Refer to ‘detector.DelegateReboot’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != NULL)
{
switch(pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
((Vieworks::vivix::detector::FXRDW*)pDetector)->SetNotifyReboot(NotifyReboot);
}
break;
default:
// Not supported model
break;
}
}
void NotifyReboot(Vieworks::vivix::DETECTOR_ID id, Vieworks::vivix::REBOOT_STATUS rebootStatus)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != null)
{
switch(pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
pFXRDW.SetDelegateReboot(OnDelegateReboot);
}
break;
default:
// Not supported model
break;
}
}
void OnDelegateReboot(int id, Vieworks.vivix.net.REBOOT_STATUS rebootStatus)
{
}
8.2.8 SetNotifySelfDiagnosisTimeout / SetDelegateSelfDiagnosisTimeout
Sets the notification of NotifySelfDiagnosisTimeout / DelegateSelfDiagnosisTimeout
Syntax (C++)
void SetNotifySelfDiagnosisTiemout(
_In_ NotifySelfDiagnosisTimeout pNotify
);
Syntax (C#)
void SetDelegateSelfDiagnosisTiemout(
DelegateSelfDiagnosisTimeout val
);
Parameters
pNotify [in]
NotifySelfDiagnosisTimeout
val [in]
DelegateSelfDiagnosisTimeout
Remarks
Refer to ‘detector::NotifySelfDiagnosisTimeout’.
Refer to ‘detector.DelegateSelfDiagnosisTimeout’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != NULL)
{
switch(pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
((Vieworks::vivix::detector::FXRDW*)pDetector)->SetNotifySelfDiagnosisTimeout(NotifySelfDiagnosisTimeout);
}
break;
default:
// Not supported model
break;
}
}
void NotifySelfDiagnosisTimeout(Vieworks::vivix::DETECTOR_ID id)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != null)
{
switch(pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
pFXRDW.SetDelegateSelfDiagnosisTimeout
(OnDelegateSelfDiagnosisTimeout);
}
break;
default:
// Not supported model
break;
}
}
void OnDelegateSelfDiagnosisTimeout(int id)
{
}
8.2.9 SetNotifySelfDiagnosisItemResult / SetDelegateSelfDiagnosisItemResult
Sets the notification of NotifySelfDiagnosisItemResult / DelegateSelfDiagnosisItemResult
Syntax (C++)
void SetNotifySelfDiagnosisResult (
_In_ NotifySelfDiagnosisResult pNotify
);
Syntax (C#)
void SetDelegateSelfDiagnosisResult (
DelegateSelfDiagnosisResult val
);
Parameters
pNotify [in]
NotifySelfDiagnosisItemResult
val [in]
DelegateSelfDiagnosisItemResult
Remarks
Refer to ‘detector::NotifySelfDiagnosisItemResult’.
Refer to ‘detector.DelegateSelfDiagnosisItemResult’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != NULL)
{
switch(pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
((Vieworks::vivix::detector::FXRDW*)pDetector)->SetNotifySelfDiagnosisResult(NotifySelfDiagnosisResult);
}
break;
default:
// Not supported model
break;
}
}
void NotifySelfDiagnosisResult(Vieworks::vivix::DETECTOR_ID id, Vieworks::vivix::SELF_DIAGNOSIS_RESULT* result)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != null)
{
switch(pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
pFXRDW.SetDelegateSelfDiagnosisResult
(OnDelegateSelfDiagnosisResult);
}
break;
default:
// Not supported model
break;
}
}
void OnDelegateSelfDiagnosisResult(int id, Vieworks.vivix.net.SELF_DIAGNOSIS_RESULT result)
{
}
8.2.10 SetNotifySelfDiagnosisItemDone / SetDelegateSelfDiagnosisItemDone
Sets the notification of NotifySelfDiagnosisItemDone / DelegateSelfDiagnosisItemDone
Syntax (C++)
void SetNotifySelfDiagnosisDone (
_In_ NotifySelfDiagnosisDone pNotify
);
Syntax (C#)
void SetDelegateSelfDiagnosisDone (
DelegateSelfDiagnosisDone val
);
Parameters
pNotify [in]
NotifySelfDiagnosisItemDone
val [in]
DelegateSelfDiagnosisItemDone
Remarks
Refer to ‘detector::NotifySelfDiagnosisDone’.
Refer to ‘detector.DelegateSelfDiagnosisDone’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != NULL)
{
switch(pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
((Vieworks::vivix::detector::FXRDW*)pDetector)->SetNotifySelfDiagnosisDone(NotifySelfDiagnosisDone);
}
break;
default:
// Not supported model
break;
}
}
void NotifySelfDiagnosisDone(Vieworks::vivix::DETECTOR_ID id, Vieworks::vivix::SELF_DIAGNOSIS_DONE_TYPE type, Vieworks::vivix::SELF_DIAGNOSIS_REPORT* report)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != null)
{
switch(pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
pFXRDW.SetDelegateSelfDiagnosisDone(OnDelegateSelfDiagnosisDone);
}
break;
default:
// Not supported model
break;
}
}
void OnDelegateSelfDiagnosisDone(int id, Vieworks.vivix.net.SELF_DIAGNOSIS_DONE_TYPE type, Vieworks.vivix.net.SELF_DIAGNOSIS_REPORT report)
{
}
8.2.11 SetNotifyShockReportDownloadState / SetDelegateShockReportDownloadState
Sets the notification of NotifyShockReportDownloadState / DelegateShockReportDownloadState
Syntax (C++)
void SetNotifyShockReportDownloadState(
_In_ NotifyShockReportDownloadState pNotify
);
Syntax (C#)
void SetDelegateShockReportDownloadState(
DelegateShockReportDownloadState val
);
Parameters
pNotify [in]
NotifyShockReportDownloadState
val [in]
DelegateShockReportDownloadState
Remarks
Refer to ‘detector::NotifyShockReportDownloadState’.
Refer to ‘detector.DelegateShockReportDownloadState’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != NULL)
{
switch(pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
((Vieworks::vivix::detector::FXRDW*)pDetector)->SetNotifyShockReportDownloadState(NotifyShockReportDownloadState);
}
break;
default:
// Not supported model
break;
}
}
void NotifyShockReportDownloadState(Vieworks::vivix::DETECTOR_ID id, int currentStep, int totalStep, bool success)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != null)
{
switch(pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
pFXRDW.SetDelegateShockReportDownloadState
(OnDelegateShockReportDownloadState);
}
break;
default:
// Not supported model
break;
}
}
void OnDelegateShockReportDownloadState(int id, int currentStep, int totalStep, bool success)
{
}
8.2.12 SetNotifyShockReportDownloadResult / SetDelegateShockReportDownloadResult
Sets the notification of NotifyShockReportDownloadResult / DelegateShockReportDownloadResult
Syntax (C++)
void SetNotifyShockReportDownloadResult(
_In_ NotifyShockReportDownloadResult pNotify
);
Syntax (C#)
void SetDelegateShockReportDownloadResult(
DelegateShockReportDownloadResult val
);
Parameters
pNotify [in]
NotifyShockReportDownloadResult
val [in]
DelegateShockReportDownloadResult
Remarks
Refer to ‘detector::NotifyShockReportDownloadResult’.
Refer to ‘detector.DelegateShockReportDownloadResult’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != NULL)
{
switch(pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
((Vieworks::vivix::detector::FXRDW*)pDetector)->SetNotifyShockReportDownloadResult(NotifyShockReportDownloadResult);
}
break;
default:
// Not supported model
break;
}
}
void NotifyShockReportDownloadResult(Vieworks::vivix::DETECTOR_ID id, bool success)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != null)
{
switch(pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
pFXRDW.SetDelegateShockReportDownloadResult
(OnDelegateShockReportDownloadResult);
}
break;
default:
// Not supported model
break;
}
}
void OnDelegateShockReportDownloadResult(int id, bool success)
{
}
8.2.13 SetNotifyImageTransmissionDelayed / SetDelegateImageTransmissionDelayed
Sets the notification of SetNotifyImageTransmissionDelayed / ImageTransmissionDelayed
Syntax (C++)
void SetNotifyImageTransmissionDelayed (
_In_ NotifyImageTransmissionDelayed pNotify
);
Syntax (C#)
void SetDelegateImageTransmissionDelayed (
DelegatemageTransmissionDelayed val
);
Parameters
pNotify [in]
NotifyImageTransmissionDelayed
val [in]
DelegatemageTransmissionDelayed
Remarks
Refer to ‘detector::NotifyImageTransmissionDelayed'.
Refer to ‘detector.DelegatemageTransmissionDelayed'.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != NULL)
{
switch(pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
((Vieworks::vivix::detector::FXRDW*)pDetector)-> SetNotifyImageTransmissionDelayed(NotifyImageTransmissionDelayed);
}
break;
default:
// Not supported model
break;
}
}
void NotifyImageTransmissionDelayed(Vieworks::vivix::DETECTOR_ID id)
{
// Image Transmission Delayed
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != NULL)
{
switch(pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_W:
{
Vieworks.vivix.net.detector.FXRDW pFXRDW = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDW;
pFXRDW.SetDelegateImageTransmissionDelayed
(OnDelegateImageTransmissionDelayed);
}
break;
default:
// Not supported model
break;
}
}
void OnDelegateImageTransmissionDelayed(int id)
{
// Image Transmission Delayed
}
8.3 Callback Notification Function
8.3.1 detector::NotifyPowerWarning / detector.DelegatePowerWarning
Gives warning of wireless detector power
Syntax (C++)
void detector::NotifyPowerWarning (
_In_ DETECTOR_ID id,
_In_ VOLTAGE_STATUS status
);
Syntax (C#)
void detector.DelegatePowerWarning (
int id,
VOLTAGE_STATUS status
);
Parameters
id [in]
Detector ID
status [in]
Detector voltage status
8.3.2 detector::NotifySleep / detector.DelegateSleep
Notifies when wireless detector enters to sleep mode
Syntax (C++)
void WirelessDetectorSleep (
_In_ DETECTOR_ID id
);
Syntax (C#)
void DelegateSleep (
int id
);
Parameters
id [in]
Detector ID
8.3.3 detector::NotifyWakeUp / detector.DelegateWakeUp
Notifies when wireless detector wakes up
Syntax (C++)
void detector::NotifyWakeUp (
_In_ DETECTOR_ID id
);
Syntax (C#)
void detector.DelegateWakeUp (
int id
);
Parameters
id [in]
Detector ID
Remarks
It is the notification called when the detector wakes up from the sleep status completely.
8.3.4 detector::NotifyKeepAlive / detector.DelegateKeepAlive
Notifies that wireless detector keeps alive. If a battery pack is not attached to the detector, the value of BATTERY_REMAIN is not reliable.
Syntax (C++)
void detector::NotifyKeepAlive (
_In_ DETECTOR_ID id,
_In_ double temperature,
_In_ CONNECTION_INTERFACE interfaceType,
_In_ WIRELESS_SIGNAL_QUALITY wirelessQuality,
_In_ uint linkQuality
_In_ BATTERY_REMAIN_LEVEL batteryRemain,
_In_ uint batteryGauge
);
Syntax (C#)
void detector.DelegateKeepAlive (
int id,
double temperature,
CONNECTION_INTERFACE interfaceType,
WIRELESS_SIGNAL_QUALITY wirelessQuality,
uint linkQuality
BATTERY_REMAIN_LEVEL batteryRemain,
uint batteryGauge
);
Parameters
id [in]
Detector ID
temperature [in]
Temperature of detector
interfaceType [in]
Detector interface type
wirelessQuality [in]
Wireless signal quality.
batteryRemain [in]
Battery remain level
batteryGauge [in]
Battery remain gauge
Remarks
This notification is delivered every 2 seconds.
8.3.5 detector::NotifyLogDownloadState/ detector.DelegateLogDownloadState
Notifies the download state.
Syntax (C++)
void detector:: NotifyLogDownloadState (
_In_ DETECTOR_ID id,
_In_ int currentStep,
_In_ int totalStep,
_In_ bool success
);
Syntax (C#)
void detector. DelegateLogDownloadState (
int id,
int currentStep,
int totalStep,
bool success
);
Parameters
id [in]
Detector ID
currentStep [in]
Current step
totalStep [in]
Total step
success [in]
Download state
8.3.6 detector::NotifyrLogDownloadResult / detector.DelegaterLogDownloadResult
Notifies the download result
Syntax (C++)
void detector::NotifyLogDownloadResult (
_In_ DETECTOR_ID id,
_In_ bool success
);
Syntax (C#)
void detector.DelegateLogDownloadResult (
int id,
bool success
);
Parameters
id [in]
Detector ID
success [in]
Download result
8.3.7 detector::NotifyReboot / detector.DelegateReboot
Notifies the rebooting process of the detector.
Syntax (C++)
void detector::NotifyReboot (
_In_ DETECTOR_ID id,
_In_ REBOOT_STATUS rebootStatus
);
Syntax (C#)
void detector.DelegateReboot (
int id,
REBOOT_STATUS rebootStatus
);
Parameters
id [in]
Detector ID
rebootStatus [in]
Reboot status
8.3.8 detector::NotifySelfDiagnosisTimeout / detector.DelegateSelfDiagnosisTimeout
Notifies self-diagnostic timeout
Syntax (C++)
void detector::NotifySelfDiagnosisTimeout (
_In_ DETECTOR_ID id,
);
Syntax (C#)
void detector.DelegateSelfDiagnosisTimeout (
int id,
);
Parameters
id [in]
Detector ID
8.3.9 detector::NotifySelfDiagnosisItemResult / detector.DelegateSelfDiagnosisItemResult
Notifies self-diagnostic progress information
Syntax (C++)
void detector::NotifySelfDiagnosisItemResult (
_In_ DETECTOR_ID id,
_In_ SELF_DIAGNOSIS_RESULT* result
);
Syntax (C#)
void detector.DelegateSelfDiagnosisItemResult (
int id,
SELF_DIAGNOSIS_RESULT result
);
Parameters
id [in]
Detector ID
result [in]
Self-diagnosis result
Remarks
When each self-diagnosis item is finished, the result transmitted using this function.
8.3.10 detector::NotifySelfDiagnosisDone / detector.DelegateSelfDiagnosisDone
Notifies self-diagnostic result
Syntax (C++)
void detector::NotifySelfDiagnosisDone (
_In_ DETECTOR_ID id,
_In_ SELF_DIAGNOSIS_DONE_TYPE type,
_In_ SELF_DIAGNOSIS_REPORT* report
);
Syntax (C#)
void detector.DelegateSelfDiagnosisDone (
int id,
SELF_DIAGNOSIS_DONE_TYPE type,
SELF_DIAGNOSIS_REPORT report
);
Parameters
id [in]
Detector ID
type [in]
Self-diagnosis done type
report [in]
Self-diagnosis report array
Remarks
When all item is finished, the total result transmitted using this function.
8.3.11 detector::NotifyShockReportDownloadState / detector.DelegateShockReportDownloadState
Notifies the download state of shock report
Syntax (C++)
void detector::NotifyShockReportDownloadState (
_In_ DETECTOR_ID id,
_In_ int currentStep,
_In_ int totalStep,
_In_ bool success
);
Syntax (C#)
void detector.DelegateShockReportDownloadState (
int id,
int currentStep,
int totalStep,
bool success
);
Parameters
id [in]
Detector ID
currentStep [in]
Number of current downloaded shock report
totalStep [in]
Total number of shock report
success [in]
Download result
8.3.12 detector::NotifyShockReportDownloadResult / detector.DelegateShockReportDownloadResult
Syntax (C++)
void detector::NotifyShockReportDownloadResult (
_In_ DETECTOR_ID id,
_In_ bool success
);
Syntax (C#)
void detector.DelegateShockReportDownloadResult (
int id,
bool success
);
Parameters
id [in]
Detector ID
success [in]
Download result
8.3.13 detector::NotifyImageTransmissionDelayed / detector.DelegateImageTransmissionDelayed
Notifies the delay of image transmission
Syntax (C++)
void detector::NotifyImageTransmissionDelayed(
_In_ DETECTOR_ID id
);
Syntax (C#)
void detector.DelegateImageTransmissionDelayed(
int id
);
Parameters
id [in]
Detector ID
Remarks
If image transmission is delayed while the SDK is getting images, the relevant notification is called.
9 CFXRDN
9.1 Member Functions
9.1.1 VersionInfoGet
Gets the version information
Syntax (C++)
RESULT VersionInfoGet (
_Out_ NTYPE_VERSION_INFO* info
);
Syntax (C#)
RESULT VersionInfoGet (
out NTYPE_VERSION_INFO info
);
Parameters
info [out]
Version information
RESULT_SUCCESS
|
Succeed in getting the version information.
|
RESULT_INVALID_PARAMETER
|
Incorrect parameter
|
RESULT_DETECTOR_NOT_CONNECTED
|
Not connected detector
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector in the Sleep status.
|
RESULT_ERROR
|
Failed to get the version information.
|
Remarks
This function can be used after opening detector connection. This function provides a model name, serial number, firmware, FPGA, Bootloader, Kernel, Package, RamdiskVer, and MAC address for the factory setting.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
Vieworks::vivix::NTYPE_VERSION_INFO NTypeVersionInfor;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->VersionInfoGet(&NTypeVersionInfor);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get detector version information.
}
else
{
// Failed to get detector version information.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
Vieworks.vivix.net.NTYPE_VERSION_INFO NTypeVersionInfor;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.VersionInfoGet(out NTypeVersionInfor);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get detector version information.
}
else
{
// Failed to get detector version information.
}
}
9.1.2 DetectorEnableStateGet
Gets the activated state of the detector
Syntax (C++)
RESULT DetectorEnableStateGet (
_Out_ bool* enable
);
Syntax (C#)
RESULT DetectorEnableStateGet (
out bool enable
);
Parameters
enable [out]
Activated state of the detector
RESULT_SUCCESS
|
Succeed in getting activated state information of the detector.
|
RESULT_INVALID_PARAMETER
|
Incorrect parameter
|
RESULT_DETECTOR_NOT_CONNECTED
|
Not connected detector
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector in the Sleep status.
|
RESULT_ERROR
|
Failed to get activated state information of the detector.
|
Remarks
This function can be used after opening detector connection.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
bool DetectorEnableState = false;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->DetectorEnableStateGet(&DetectorEnableState);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get detector enable state.
}
else
{
// Failed to get detector enable state.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
bool DetectorEnableState = false;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.DetectorEnableStateGet(out DetectorEnableState);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get detector enable state.
}
else
{
// Failed to get detector enable state.
}
}
9.1.3 DetectorEnableStateSet
Sets the activated state of the detector
Syntax (C++)
RESULT DetectorEnableStateSet (
_In_ bool enable
);
Syntax (C#)
RESULT DetectorEnableStateSet (
bool enable
);
Parameters
enable [in]
Activated state of the detector
RESULT_SUCCESS
|
Succeed in setting activated state of the detector.
|
RESULT_INVALID_PARAMETER
|
Incorrect parameter
|
RESULT_DETECTOR_NOT_CONNECTED
|
Not connected detector
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector in the Sleep status.
|
RESULT_ERROR
|
Failed to set activated state of the detector.
|
Remarks
This function can be used after opening detector connection.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->DetectorEnableStateSet(false);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to disable detector state.
}
else
{
// Failed to disable detector state.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.DetectorEnableStateSet(false);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to disable detector state.
}
else
{
// Failed to disable detector state.
}
}
9.1.4 CaptureCountGet
Acquires the number of cumulative shots
Syntax (C++)
RESULT CaptureCountGet(
_Out_ unsigned long* val
);
Syntax (C#)
RESULT CaptureCountGet(
out uint val
);
Parameters
val [out]
The number of shooting images
RESULT_SUCCESS
|
Succeed in getting the number of shooting images.
|
RESULT_INVALID_PARAMETER
|
Incorrect parameter.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Not connected detector.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector in the Sleep status.
|
RESULT_ERROR
|
Failed to get the number of shooting images.
|
Remarks
This function can be used after opening detector connection. This function counts the images that X-ray actually exposed to only. The images taken by SWTrigger cannot affect the counting.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
unsigned long ulCaptureCount = 0;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->CaptureCountGet(&ulCaptureCount);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get capture count.
}
else
{
// Failed to get capture count.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
uint uCaptureCount = 0;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.CaptureCountGet(out ulCaptureCount);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get capture count.
}
else
{
// Failed to get capture count.
}
}
9.1.5 IsSleep
Checks the sleep state of the detector.
Syntax (C++)
RESULT IsSleep (
_In_ bool* isSleep
);
Syntax (C#)
RESULT IsSleep (
out bool isSleep
);
Parameters
isSleep [in]
Sleep state
RESULT_SUCCESS
|
Succeeded to get sleep state.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_ERROR
|
Failed to get sleep state.
|
Remarks
This function can be used after opening detector connection. If the value of ‘isSleep’ is true, it means that the detector is in the sleep state.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
bool bSleep = false;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->IsSleep(&bSleep);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get sleep state.
}
else
{
// Failed to get sleep state.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
bool bSleep = false;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.IsSleep(out bSleep);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get sleep state.
}
else
{
// Failed to get sleep state.
}
}
9.1.6 NetworkConfigurationGet
Gets the network configuration
Syntax (C++)
RESULT NetworkConfigurationGet (
_Out_ NETWORK_CONFIGURATION* config
);
Syntax (C#)
RESULT NetworkConfigurationGet (
out NETWORK_CONFIGURATION config
);
Parameters
config [out]
Network configuration
RESULT_SUCCESS
|
Succeeded to get network configuration.
|
RESULT_INVALID_PARAMETER
|
[config] is NULL.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to get network configuration.
|
Remarks
This function can be used after opening detector connection. It brings the settings related to the network information. The information is the recorded one in the SDK memory, not in the detector. Therefore, call the ConfigurationRead function and then call the NetworkConfigurationGet function to get the setting value in the real detector.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
Vieworks::vivix::NETWORK_CONFIGURATION NetworkConfiguration;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->NetworkConfigurationGet(&NetworkConfiguration);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get network configuration.
}
else
{
// Failed to get network configuration.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
Vieworks.vivix.net.NETWORK_CONFIGURATION NetworkConfiguration;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.NetworkConfigurationGet(out NetworkConfiguration);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get network configuration.
}
else
{
// Failed to get network configuration.
}
}
9.1.7 NetworkConfigurationSet
Sets the network configuration
Syntax (C++)
RESULT NetworkConfigurationSet (
_In_ NETWORK_CONFIGURATION* config
);
Syntax (C#)
RESULT NetworkConfigurationSet (
NETWORK_CONFIGURATION* config
);
Parameters
config [in]
Network configuration
RESULT_SUCCESS
|
Succeeded to set network configuration.
|
RESULT_INVALID_PARAMETER
|
One or more parameters are not valid.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to set networks configuration.
|
Remarks
This function can be used after opening detector connection. It configures items related to the network information. The information is the recorded one in the SDK memory, not in the detector. Therefore, call the ConfigurationSave function to send and save the information in the SDK memory to the detector.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
Vieworks::vivix::NETWORK_CONFIGURATION NetworkConfiguration;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->NetworkConfigurationSet(&NetworkConfiguration);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to set network configuration.
}
else
{
// Failed to set network configuration.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
Vieworks.vivix.net.NETWORK_CONFIGURATION NetworkConfiguration;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.NetworkConfigurationSet(NetworkConfiguration);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to set network configuration.
}
else
{
// Failed to set network configuration.
}
}
9.1.8 WirelessNetworkConfigurationGet
Gets the wireless network configuration
Syntax (C++)
RESULT WirelessNetworkConfigurationGet (
_Out_ WIRELESS_NETWORK_CONFIGURATION* config
);
Syntax (C#)
RESULT WirelessNetworkConfigurationGet (
out WIRELESS_NETWORK_CONFIGURATION config
);
Parameters
config [out]
Wireless network configuration
RESULT_SUCCESS
|
Succeeded to get wireless network configuration.
|
RESULT_INVALID_PARAMETER
|
[config] is NULL.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to get wireless network configuration.
|
Remarks
This function can be used after opening detector connection. It brings the settings related to the wireless network. The information is the recorded one in the SDK memory, not in the detector. Therefore, call the ConfigurationRead function and then call the WirelessNetworkConfigurationGet function to get the setting value in the real detector.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
Vieworks::vivix::WIRELESS_NETWORK_CONFIGURATION WirelessNetworkConfiguration;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->WirelessNetworkConfigurationGet(&WirelessNetworkConfiguration);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get wireless network configuration.
}
else
{
// Failed to get wireless network configuration.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
Vieworks.vivix.net.WIRELESS_NETWORK_CONFIGURATION WirelessNetworkConfiguration;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.WirelessNetworkConfigurationGet(out WirelessNetworkConfiguration);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get wireless network configuration.
}
else
{
// Failed to get wireless network configuration.
}
}
9.1.9 WirelessNetworkConfigurationSet
Sets the wireless network configuration
Syntax (C++)
RESULT WirelessNetworkConfigurationSet (
_In_ WIRELESS_NETWORK_CONFIGURATION* config
);
Syntax (C#)
RESULT WirelessNetworkConfigurationSet (
WIRELESS_NETWORK_CONFIGURATION config
);
Parameters
config [in]
Wireless network configuration
RESULT_SUCCESS
|
Succeeded to set wireless network configuration.
|
RESULT_INVALID_PARAMETER
|
One or more parameters are not valid.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to set wireless network configuration.
|
Remarks
This function can be used after opening detector connection. It configures items related to the wireless network. The information is the recorded one in the SDK memory, not in the detector. Therefore, call the ConfigurationSave function to send and save the information in the SDK memory to the detector.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
Vieworks::vivix::WIRELESS_NETWORK_CONFIGURATION WirelessNetworkConfiguration;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->WirelessNetworkConfigurationSet(&WirelessNetworkConfiguration);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to set wireless network configuration.
}
else
{
// Failed to set wireless network configuration.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
Vieworks.vivix.net.WIRELESS_NETWORK_CONFIGURATION WirelessNetworkConfiguration;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.WirelessNetworkConfigurationSet(WirelessNetworkConfiguration);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to set wireless network configuration.
}
else
{
// Failed to set wireless network configuration.
}
}
9.1.10 WirelessAPConfigurationGet
Gets the wireless AP configuration
Syntax (C++)
RESULT WirelessAPConfigurationGet (
_Out_ WIRELESS_AP_CONFIGURATION* config
);
Syntax (C#)
RESULT WirelessAPConfigurationGet (
out WIRELESS_AP_CONFIGURATION config
);
Parameters
config [out]
Wireless AP configurations.
RESULT_SUCCESS
|
Succeeded to get wireless AP configuration.
|
RESULT_INVALID_PARAMETER
|
[config] is NULL.
|
RESULT_DETECTOR_NO_INFORMATION
|
There is no detector information.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to get wireless AP configuration.
|
Remarks
This function can be used after opening detector connection. It brings settings related to the wireless AP information. The information is the recorded one in the SDK memory, not in the detector. Therefore, call the ConfigurationRead function and then call the WirelessAPConfigurationGet function to get the setting value in the real detector.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
Vieworks::vivix::WIRELESS_AP_CONFIGURATION WirelessAPConfiguration;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->WirelessAPConfigurationGet(&WirelessAPConfiguration);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get wireless AP configuration.
}
else
{
// Failed to get wireless AP configuration.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
Vieworks.vivix.net.WIRELESS_AP_CONFIGURATION WirelessAPConfiguration;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.WirelessAPConfigurationGet(out WirelessAPConfiguration);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get wireless AP configuration.
}
else
{
// Failed to get wireless AP configuration.
}
}
9.1.11 WirelessAPConfigurationSet
Sets the wireless AP configuration
Syntax (C++)
RESULT WirelessAPConfigurationSet (
_In_ WIRELESS_AP_CONFIGURATION* config
);
Syntax (C#)
RESULT WirelessAPConfigurationSet (
WIRELESS_AP_CONFIGURATION* config
);
Parameters
config [in]
Wireless AP configurations.
RESULT_SUCCESS
|
Succeeded to set wireless AP configuration.
|
RESULT_INVALID_PARAMETER
|
One or more parameters are not valid.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to set wireless AP configuration.
|
Remarks
This function can be used after opening detector connection. It configures items related to the wireless AP information. The information is the recorded one in the SDK memory, not in the detector. Therefore, call the ConfigurationSave function to send and save the information in the SDK memory to the detector.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
Vieworks::vivix::WIRELESS_AP_CONFIGURATION WirelessAPConfiguration;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->WirelessAPConfigurationSet(&WirelessAPConfiguration);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to set wireless AP configuration.
}
else
{
// Failed to set wireless AP configuration.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
Vieworks.vivix.net.WIRELESS_AP_CONFIGURATION WirelessAPConfiguration;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.WirelessAPConfigurationSet(WirelessAPConfiguration);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to set wireless AP configuration.
}
else
{
// Failed to set wireless AP configuration.
}
}
9.1.12 ImageConfigurationGet
Gets the image configuration
Syntax (C++)
RESULT ImageConfigurationGet (
_Out_ IMAGE_CONFIGURATION* config
);
Syntax (C#)
RESULT ImageConfigurationGet (
out IMAGE_CONFIGURATION config
);
Parameters
config [out]
Image configurations.
RESULT_SUCCESS
|
Succeeded to get image configuration.
|
RESULT_INVALID_PARAMETER
|
[config] is NULL.
|
RESULT_DETECTOR_NO_INFORMATION
|
There is no detector information.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to get wireless AP configuration.
|
Remarks
This function can be used after opening detector connection. It brings settings related to the image information. The information is the recorded one in the SDK memory, not in the detector. Therefore, call the ConfigurationRead function and then call the ImageConfigurationGet function to get the setting value in the real detector.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
Vieworks::vivix::IMAGE_CONFIGURATION ImageConfiguration;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->ImageConfigurationGet(&ImageConfiguration);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get image configuration.
}
else
{
// Failed to get image configuration.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
Vieworks.vivix.net.IMAGE_CONFIGURATION ImageConfiguration;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.ImageConfigurationGet(out ImageConfiguration);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get image configuration.
}
else
{
// Failed to get image configuration.
}
}
9.1.13 ImageConfigurationSet
Syntax (C++)
RESULT ImageConfigurationSet (
_In_ IMAGE_CONFIGURATION* config
);
Syntax (C#)
RESULT ImageConfigurationSet (
IMAGE_CONFIGURATION config
);
Parameters
config [in]
Image configurations.
RESULT_SUCCESS
|
Succeeded to set image configuration.
|
RESULT_INVALID_PARAMETER
|
One or more parameters are not valid.
|
RESULT_NOT_SUPPORTED_MODEL
|
On models that FTM mode is not available, an error occurs when trying to set the FTM mode.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to set image configuration.
|
Remarks
This function can be used after opening detector connection. It configures items related to the image information. The information is the recorded one in the SDK memory, not in the detector. Therefore, call the ConfigurationSave function to send and save the information in the SDK memory to the detector.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
Vieworks::vivix::IMAGE_CONFIGURATION ImageConfiguration;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->ImageConfigurationSet(&ImageConfiguration);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to set image configuration.
}
else
{
// Failed to set image configuration.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
Vieworks.vivix.net.IMAGE_CONFIGURATION ImageConfiguration;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.ImageConfigurationSet(ImageConfiguration);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to set image configuration.
}
else
{
// Failed to set image configuration.
}
}
9.1.14 ConfigurationRead
Calls the configuration value stored in the real detector to the SDK memory
Syntax
RESULT ConfigurationRead (void);
RESULT_SUCCESS
|
Succeeded to read configuration.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to read configuration.
|
Remarks
This function can be used after opening detector connection. Get the information of Wireless AP Configuration, Network Configuration, and Wireless Network Configuration of the real detector to the SDK memory. The information in the SDK memory can be brought by using NetworkConfigurationGet, WirelessAPConfigurationGet, and TriggerConfigurationGet functions. Note that the information of Wireless AP Configuration, Network Configuration, and Trigger Configuration which were not saved by using the CalibrationSave function can be renewed as the information in the detector.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->ConfigurationRead();
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to read configuration.
}
else
{
// Failed to read configuration.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN ;
nResult = pFXRDN.ConfigurationRead();
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to read configuration.
}
else
{
// Failed to read configuration.
}
}
9.1.15 ConfigurationSave
Saves the configuration value set in the SDK memory to the detector.
Syntax
RESULT ConfigurationSave (void);
RESULT_SUCCESS
|
Succeeded to save configuration.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to save configuration.
|
Remarks
This function can be used after opening detector connection. It sends and saves the information of network configuration, wireless AP configuration, and trigger configuration in the SDK memory to the detector. The FXRD-1417W model is rebooted up after the ConfigurationSave function is applied successfully.
The detector can be disconnected or reconnected depending on the items.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->ConfigurationSave();
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to save configuration.
}
else
{
// Failed to save configuration.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN ;
nResult = pFXRDN.ConfigurationSave();
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to save configuration.
}
else
{
// Failed to save configuration.
}
}
9.1.16 Reboot
Syntax
RESULT Reboot (void);
RESULT_SUCCESS
|
Succeeded to reboot.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to reboot.
|
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->Reboot();
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to start rebooting.
}
else
{
// Failed to start rebooting.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.Reboot();
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to start rebooting.
}
else
{
// Failed to start rebooting.
}
}
9.1.17 Shutdown
Syntax
RESULT Shutdown(void);
RESULT_SUCCESS
|
Succeeded to reboot.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_NOT_SUPPORTED_MODEL
|
This function is not supported.
|
RESULT_ERROR
|
Failed to reboot.
|
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD2530_V:
case Vieworks::vivix::DETECTOR_TYPE::FXRD3643_V:
case Vieworks::vivix::DETECTOR_TYPE::FXRD4343_V:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->Shutdown();
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to start rebooting.
}
else
{
// Failed to start rebooting.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD2530_V:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD3643_V:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD4343_V:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.Shutdown();
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to start rebooting.
}
else
{
// Failed to start rebooting.
}
}
9.1.18 SleepModeEnable
Syntax (C++)
RESULT SleepModeEnable (
_In_ bool enable
);
Syntax (C#)
RESULT SleepModeEnable (
bool enable
);
Parameters
enable [in]
Sleep mode enable/disable
RESULT_SUCCESS
|
Succeeded to set sleep mode enable/disable.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to set sleep mode enable/disable.
|
Remarks
This function can be used after opening detector connection. Use this function to turn off the sleep mode temporarily if the mode is turned on from VIVIX Setup. The detector cannot get into the sleep mode even if you turn on the mode by using the SleepModeEnable function, in case the sleep mode has been turned off from VIVIX Setup. Since the sleep mode is enabled when the detector is rebooted, turn off the mode if needed.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->SleepModeEnable(true);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to enable sleep mode.
}
else
{
// Failed to enable sleep mode.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.SleepModeEnable(true);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to enable sleep mode.
}
else
{
// Failed to enable sleep mode.
}
}
9.1.19 WakeUp
Syntax
RESULT WakeUp (int* pnExpectedWakeUpTime = NULL); // C++
RESULT WakeUp(); //.net
RESULT WakeUp([Out] int% ExpectedWakeUpTime); //.net
RESULT_SUCCESS
|
Succeeded to wakeup detector.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_NOT_SUPPORTED_MODEL
|
This function is not supported.
|
RESULT_COMMAND_IS_NOT_READY
|
Detector is not in sleep mode.
|
RESULT_ERROR
|
Failed to wakeup detector or Detector is not sleep.
|
Remarks
This function can be used after opening detector connection. The function cannot be executed if the detector is not in the sleep state.
Even the return value of the function is RESULT_SUCCESS, it does not mean that the detector wakes up completely. The detector wakes up at the time of calling the registered NotifyWakeUp function.
By passing an Integer pointer as a parameter, you can get the estimated time taking for the detector to wake up.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->WakeUp();
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to wake up detector.
}
else
{
// Failed to wake up detector.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.WakeUp();
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to wake up detector.
}
else
{
// Failed to wake up detector.
}
}
9.1.20 GoSleep
Turns the detector to the sleep mode
Syntax
RESULT GoSleep (void);
RESULT_SUCCESS
|
Succeeded to sleep detector.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_BUSY
|
Temporarily unable to enter sleep mode.
|
RESULT_NOT_SUPPORTED_MODEL
|
Detector is not supported model.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Already in sleep state.
|
RESULT_ERROR
|
Failed to go sleep the detector or it is not in the sleep state.
|
Remarks
This function can be used after opening detector connection. This function cannot be applied if the detector is in the sleep mode.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD2530_V:
case Vieworks::vivix::DETECTOR_TYPE::FXRD3643_V:
case Vieworks::vivix::DETECTOR_TYPE::FXRD4343_V:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->GoSleep();
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to go sleep the detector.
}
else
{
// Failed to go sleep the detector.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD2530_V:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD3643_V:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD4343_V:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;s
nResult = pFXRDN.GoSleep();
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to go sleep the detector.
}
else
{
// Failed to go sleep the detector.
}
}
9.1.21 RemainSleepModeEntryTime
Checks the remaining time until entering to the sleep mode
Syntax (C++)
RESULT RemainSleepModeEntryTime(
_Out_ int* remainTime
);
Syntax (C#)
RESULT RemainSleepModeEntryTime(
out int remainTime
);
RESULT_SUCCESS
|
Succeeded to get the sleep mode entry remain time.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_NOT_SUPPORTED_MODEL
|
Detector is not supported model.
|
RESULT_ERROR
|
Failed to get the sleep mode entry remain time.
|
Remarks
This function is used for getting standby time which remains until the detector enters the sleep mode. This remaining time is initialized at the time of shooting. In case the detector is already in the sleep mode, the value is invalid.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
int nRemainTime = 0;
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->RemainSleepModeEntryTime(&nRemainTime);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get sleep mode entry remain time.
}
else
{
// Failed to get sleep mode entry remain time.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
int nRemainTime = 0;
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDW = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.RemainSleepModeEntryTime(out nRemainTime);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get sleep mode entry remain time.
}
else
{
// Failed to get sleep mode entry remain time.
}
}
9.1.22 BackupImageListGet
Gets a list of backup image
Syntax (C++)
RESULT BackupImageListGet (
_Out_ STORED_IMAGE_LIST* info
);
Syntax (C#)
RESULT BackupImageListGet (
out STORED_IMAGE_LIST info
);
Parameters
info [out]
Backup image list.
RESULT_SUCCESS
|
Succeeded to get backup image list.
|
RESULT_INVALID_PARAMETER
|
[info] is NULL.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to set trigger debounce time.
|
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
Vieworks::vivix::STORED_IMAGE_LIST NTypeBackupImageList;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->BackupImageListGet(&NTypeBackupImageList);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get backup image list.
}
else
{
// Failed to get backup image list.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
Vieworks.vivix.net. STORED_IMAGE_LIST NTypeBackupImageList;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.BackupImageListGet(out NTypeBackupImageList);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get backup image list.
}
else
{
// Failed to get backup image list.
}
}
9.1.23 BackupImageGet
Syntax (C++)
RESULT BackupImageGet (
_In_ STORED_IMAGE_INFO* info
);
Syntax (C#)
RESULT BackupImageGet (
STORED_IMAGE_INFO info
);
Parameters
info [in]
Backup image information
RESULT_SUCCESS
|
Succeeded to get backup image.
|
RESULT_INVALID_PARAMETER
|
[info] is NULL.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to get backup image.
|
Remarks
This function can be used after opening detector connection.
Unlike FXRD-1417W, FXRD-1012N, FXRD-1417N, FXRD-1717N and VXTD-2532E, when SDK and the detector are not connected and when SDK and the detector are connected while image transmission fails, all the images becomes backed-up.
After the order is succeeded, the images are sent by the FrameGrabberImageIn Callback function. The transmitted images are removed in the detector.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
Vieworks::vivix::STORED_IMAGE_LIST NTypeBackupImageList;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->BackupImageListGet(&NTypeBackupImageList);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get backup image list.
if(NTypeBackupImageList.nCount > 0)
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
pFXRDN->SetNotifyFrameGrabberImageIn(NotifyFrameGrabberImageIn);
nResult = pFXRDN->BackupImageGet(&NTypeBackupImageList.pInfoList[0]);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get backup image.
}
else
{
// Failed to get backup image.
}
}
}
else
{
// Failed to get backup image list.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
Vieworks.vivix.net.STORED_IMAGE_LIST NTypeBackupImageList;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.BackupImageListGet(out NTypeBackupImageList);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get backup image list.
if(NTypeBackupImageList.nCount > 0)
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
pFXRDN.SetDelegateFrameGrabberImageIn
(OnDelegateFrameGrabberImageIn);
nResult = pFXRDN.BackupImageGet
(NTypeBackupImageList.aryInfoList[0]);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get backup image.
}
else
{
// Failed to get backup image.
}
}
}
else
{
// Failed to get backup image list.
}
}
9.1.24 RemoveImage
Removes the image stored in the internal memory of the detector
Syntax (C++)
RESULT RemoveImage (
_In_ STORED_IMAGE_INFO* info
);
Syntax (C#)
RESULT RemoveImage (
STORED_IMAGE_INFO info
);
Parameters
info [in]
Image information.
RESULT_SUCCESS
|
Succeeded to remove image in detector.
|
RESULT_INVALID_PARAMETER
|
[info] is NULL.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to remove image in detector.
|
Remarks
This function can be used after opening detector connection. The backup images in the detector are removed.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
Vieworks::vivix::STORED_IMAGE_LIST NTypeBackupImageList;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->BackupImageListGet(&NTypeBackupImageList);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get backup image list.
if(NTypeBackupImageList.nCount > 0)
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->RemoveImage(&NTypeBackupImageList.pInfoList[0]);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to remove backup image.
}
else
{
// Failed to remove backup image.
}
}
}
else
{
// Failed to get backup image list.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
Vieworks.vivix.net.STORED_IMAGE_LIST NTypeBackupImageList;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.BackupImageListGet(out NTypeBackupImageList);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get backup image list.
if(NTypeBackupImageList.nCount > 0)
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.BackupImageGet
(NTypeBackupImageList.aryInfoList[0]);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to remove backup image.
}
else
{
// Failed to remove backup image.
}
}
}
else
{
// Failed to get backup image list.
}
}
9.1.25 FTMImageListGet
Syntax (C++)
RESULT FTMImageListGet (
_Out_ FTM_IMAGE_LIST* info
);
Syntax (C#)
RESULT FTMImageListGet (
out FTM_IMAGE_LIST info
);
Parameters
info [out]
FTM image list
RESULT_SUCCESS
|
Succeeded to get FTM image list.
|
RESULT_INVALID_PARAMETER
|
[info] is NULL.
|
RESULT_NOT_SUPPORTED_MODEL
|
FXRD-1012N and VXTD-2532E Only
|
RESULT_NOT_SUPPORTED_VERSION
|
FXRD-1012N: F/W v1.0.3.31 or higher
VXTD-2532E: F/W v1.0.0.4 or higher
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to get FTM image list.
|
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
Vieworks::vivix::FTM_IMAGE_LIST FTMImageList;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->FTMImageListGet(&FTMImageList);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get FTM image list.
}
else
{
// Failed to get FTM image list.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
Vieworks.vivix.net. FTM_IMAGE_LIST FTMImageList;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN. FTMImageListGet (out FTMImageList);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get FTM image list.
}
else
{
// Failed to get FTM image list.
}
}
9.1.26 FTMImageGet
Syntax
RESULT FTMImageGet (
_In_ FTM_IMAGE_INFO* info
);
Parameters
info [in]
FTM image information
RESULT_SUCCESS
|
Succeeded to get FTM image.
|
RESULT_INVALID_PARAMETER
|
[info] is NULL.
|
RESULT_NOT_SUPPORTED_MODEL
|
FXRD-1012N and VXTD-2532E Only
|
RESULT_NOT_SUPPORTED_VERSION
|
FXRD-1012N: F/W v1.0.3.31 or higher
VXTD-2532E: F/W v1.0.0.4 or higher
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to get FTM image.
|
Remarks
This function can be used after opening detector connection. After the order is succeeded, the images are sent by the FrameGrabberImageIn Callback function. The transmitted images are removed in the detector.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
Vieworks::vivix::FTM_IMAGE_LIST FTMImageList;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->FTMImageListGet(&FTMImageList);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get FTM image list.
if(FTMImageList.nCount > 0)
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
pFXRDN->SetNotifyFrameGrabberImageIn(NotifyFrameGrabberImageIn);
nResult = pFXRDN->FTMImageGet(&FTMImageList.pInfoList[0]);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get FTM image.
}
else
{
// Failed to get FTM image.
}
}
}
else
{
// Failed to get FTM image list.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
Vieworks.vivix.net.FTM_IMAGE_LIST FTMImageList;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.FTMImageListGet(out FTMImageList);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get FTM image list.
if(NTypeBackupImageList.nCount > 0)
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
pFXRDN.SetDelegateFrameGrabberImageIn(OnDelegateFrameGrabberImageIn);
nResult = pFXRDN.FTMImageGet(FTMImageList.aryInfoList[0]);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get FTM image.
}
else
{
// Failed to get FTM image.
}
}
}
else
{
// Failed to get FTM image list.
}
}
9.1.27 RemoveFTMImage
Removes FTM image from detector
Syntax
RESULT RemoveFTMImage (
_In_ FTM_IMAGE_INFO* info
);
Parameters
info [in]
Image information.
RESULT_SUCCESS
|
Succeeded to remove FTM image in detector.
|
RESULT_INVALID_PARAMETER
|
[info] is NULL.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_NOT_SUPPORTED_MODEL
|
FXRD-1012N and VXTD-2532E Only
|
RESULT_NOT_SUPPORTED_VERSION
|
FXRD-1012N: F/W v1.0.3.31 or higher
VXTD-2532E: F/W v1.0.0.4 or higher
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to remove FTM image in detector.
|
Remarks
This function can be used after opening detector connection. The FTM images in the detector are removed.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
Vieworks::vivix::FTM_IMAGE_LIST FTMImageList;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->FTMImageListGet(&FTMImageList);
}
break;
default:
// Not supported model.
Break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get FTM image list.
If(FTMImageList.nCount > 0)
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->RemoveFTMImage(&FTMImageList.pInfoList[0]);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to remove FTM image.
}
else
{
// Failed to remove FTM image.
}
}
}
else
{
// Failed to get FTM image list.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
Vieworks.vivix.net.FTM_IMAGE_LIST FTMImageList;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.FTMImageListGet(out FTMImageList);
}
break;
default:
// Not supported model.
Break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to remove FTM image list.
If(FTMImageList.nCount > 0)
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.RemoveFTMImage(FTMImageList.aryInfoList[0]);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to remove FTM image.
}
else
{
// Failed to remove FTM image.
}
}
}
else
{
// Failed to get FTM image list.
}
}
9.1.28 FlushFTMImage
Removes all FTM images from detector and resets the FTM ID
Syntax
RESULT FlushFTMImage ( );
RESULT_SUCCESS
|
Succeeded to remove FTM image in detector.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_NOT_SUPPORTED_MODEL
|
FXRD-1012N and VXTD-2532E Only
|
RESULT_NOT_SUPPORTED_VERSION
|
FXRD-1012N: F/W v1.0.3.31 or higher
VXTD-2532E: F/W v1.0.0.4 or higher
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to remove FTM image in detector.
|
Remarks
This function can be used after opening detector connection. The FTM images in the detector are removed.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->FlushFTMImage();
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to flush FTM image.
}
else
{
// Failed to flush FTM image.
}
}
break;
default:
// Not supported model.
Break;
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.FlushFTMImage();
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to flush FTM image.
}
else
{
// Failed to flush FTM image.
}
}
break;
default:
// Not supported model.
Break;
}
}
9.1.29 LogDataListGet
Syntax (C++)
RESULT LogDataListGet (
_Out_ LOG_LIST* logList
);
Syntax (C#)
RESULT LogDataListGet (
out LOG_LIST logList
);
Parameters
logList [out]
Log data list.
RESULT_SUCCESS
|
Succeeded to get log data list.
|
RESULT_INVALID_PARAMETER
|
[logList] is NULL.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to get log data list.
|
Remarks
This function can be used after opening detector connection. Input Timestamp to startDate and endDate of LOG_LIST as a parameter to search the log in the certain period. Input 0 to startDate and endDate and send it as a parameter if you need the log data list of the whole period.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
Vieworks::vivix::LOG_LIST LogList;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
CTime t1(2015, 3, 10, 0, 0, 0);
CTime t2(2015, 3, 12, 0, 0, 0);
// Boundary set
LogList.startDate = t1.GetTime();
LogList.endDate = t2.GetTime();
nResult = pFXRDN->LogDataListGet(&LogList);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get log list.
}
else
{
// Failed to get log list.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
Vieworks.vivix.net.LOG_LIST LogList;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
CTime t1(2015, 3, 10, 0, 0, 0);
CTime t2(2015, 3, 12, 0, 0, 0);
// Boundary set
LogList.startDate = t1.GetTime();
LogList.endDate = t2.GetTime();
nResult = pFXRDN.LogDataListGet(out LogList);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get log list.
}
else
{
// Failed to get log list.
}
}
9.1.30 LogDataGet
Syntax (C++)
RESULT LogDataGet (
_In_ LOG_DATA* logData
);
Syntax (C#)
RESULT LogDataGet (
LOG_DATA logData
);
Parameters
logData [in]
Log data
RESULT_SUCCESS
|
Succeeded to get log data.
|
RESULT_INVALID_PARAMETER
|
[logData] is NULL.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to get log data.
|
Remarks
This function can be used after opening detector connection. Assign the log data to be brought by using LOG_DATA of the LOG_LIST structure, which was acquired by LogDataListGet. The log data is stored to “Detector\[Serial number]”, located at the bottom of SDK log storage route.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
Vieworks::vivix::LOG_LIST LogList;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
CTime t1(2015, 3, 10, 0, 0, 0);
CTime t2(2015, 3, 12, 0, 0, 0);
// Boundary set
LogList.startDate = t1.GetTime();
LogList.endDate = t2.GetTime();
nResult = pFXRDN->LogDataListGet(&LogList);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get log list.
if(LogList.LogCount > 0)
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->LogDataGet(&LogList.LogList[0]);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get log in log path.
}
else
{
// Failed to get log.
}
}
}
else
{
// Failed to get log list.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
Vieworks.vivix.net.LOG_LIST LogList;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
CTime t1(2015, 3, 10, 0, 0, 0);
CTime t2(2015, 3, 12, 0, 0, 0);
// Boundary set
LogList.startDate = t1.GetTime();
LogList.endDate = t2.GetTime();
nResult = pFXRDN.LogDataListGet(out LogList);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get log list.
if(LogList.LogCount > 0)
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.LogDataGet(LogList.LogList[0]);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get log in log path.
}
else
{
// Failed to get log.
}
}
}
else
{
// Failed to get log list.
}
}
9.1.31 LogExportToday
Downloads the today’s log
Syntax (C++)
RESULT LogExportToday (
_In_ const FILE_PATH exportPath
);
Syntax (C#)
RESULT LogExportToday (
string exportPath
);
Parameters
exportPath [in]
Folder path.
RESULT_SUCCESS
|
Succeeded to export log today.
|
RESULT_INVALID_PARAMETER
|
[exportPath] is not valid or not folder path.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_IO_INSUFFICIENT_PERMISSION
|
[exportPath] does not have write permission.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to export log today.
|
Remarks
This function can be used after opening detector connection.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->LogExportToday(_T("D:\\LogFolder"));
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to export today log.
}
else
{
// Failed to export today log.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.LogExportToday("D:\\LogFolder");
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to export today log.
}
else
{
// Failed to export today log.
}
}
9.1.32 LogExportAll
Gets all logs with shock report
Syntax (C++)
RESULT LogExportAll (
_In_ bool bIncludeShockReport,
_In_ const FILE_PATH exportPath
);
Syntax (C#)
RESULT LogExportAll (
bool bIncludeShockReport,
string exportPath ,
DelegateLogDownloadState state,
DelegateLogDownloadResult result
);
Parameters
bIncludeShockReport [in]
Whether the shock sensor is included in the log or not.
exportPath [in]
Folder path.
state [in]
Delegate Log Download State.
result [in]
Delegate Log Download Result.
RESULT_SUCCESS
|
Succeeded to export log all.
|
RESULT_INVALID_PARAMETER
|
[exportPath] is not valid or not folder path.
|
RESULT_DETECTOR_IS_IN_BUSY
|
Cannot execute the function since another task is being processed.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to export log all.
|
Remarks
This function can be used after opening detector connection.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->LogExportAll(true, _T("D:\\LogFolder"));
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to export all log.
}
else
{
// Failed to export all log.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.LogExportAll(true, "D:\\LogFolder", null, null);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to export all log.
}
else
{
// Failed to export all log.
}
}
9.1.33 ShockReportExportAll
Syntax (C++)
RESULT ShockReportExportAll (
_In_ const FILE_PATH exportPath
);
Syntax (C#)
RESULT ShockReportExportAll (
string exportPath,
DelegateShockReportDownloadState state,
DelegateShockReportDownloadResult result
);
Parameters
exportPath [in]
Folder path.
state [in]
Delegate Shock Report Download State.
result [in]
Delegate Shock Report Download Result.
RESULT_SUCCESS
|
Succeeded to export shock report.
|
RESULT_INVALID_PARAMETER
|
[exportPath] is not valid or not folder path.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to export shock report.
|
Remarks
This function can be used after opening detector connection.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->ShockReportExportAll(_T("D:\\LogFolder"));
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to export shock report.
}
else
{
// Failed to export shock report.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.ShockReportExportAll("D:\\LogFolder", null, null);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to export shock report.
}
else
{
// Failed to export shock report.
}
}
9.1.34 CurrentPatientInfoSet
Sets the current patient information
Syntax (C++)
RESULT RESULT CurrentPatientInfoSet (
_In_ PATIENT_INFO* info
);
Syntax (C#)
RESULT RESULT CurrentPatientInfoSet (
PATIENT_INFO* info
);
Parameters
info [in]
Patient information.
RESULT_SUCCESS
|
Succeeded to set current patient information.
|
RESULT_INVALID_PARAMETER
|
[info] is NULL or invalid.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to set current patient information.
|
Remarks
This function can be used after opening detector connection.
The limitations of each member of Info are shown in the table below.
patientName
|
Must be entered. (1 to 65 characters)
Unavailable characters $ % & [ ] { } | ; : < > =
|
patientId
|
Must be entered. (1 to 65 characters)
Unavailable characters $ % & [ ] { } | ; : < > =
|
accNo
|
17 characters or less.
Unavailable characters $ % & [ ] { } | ; : < > =
|
studyDate
|
Must be entered. (1 to 9 characters)
Unavailable characters $ % & [ ] { } | ; : < > =
|
studyTime
|
Must be entered. (1 to 7 characters)
Unavailable characters $ % & [ ] { } | ; : < > =
|
9.1.35 PatientInfoListSet
Sets a list of patient information
Syntax (C++)
RESULT PatientInfoListSet (
_In_ PATIENT_INFO_LIST* info,
_In_ PATIENT_LIST_SET_TYPE type
);
Syntax (C#)
RESULT PatientInfoListSet (
PATIENT_INFO_LIST* info,
PATIENT_LIST_SET_TYPE type
);
Parameters
info [in]
Patient information list
type [in]
Patient list set type.
RESULT_SUCCESS
|
Succeeded to set patient information list.
|
RESULT_INVALID_PARAMETER
|
[info] is NULL.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to set patient information list.
|
Remarks
This function can be used after opening detector connection.
The limitations of each member of ‘Info patientStepInfo’ are shown in the table below.
name
|
Must be entered. (1 to 65 characters)
Unavailable characters $ % & [ ] { } | ; : < > =
|
birth
|
9 characters or less.
Unavailable characters $ % & [ ] { } | ; : < > =
|
id
|
Must be entered. (1 to 65 characters)
Unavailable characters $ % & [ ] { } | ; : < > =
|
accNo
|
17 characters or less.
Unavailable characters $ % & [ ] { } | ; : < > =
|
studyDate
|
Must be entered. (1 to 9 characters)
Unavailable characters $ % & [ ] { } | ; : < > =
|
studyTime
|
Must be entered. (1 to 7 characters)
Unavailable characters $ % & [ ] { } | ; : < > =
|
scheduledDateTime
|
Must be entered. (1 to 15 characters)
Unavailable characters $ % & [ ] { } | ; : < > =
|
9.1.36 BodyPartInfoListSet
Sets a list of body part information
Syntax (C++)
RESULT BodyPartInfoListSet (
_In_ BODY_PART_LIST* info
);
Syntax (C#)
RESULT BodyPartInfoListSet (
BODY_PART_LIST* info
);
Parameters
info [in]
Body part information list.
RESULT_SUCCESS
|
Succeeded to set body part information list.
|
RESULT_INVALID_PARAMETER
|
[info] is NULL or invalid.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to set body part information list.
|
Remarks
This function can be used after opening detector connection.
The limitations of each member of Info are shown in the table below.
nBodypartCount
|
0 (zero) or more
|
viewerserial
|
Must be entered. (1 to 9 characters)
Unavailable characters $ % & [ ] { } | ; : < > =
|
aryBodypartInfo[ ].meaning
|
Must be entered. (1 to 65 characters)
Unavailable characters $ % & [ ] { } | ; : < > =
|
aryBodypartInfo[ ].aryProjectionInfo[ ].meaning
|
Must be entered. (1 to 65 characters)
Unavailable characters $ % & [ ] { } | ; : < > =
|
9.1.37 SelfDiagnosis
Commands self-diagnosis to the detector
Syntax (C++)
RESULT SelfDiagnosis (
_In_ bool bWithSCU
);
Syntax (C#)
RESULT SelfDiagnosis (
bool bWithSCU
);
Parameters
bWithSCU [in]
Whether the self-diagnosis related to SCU is processed or not when processing the self-diagnosis of the detector.
RESULT_SUCCESS
|
Succeeded to set trigger debounce time.
|
RESULT_DETECTOR_IS_IN_BUSY
|
Cannot execute the function since another task is being processed.
|
RESULT_NOT_SUPPORTED_VERSION
|
Not supported version.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to set trigger debounce time.
|
Remarks
This function can be used after opening detector connection. It executes all diagnosable items in the detector firmware and sends the result. The self-diagnosis items can be different depending on the detector firmware version. The callback functions related to the self-diagnosis are NotifySelfDiagnosisTimeout, NotifySelfDiagnosisItemResult, and NotifySelfDiagnosisDone.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->SelfDiagnosis(true);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to start self diagnosis.
}
else
{
// Failed to start self diagnosis.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.SelfDiagnosis(true);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to start self diagnosis.
}
else
{
// Failed to start self diagnosis.
}
}
9.1.38 DiagnosableItemsGet
Gets a list of diagnosable item
Syntax (C++)
RESULT DiagnosableItemsGet (
_In_ bool bIsSCU,
_Out_ DIAGNOSABLE_ITEM_INFO_LIST* list
);
Syntax (C#)
RESULT DiagnosableItemsGet (
_In_ bool bIsSCU,
ref DIAGNOSABLE_ITEM_INFO_LIST list
);
Parameters
bIsSCU [in]
Include SCU related function diagnosis.
list [out]
Diagnosable item information list.
RESULT_SUCCESS
|
Succeeded in getting diagnosable item list.
|
RESULT_INVALID_PARAMETER
|
Detector ID is out of range or [type] value is invalid or out of range.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to get diagnosable item list.
|
Remarks
This function can be used after opening detector connection. It receives the list of diagnosable items from the detector firmware. You can process the self-diagnosis to all transmitted items or partial items by using the DiagnoseItem function. The self-diagnostic items can be different depending on the detector firmware version. The callback functions related to the self-diagnosis are NotifySelfDiagnosisTimeout, NotifySelfDiagnosisItemResult, and NotifySelfDiagnosisDone.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
Vieworks::vivix::DIAGNOSABLE_ITEM_INFO_LIST DiagnosableItemInfoList;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->DiagnosableItemsGet(true, &DiagnosableItemInfoList);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get diagnosable item list.
}
else
{
// Failed to get diagnosable item list.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
Vieworks.vivix.net.DIAGNOSABLE_ITEM_INFO_LIST DiagnosableItemInfoList = new Vieworks.vivix.net.DIAGNOSABLE_ITEM_INFO_LIST();
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.DiagnosableItemsGet(true, ref DiagnosableItemInfoList);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.RESULT.RESULT_SUCCESS)
{
// Succeeded to get diagnosable item list.
}
else
{
// Failed to get diagnosable item list.
}
}
9.1.39 DiagnoseItem
Syntax (C++)
RESULT DiagnoseItem (
_In_ int category,
_In_ int item
);
Syntax (C#)
RESULT DiagnoseItem (
_In_ int category,
_In_ int item
);
Parameters
category [in]
Category number of an item to be self-diagnosed.
item [in]
Item number of an item to be self-diagnosed.
RESULT_SUCCESS
|
Succeeded to start self-diagnosis.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to start self-diagnosis.
|
Remarks
This function can be used after opening detector connection. You can process the self-diagnosis to all transmitted items or partial items by using the DiagnosableImtesGet function. The callback functions related to the DiagnoseItem function are NotifySelfDiagnosisTimeout and NotifySelfDiagnosisItemResult.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
Vieworks::vivix::DIAGNOSABLE_ITEM_INFO_LIST DiagnosableItemInfoList;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->DiagnosableItemsGet(true, &DiagnosableItemInfoList);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get diagnosable item list.
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
if(DiagnosableItemInfoList.numOfitems > 0)
{
nResult = pFXRDN->DiagnoseItem(DiagnosableItemInfoList.items[0].categoryId, DiagnosableItemInfoList.items[0].itemId);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to diagnose item.
}
else
{
// Failed to diagnose item.
}
}
}
else
{
// Failed to get diagnosable item list.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
Vieworks.vivix.net.DIAGNOSABLE_ITEM_INFO_LIST DiagnosableItemInfoList = new Vieworks.vivix.net.DIAGNOSABLE_ITEM_INFO_LIST();
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.DiagnosableItemsGet(true, ref DiagnosableItemInfoList);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get diagnosable item list.
Vieworks.vivix.net.detector.FXRDN pFXRDN = NULL;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
if(DiagnosableItemInfoList.numOfitems > 0)
{
nResult = pFXRDN.DiagnoseItem(DiagnosableItemInfoList.items[0].categoryId, DiagnosableItemInfoList.items[0].itemId);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to diagnose item.
}
else
{
// Failed to diagnose item.
}
}
}
else
{
// Failed to get diagnosable item list.
}
}
9.1.40 AbortSelfDiagnosis
Syntax (C++)
RESULT AbortSelfDiagnosis (void);
Syntax (C#)
RESULT AbortSelfDiagnosis (void);
RESULT_SUCCESS
|
Succeeded to abort self-diagnosis.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_NOT_SUPPORTED_VERSION
|
Not supported version.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to abort self-diagnosis.
|
Remarks
This function can be used after opening detector connection. The callback function related to the DiagnoseAbort function is NotifySelfDiagnosisDone.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->AbortSelfDiagnosis();
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to abort self diagnosis.
}
else
{
// Failed to abort self diagnosis.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.AbortSelfDiagnosis();
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to abort self diagnosis.
}
else
{
// Failed to abort self diagnosis.
}
}
9.1.41 ConnectionTypeGet
Checks interface communicated with the connecting detector
Syntax (C++)
RESULT ConnectionTypeGet (
_Out_ CONNECTION_INTERFACE* interfaceType
);
Syntax (C#)
RESULT IsSCUConnected (
Out CONNECTION_INTERFACE interfaceType
);
Parameters
interfaceType [out]
A variable for indicating communication interface type between a detector and SDK.
RESULT_SUCCESS
|
Succeeded to get connection type.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
Remarks
This function can be used after opening detector connection.
Acquires information about the communication way between the detector and SDK. This information is the same as that of being transferred through KeepAlive notification / delegate.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
CONNECTION_INTERFACE connectionType;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->ConnectionTypeGet(&connectionType);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get connection interface information.
}
else
{
// Failed to get connection interface information.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
CONNECTION_INTERFACE connectionType;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.ConnectionTypeGet(out connectionType);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get connection interface information.
}
else
{
// Failed to get connection interface information.
}
}
9.1.42 WirelessSignalGet
Gets information about signal strength of wireless communication.
Syntax (C++)
RESULT WirelessSignalGet (
_Out_ WIRELESS_SIGNAL_QUALITY* wirelessQuality,
_Out_ unsigned int* linkQuality,
_Out_ int* pnSignalStrength = NULL
);
Syntax (C#)
RESULT WirelessSignalGet (
Out WIRELESS_SIGNAL_QUALITY wirelessQuality,
Out unsigned int linkQuality
);
RESULT WirelessSignalGet (
Out WIRELESS_SIGNAL_QUALITY wirelessQuality,
Out unsigned int linkQuality
Out int signalStrength
);
Parameters
wirelessQuality [out]
Signal quality level of wireless communication
linkQuality [out]
Signal quality value of wireless communication
SignalStrength [out]
Signal strength value of wireless communication
RESULT_SUCCESS
|
Succeeded to get wireless signal information.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
Remarks
This function can be used after opening detector connection.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
WIRELESS_SIGNAL_QUALITY wirelessQuality;
unsigned int linkQuality;
int linkSterngth;
switch (pDetector->DetectorClassGet())
{
case Vieworks::vivix::DETECTOR_CLASS::DETECTOR_CLASS_FXRDN:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->WirelessSignalGet(&wirelessQuality, &linkQuality, &linkSterngth);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get wireless signal information.
}
else
{
// Failed to get wireless signal information.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
WIRELESS_SIGNAL_QUALITY wirelessQuality;
unsigned int linkQuality;
int linkSterngth;
switch (pDetector.DetectorClassGet())
{
case Vieworks.vivix.net.DETECTOR_CLASS.DETECTOR_CLASS_FXRDN:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.WirelessSignalGet(out wirelessQuality, out linkQuality, out linkSterngth);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get wireless signal information.
}
else
{
// Failed to get wireless signal information.
}
}
9.1.43 BatteryStateGet
Acquires information of the battery installed to the detector.
Syntax (C++)
RESULT BatteryStateGet (
_Out_ BATTERY_REMAIN_LEVEL* batteryRemain,
_Out_ double* batteryGauge,
_Out_ bool* isEquipped,
_Out_ double* voltage,
_Out_ bool* isCharging,
_Out_ bool* isEquipped2,
_Out_ double* voltage2,
_Out_ bool* isCharging2
);
Syntax (C#)
RESULT BatteryStateGet (
Out BATTERY_REMAIN_LEVEL batteryRemain,
Out double batteryGauge,
Out bool isEquipped,
Out double voltage,
Out bool isCharging,
Out bool isEquipped2,
Out double voltage2,
Out bool isCharging2
);
Parameters
batteryRemain [out]
Battery level
batteryGauge [out]
Battery level (Unit: %)
isEquipped [out]
Whether the 1st battery is installed to the detector or not.
voltage [out]
Voltage of the 1st battery
isCharging [out]
Whether the 1st battery is charged or not.
isEquipped2 [out]
Whether the 2nd battery is installed to the detector or not.
voltage2 [out]
Voltage of the 2nd battery
isCharging2 [out]
Whether the 2nd battery is charged or not.
RESULT_SUCCESS
|
Succeeded to get battery state information.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
Remarks
This function can be used after opening detector connection.
In case of the FXRD-1012N model, the information of the 1st battery is valid only. In case of the FXRD-1717N model, the FXRD-1417N model and the VXTD-2532E which uses two batteries, the parameters of batteryRemain and batteryGauge are indicated as a sum of values of the two batteries. (If only one battery (fully-charged) is attached, the return value will be 50%.)
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
BATTERY_REMAIN_LEVEL batteryRemain;
double batteryGauge;
bool isEquipped, isEquipped2;
double voltage, voltage2;
bool isCharging, isCharging2;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDW* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->BatteryStateGet(&batteryRemain, &batteryGauge, &isEquipped, &voltage, &isCharging, &isEquipped2, &voltage2, &isCharging2);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get battery state information.
}
else
{
// Failed to get battery state information.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
BATTERY_REMAIN_LEVEL batteryRemain;
double batteryGauge;
bool isEquipped, isEquipped2;
double voltage, voltage2;
bool isCharging, isCharging2;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.BatteryStateGet(out batteryRemain, out batteryGauge, out isEquipped, out voltage, out isCharging, out isEquipped2, out voltage2, out isCharging2);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get battery state information.
}
else
{
// Failed to get battery state information.
}
}
9.1.44 OffsetDownload
Downloads the offset calibration data.
Syntax (C++)
RESULT OffsetDownload (
_In_ const FILE_PATH filePath
);
Syntax (C#)
RESULT OffsetDownload (
string filePath
);
Parameters
filePath [in]
File path.
RESULT_SUCCESS
|
Succeeded to download the offset calibration data file.
|
RESULT_INVALID_PARAMETER
|
[filePath] is not valid or not file path.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to download the offset calibration data file.
|
Remarks
This function can be used after opening detector connection.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDW* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->OffsetDownload(_T("D:\\offset.dat"));
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to download offset calibration data.
}
else
{
// Failed to download offset calibration data.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDW pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.OffsetDownload("D:\\offset.dat");
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to download offset calibration data.
}
else
{
// Failed to download offset calibration data.
}
}
9.1.45 DefectDownload
Downloads the defect calibration data
Syntax (C++)
RESULT DefectDownload (
_In_ const FILE_PATH filePath
);
Syntax (C#)
RESULT DefectDownload (
string filePath
);
Parameters
filePath [in]
File path.
RESULT_SUCCESS
|
Succeeded to download the defect calibration data file.
|
RESULT_INVALID_PARAMETER
|
[filePath] is not valid or not file path.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to download the defect calibration data file.
|
Remarks
This function can be used after opening detector connection.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDW* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->DefectDownload(_T("D:\\offset.dat"));
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to download defect calibration data.
}
else
{
// Failed to download defect calibration data.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDW pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.DefectDownload("D:\\offset.dat");
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to download defect calibration data.
}
else
{
// Failed to download defect calibration data.
}
}
9.1.46 GainDownload
Downloads the gain calibration data
Syntax (C++)
RESULT GainDownload (
_In_ const FILE_PATH filePath
);
Syntax (C#)
RESULT GainDownload (
string filePath
);
Parameters
filePath [in]
File path.
RESULT_SUCCESS
|
Succeeded to download the gain calibration data file.
|
RESULT_INVALID_PARAMETER
|
[filePath] is not valid or not file path.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to download the gain calibration data file.
|
Remarks
This function can be used after opening detector connection.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDW* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->GainDownload(_T("D:\\offset.dat"));
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to download gain calibration data.
}
else
{
// Failed to download gain calibration data.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDW pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.GainDownload("D:\\offset.dat");
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to download gain calibration data.
}
else
{
// Failed to download gain calibration data.
}
}
9.1.47 IsSCUConnected
Checks if communications between a detector and SCU are linked normally
Syntax (C++)
RESULT IsSCUConnected (
_Out_ bool bConnected
);
Syntax (C#)
RESULT IsSCUConnected (
Out bool bConnected
);
Parameters
bConnected [out]
A variable for indicating if communication between a detector and SCU are linked normally.
RESULT_SUCCESS
|
Succeeded to get connection state with SCU.
|
Remarks
Indicating whether communication between the detector and SCU is linked or not. The detector cannot receive signals from a generator if it is not connected with SCU.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
bool bSCUConnected = false;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->IsSCUConnected(&bSCUConnected);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get connection state.
}
else
{
// Failed to get connection state.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
bool bSCUConnected = false;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.IsSCUConnected(out bSCUConnected);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get connection state.
}
else
{
// Failed to get connection state.
}
}
9.1.48 EnableImageAcquisitionGet
Gets EnableImageAcquisition of the current detector.
Syntax (C++)
RESULT EnableImageAcquisitionGet (
_Out_ bool pbEnable
);
Syntax (C#)
RESULT EnableImageAcquisitionGet (
Out bool pbEnable
);
Parameters
pbEnable [out]
A variable for indicating EnableImageAcquisition state.
RESULT_SUCCESS
|
Succeeded to get enableImageAcquisition state.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_NOT_SUPPORTED_MODEL
|
This function can use by FXRD-2530VW, FXRD-3643VW, FXRD-4343VW only.
|
RESULT_ERROR
|
Failed to get EnableImageAcquisition state.
|
Remarks
This function prevents images from being transmitted to an undesired detector due to AED response when multiple detectors are simultaneously used. The AEDOnOFF function was previously created for the same purpose as the current function, however, a user should manually manipulate the sensor, resulting in the rise of potential problem. Therefore, EnableImageAcquisitionGet is recommended for use.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
bool bEnableImageAcquisition = false;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD2530_V:
case Vieworks::vivix::DETECTOR_TYPE::FXRD3643_V:
case Vieworks::vivix::DETECTOR_TYPE::FXRD4343_V:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->EnableImageAcquisitionGet(&bEnableImageAcquisition);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get enableImageAcquisition state.
}
else
{
// Failed to get enableImageAcquisition state.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
bool bEnableImageAcquisition = false;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD2530_V:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD3643_V:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD4343_V:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.EnableImageAcquisitionGet(out bEnableImageAcquisition);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get enableImageAcquisition state.
}
else
{
// Failed to get enableImageAcquisition state.
}
}
9.1.49 EnableImageAcquisitionSet
Changes EnableImageAcquisition of the detector
Syntax (C++)
RESULT EnableImageAcquisitionSet (
bool bEnable
);
Syntax (C#)
RESULT EnableImageAcquisitionSet (
bool bEnable
);
Parameters
bEnable [in]
A variable for indicating EnableImageAcquisition state.
RESULT_SUCCESS
|
Succeeded to set enableImageAcquisition state.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_NOT_SUPPORTED_MODEL
|
This function can use by FXRD-2530VW, FXRD-3643VW, FXRD-4343VW only.
|
RESULT_ERROR
|
Failed to set EnableImageAcquisition state.
|
Remarks
This function prevents images from being transmitted to an undesired detector due to AED response when multiple detectors are simultaneously used. The AEDOnOFF function was previously created for the same purpose as the current function, however, a user should manually manipulate the sensor, resulting in the rise of potential problem. Therefore, EnableImageAcquisitionSet is recommended for use.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD2530_V:
case Vieworks::vivix::DETECTOR_TYPE::FXRD3643_V:
case Vieworks::vivix::DETECTOR_TYPE::FXRD4343_V:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->EnableImageAcquisitionSet(true);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to set enableImageAcquisition state.
}
else
{
// Failed to set enableImageAcquisition state.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD2530_V:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD3643_V:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD4343_V:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.EnableImageAcquisitionSet(true);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to set enableImageAcquisition state.
}
else
{
// Failed to set enableImageAcquisition state.
}
}
9.1.50 PerformaceOptionGet
Gets Performance Option of the current detector
Syntax (C++)
RESULT PerformaceOptionGet (
_Out_ PERFORMANCE_OPTION peOption
);
Syntax (C#)
RESULT PerformaceOptionGet (
Out PERFORMANCE_OPTION peOption
);
Parameters
peOption [out]
A variable for indicating Performance Option.
RESULT_SUCCESS
|
Succeeded to get Performance Option.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_NOT_SUPPORTED_MODEL
|
This function can use by FXRD-2530VW, FXRD-3643VW, FXRD-4343VW only.
|
RESULT_ERROR
|
Failed to get Performance Option.
|
Remarks
FXRD-2530VW, FXRD 3643VW, and FXRD-4343VW models can use either High Performance or Battery Saver.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
Vieworks::vivix::PERFORMANCE_OPTION eOption;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD2530_V:
case Vieworks::vivix::DETECTOR_TYPE::FXRD3643_V:
case Vieworks::vivix::DETECTOR_TYPE::FXRD4343_V:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->PerformaceOptionGet(&eOption);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get Performance Option.
}
else
{
// Failed to get Performance Option.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
Vieworks.vivix.net.PERFORMANCE_OPTION eOption;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD2530_V:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD3643_V:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD4343_V:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN. PerformaceOptionGet(out eOption);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get Performance Option.
}
else
{
// Failed to get Performance Option.
}
}
9.1.51 PerformaceOptionSet
Changes Performance Option of the detector.
Syntax (C++)
RESULT PerformaceOptionSet (
PERFORMANCE_OPTION eOption
);
Syntax (C#)
RESULT PerformaceOptionSet (
PERFORMANCE_OPTION eOption
);
Parameters
eOption [in]
A variable for indicating Performance Option
RESULT_SUCCESS
|
Succeeded to set Performance Option.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_NOT_SUPPORTED_MODEL
|
This function can use by FXRD-2530VW, FXRD-3643VW, FXRD-4343VW only.
|
RESULT_ERROR
|
Failed to set Performance Option.
|
Remarks
FXRD-2530VW, FXRD 3643VW, and FXRD-4343VW models can use either High Performance or Battery Saver.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD2530_V:
case Vieworks::vivix::DETECTOR_TYPE::FXRD3643_V:
case Vieworks::vivix::DETECTOR_TYPE::FXRD4343_V:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->PerformaceOptionSet(PERFORMANCE_OPTION:: PERFORMANCE_OPTION_HIGH_PERFORMANCE);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to set Performance Option.
}
else
{
// Failed to set Performance Option.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD2530_V:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD3643_V:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD4343_V:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.PerformaceOptionSet(PERFORMANCE_OPTION. PERFORMANCE_OPTION_HIGH_PERFORMANCE);
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to set Performance Option.
}
else
{
// Failed to set Performance Option.
}
}
9.1.52 PackageUpdate
Excutes package udate to the designated file
Syntax (C++)
RESULT PackageUpdate (
_In_ const FILE_PATH strPath
);
Syntax (C#)
RESULT PackageUpdate (
string strPath
);
Parameters
strPath [in]
package file path.
RESULT_SUCCESS
|
Succeeded to update package.
|
RESULT_INVALID_PARAMETER
|
[strPath] is not valid or not folder path.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_IO_FILE_OPEN_FAILED
|
[strPath] could not open.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_DEVICE_NO_NEEDED_UPDATE
|
The latest package is already installed.
|
RESULT_ERROR
|
Failed to update package. The file may be broken or not compatible with the current detector. Or, it may be temporary communications disruption.
|
Remarks
This function can be used after opening detector connection.
The package file transmitted via the official distribution channel should be used and updated. PackageUpdate API is returned after the operation is complete. If the program looks stopped from the main thread, try it again from a new thread.
PackageUpdate takes a long time, and Progress Notification is provided to show the progress. Check the item of NotifyPackageUpdateProgress.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
// on new thread
if(pDetector != NULL)
{
switch (pDetector->DetectorClassGet())
{
case Vieworks::vivix::DETECTOR_CLASS::DETECTOR_CLASS_FXRDN:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
pFXRDN->SetNotifyPackageUpdateProgress(NotifyPackageUpdateProgress);
nResult = pFXRDN->PackageUpdate(_T("C:\\packagefile.vhdr"));
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
}
else
{
}
}
void NotifyPackageUpdateProgress(Vieworks::vivix::DETECTOR_ID id, int nProgress)
{
// Package Update Progress
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
switch (pDetector->DetectorClassGet())
{
case Vieworks.vivix.DETECTOR_CLASS.DETECTOR_CLASS_FXRDN:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
pFXRDN.SetDelegatePackageUpdateProgress
(OnDelegatePackageUpdateProgress);
nResult = pFXRDN.PackageUpdate("C:\\packagefile.vhdr");
}
break;
default:
// Not supported model.
break;
}
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
}
else
{
}
}
void OnDelegatePackageUpdateProgress(int id, int nProgress)
{
// Package Update Progress
}
9.1.53 LEDBlinkStateGet
Gets the LEDBlinkState of the current detector
Syntax (C++)
RESULT LEDBlinkStateGet (
_Out_ bool pbBlinking
);
Syntax (C#)
RESULT LEDBlinkStateGet (
Out bool blinking
);
Parameters
pbBlinking [out]
A variable for indicating LEDBlinkState.
RESULT_SUCCESS
|
Succeeded to get the state.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_NOT_SUPPORTED_MODEL
|
This function can use by FXRD-2530VW, FXRD-3643VW, FXRD-4343VW only.
|
RESULT_ERROR
|
Failed to get the state.
|
Remarks
This function makes LED flicker and identify the relevant detector when multiple VW series detectors are simultaneously used. Flicker stops when the SDK and the detector are disconnected or the blinking state is set to false.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
bool bBlinking = false;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD2530_V:
case Vieworks::vivix::DETECTOR_TYPE::FXRD3643_V:
case Vieworks::vivix::DETECTOR_TYPE::FXRD4343_V:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->LEDBlinkStateGet(&bBlinking);
}
break;
default:
// Not supported model.
break;
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
bool blinking = false;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD2530_V:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD3643_V:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD4343_V:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN. LEDBlinkStateGet(out blinking);
}
break;
default:
// Not supported model.
break;
}
}
9.1.54 LEDBlinkStateSet
Changes LEDBlinkState of the detector
Syntax (C++)
RESULT LEDBlinkStateSet (
bool bBlinking
);
Parameters
bBlinking [in]
A variable for indicating LED Blink State.
Return Values
RESULT_SUCCESS
|
Succeeded to set the state.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_NOT_SUPPORTED_MODEL
|
This function can use by FXRD-2530VW, FXRD-3643VW, FXRD-4343VW only.
|
RESULT_ERROR
|
Failed to set the state.
|
Remarks
This function makes LED flicker and identify the relevant detector when multiple VW series detectors are simultaneously used. Flicker stops when the SDK and the detector are disconnected or the blinking state is set to false.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD2530_V:
case Vieworks::vivix::DETECTOR_TYPE::FXRD3643_V:
case Vieworks::vivix::DETECTOR_TYPE::FXRD4343_V:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->LEDBlinkStateSet(true);
}
break;
default:
// Not supported model.
break;
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD2530_V:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD3643_V:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD4343_V:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN. LEDBlinkStateSet(true);
}
break;
default:
// Not supported model.
break;
}
}
9.1.55 WIFISignalLevelGet
Gets Wifi Signal level of the current detector
Syntax (C++)
RESULT WIFISignalLevelGet (
_Out_ WIFI_SIGNAL_LEVELS* peLevels
);
Syntax (C#)
RESULT WIFISignalLevelGet (
Out WIFI_SIGNAL_LEVELS% levels
);
Parameters
peLevels [out]
A variable for indicating wifi level.
RESULT_SUCCESS
|
Succeeded to get the state.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_NOT_SUPPORTED_MODEL
|
This function can use by FXRD-2530VW, FXRD-3643VW, FXRD-4343VW only.
|
RESULT_ERROR
|
Failed to get the state.
|
Remarks
This function changes the display mode that indicates the connection status through LCD of the VW series. When it is set to Level 3, the wifi signal strength is displayed as below:
(Good) (Normal) (Bad) (Unknown)
(level5 (previous icon))
When the detector and SDK are disconnected, it returns to Level 5. When it is set to Level 3, Very Good and Very Bad among the link qualities acquired from the WirelessSignalGet function are unavailable.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
WIFI_SIGNAL_LEVELS eLvels = WIFI_SIGNAL_5_LEVELS;
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD2530_V:
case Vieworks::vivix::DETECTOR_TYPE::FXRD3643_V:
case Vieworks::vivix::DETECTOR_TYPE::FXRD4343_V:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->WIFISignalLevelGet(&eLvels);
}
break;
default:
// Not supported model.
break;
}
}
Examples (C+)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
WIFI_SIGNAL_LEVELS eLvels = WIFI_SIGNAL_5_LEVELS;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD2530_V:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD3643_V:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD4343_V:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN. WIFISignalLevelGet(out eLvels);
}
break;
default:
// Not supported model.
break;
}
}
9.1.56 WIFISignalLevelSet
Changes Wifi Signal level of the detector
Syntax (C++)
RESULT WIFISignalLevelSet (
WIFI_SIGNAL_LEVELS eLevels
);
Syntax (C+)
RESULT WIFISignalLevelSet (
WIFI_SIGNAL_LEVELS eLevels
);
Parameters
eLevels [in]
A variable for indicating Wifi Signal level.
RESULT_SUCCESS
|
Succeeded to set the state.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_NOT_SUPPORTED_MODEL
|
This function can use by FXRD-2530VW, FXRD-3643VW, FXRD-4343VW only.
|
RESULT_ERROR
|
Failed to set the state.
|
Remarks
Remarks
This function changes the display mode that indicates the connection status through LCD of the VW series. When it is set to Level 3, the wifi signal strength is displayed as below:
(Good) (Normal) (Bad) (Unknown)
(level5 (previous icon))
When the detector and SDK are disconnected, it returns to Level 5. When it is set to Level 3, Very Good and Very Bad among the link qualities acquired from the WirelessSignalGet function are unavailable.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
switch (pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD2530_V:
case Vieworks::vivix::DETECTOR_TYPE::FXRD3643_V:
case Vieworks::vivix::DETECTOR_TYPE::FXRD4343_V:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN->WIFISignalLevelSet(WIFI_SIGNAL_3_LEVELS);
}
break;
default:
// Not supported model.
break;
}
}
Examples (C+)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD2530_V:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD3643_V:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD4343_V:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN. WIFISignalLevelSet(WIFI_SIGNAL_3_LEVELS);
}
break;
default:
// Not supported model.
break;
}
}
9.1.57 AccelerationCalibrationByDirection
Calibrates acceleration sensor by the input direction
Syntax
RESULT AccelerationCalibrationByDirection (ACCELERATION_CAL_DIRECTION direction);
RESULT_SUCCESS
|
Acceleration sensor calibration command was sent normally.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_NOT_SUPPORTED_MODEL
|
There is no acceleration sensor in the detector.
This detector does not support 6 directional acceleration calibration.
|
RESULT_ERROR
|
Failed to send the accelerometer calibration command.
|
Remarks
This function can be used after opening detector connection.
It is available to check the progress using the API below.
SetNotify/DelegateAccSensorCalibrationProgress, Notify/DelegateAccSensorCalibrationProgress.
Check the intermediate result with the AccelerationCalBy6PlaneResultGet function to proceed the further process of 6 directional calibration in total.
Check the description on enum of ACCELERATION_CAL_DIRECTION for direction information.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
nResult = pDetector-> AccelerationCalibrationByDirection(ACCELERATION_CAL_DIRECTION_0_0_PLUS);
}
Examples (C+)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
nResult = pDetector. AccelerationCalibrationByDirection(ACCELERATION_CAL_DIRECTION_0_0_PLUS);
}
9.1.58 AccelerationCalBy6PlaneResultGet
Gets the calibration result of 6 directional acceleration
Syntax (C++)
RESULT AccelerationCalBy6PlaneResultGet (ACC_CAL_BY_6PLANE_RESULT* pstResult);
Syntax (C+)
RESULT AccelerationCalBy6PlaneResultGet (out ACC_CAL_BY_6PLANE_RESULT^% result);
union ACC_CAL_BY_6PLANE_RESULT [out] (C++)
union ACC_CAL_BY_6PLANE_RESULT
{
unsigned short uRaw;
struct
{
unsigned char done1 : 1;
unsigned char done2 : 1;
unsigned char done3 : 1;
unsigned char done4 : 1;
unsigned char done5 : 1;
unsigned char done6 : 1;
unsigned char notUsed1 : 1;
unsigned char notUsed2 : 1;
unsigned char error1 : 1;
unsigned char error2 : 1;
unsigned char error3 : 1;
unsigned char error4 : 1;
unsigned char error5 : 1;
unsigned char error6 : 1;
unsigned char notUsed3 : 1;
unsigned char notUsed4 : 1;
} result;
};
class ACC_CAL_BY_6PLANE_RESULT [out] (C#)
{
public:
bool done1;
bool done2;
bool done3;
bool done4;
bool done5;
bool done6;
bool notUsed1;
bool notUsed2;
bool error1;
bool error2;
bool error3;
bool error4;
bool error5;
bool error6;
bool notUsed3;
bool notUsed4;
};
RESULT_SUCCESS
|
Acceleration sensor calibration command was sent normally.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_NOT_SUPPORTED_MODEL
|
There is no acceleration sensor in the detector.
This detector does not support 6 directional acceleration calibration.
|
RESULT_ERROR
|
Failed to send the accelerometer calibration command.
|
Remarks
This function can be used after opening detector connection.
It is available to check the progress using the API below.
SetNotify/DelegateAccSensorCalibrationProgress, Notify/DelegateAccSensorCalibrationProgress.
ACC_CAL_BY_6PLANE_RESULT is composed of 6 dones and 6 error flags. Each field goes with the order of ACCELERATION_CAL_DIRECTION. Once calibration on the acceleration sensor of each direction is complete, “done” change to “true”. If the direction information and the actual status of the detector are different, “erre flag” changes to “true”. Whem the benchmark ACCELERATION_CAL_DIRECTION_0_0_PLUS is calibrated, the calibration results of the other directions are all initialized. Make sure not to halt operation before the calibration on 6 directional acceleration sensor is complete. If not, the obtained value of the accelerator sensor may not be reliable.
Check the enum description on ACCELERATION_CAL_DIRECTION for details on direction.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != NULL)
{
ACC_CAL_BY_6PLANE_RESULT stResult;
nResult = pDetector-> AccelerationCalBy6PlaneResultGet(&stResult);
}
Examples (C+)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
If(pDetector != null)
{
ACC_CAL_BY_6PLANE_RESULT result;
nResult = pDetector. AccelerationCalBy6PlaneResultGet(out result);
}
9.1.59 PowerSourceGet
Gets the power source of the current detector
Syntax (C++)
RESULT PowersourceGet (
_Out_ POWER_SOURCE* pePowerSource
);
Syntax (C+)
RESULT PowersourceGet (
Out POWER_SOURCE % pePowerSource
);
Parameters
pePowerSource [out]
Current power source of the detector.
RESULT_SUCCESS
|
Succeeded to get the state.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_INVALID_PARAMETER
|
Parameter is null pointer.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != NULL)
{
POWER_SOURCE eSource = WIFI_SIGNAL_5_LEVELS;
switch (pDetector->DetectorClassGet())
{
case Vieworks::vivix::DETECTOR_CLASS::DETECTOR_CLASS_FXRDN:
{
Vieworks::vivix::detector::CFXRDN* pFXRDN = NULL;
pFXRDN = (Vieworks::vivix::detector::CFXRDN*)pDetector;
nResult = pFXRDN-> PowersourceGet (&eSource);
}
break;
default:
// Not supported model.
break;
}
}
Examples (C+)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pDetector != null)
{
POWER_SOURCE source = WIFI_SIGNAL_5_LEVELS;
switch (pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_CLASS. DETECTOR_CLASS_FXRDN:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN. PowersourceGet (out source);
}
break;
default:
// Not supported model.
break;
}
}
9.1.60 DriveModeCountGet
Acquires the number of drive modes
Syntax (C++/C#)
RESULT DriveModeCountGet (
_Out_ int* count
);
Syntax (C#)
RESULT DriveModeCountGet (
out int count
);
Parameters
count [out]
A variable for indicating the number of drive modes.
RESULT_SUCCESS
|
Succeeded to get the number of drive modes.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_NOT_SUPPORTED_MODEL
|
Can be used with drive mode supported models only.
|
RESULT_ERROR
|
Failed to get the number of drive modes.
|
Examples (C++)
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialized, DetectorGet done, Open finished, using namespaces.
int nCount = -1;
if(pDetector->DetectorClassGet() == DETECTOR_CLASS_FXRDN)
nResult = ((CFXRDN*)pDetector)->DriveModeCountGet(&nCount);
Vieworks.vivix.net.detector.Detector Detector = null;
// SDK Initialized, DetectorGet done, Open finished, using namespaces.
int count = -1;
if(Detector. DetectorClassGet() == DETECTOR_CLASS.DETECTOR_CLASS_FXRDN)
nResult = (Detector as FXRDN).DriveModeCountGet(out count);
9.1.61 DriveModeGet
Acquires the index of the drive mode currently selected.
Syntax (C++/C#)
RESULT DriveModeGet (
_Out_ int* nIndex
);
Syntax (C#)
RESULT DriveModeGet (
out int nIndex
);
Parameters
nIndex [out]
A variable for indicating the index of the drive mode currently selected.
RESULT_SUCCESS
|
Succeeded to get the number of drive modes.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_NOT_SUPPORTED_MODEL
|
Can be used with drive mode supported models only.
|
RESULT_ERROR
|
Failed to get the number of drive modes.
|
Examples (C++)
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialized, DetectorGet done, Open finished, using namespaces.
int nDriveMode = -1;
if(pDetector->DetectorClassGet() == DETECTOR_CLASS_FXRDN)
nResult = ((CFXRDN*)pDetector)->DriveModeGet(&nDriveMode);
Examples (C#)
Vieworks.vivix.net.detector.Detector Detector = null;
// SDK Initialized, DetectorGet done, Open finished, using namespaces.
int Drivemode = -1;
if(Detector. DetectorClassGet() == DETECTOR_CLASS.DETECTOR_CLASS_FXRDN)
Result = (Detector as FXRDN).DriveModeGet(out Drivemode);
9.1.62 DriveModeSet
Syntax (C++/C#)
RESULT DriveModeSet (
_In_ int nIndex
);
Syntax (C#)
RESULT DriveModeSet (
int nIndex
);
Parameters
nIndex [out]
A variable for indicating the index of the drive mode to select.
RESULT_SUCCESS
|
Succeeded to get the number of drive modes.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_NOT_SUPPORTED_MODEL
|
Can be used with drive mode supported models only.
|
RESULT_ERROR
|
Failed to get the number of drive modes.
|
Examples (C++)
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialized, DetectorGet done, Open finished, using namespaces.
int nDriveMode = -1;
if(pDetector->DetectorClassGet() == DETECTOR_CLASS_FXRDN)
RESULT nResult = ((CFXRDN*)pDetector)->DriveModeSet(nDriveMode);
Examples (C#)
Vieworks.vivix.net.detector.Detector Detector = null;
// SDK Initialized, DetectorGet done, Open finished, using namespaces.
int Drivemode = -1;
if(Detector. DetectorClassGet() == DETECTOR_CLASS.DETECTOR_CLASS_FXRDN)
RESULT nResult = (Detector as FXRDN).DriveModeSet(Drivemode);
9.1.63 DriveModeChangeProgressGet
Gets the progress of the drive mode change sequence
Syntax (C++/C#)
RESULT DriveModeChangeProgressGet (
_Out_ int* pnProgress
);
Syntax (C#)
RESULT DriveModeChangeProgressGet (
out int progress
);
Parameters
nProgress [out]
A variable for indicating the progress of the drive mode change sequence.
RESULT_SUCCESS
|
Succeeded to get the number of drive modes.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_NOT_SUPPORTED_MODEL
|
Can be used with drive mode supported models only.
|
RESULT_ERROR
|
Failed to get the number of drive modes.
|
Examples (C++)
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialized, DetectorGet done, Open finished, using namespaces.
int nProgress = -1;
if(pDetector->DetectorClassGet() == DETECTOR_CLASS_FXRDN)
RESULT nResult = ((CFXRDN*)pDetector)->DriveModeChangeProgressGet (&nProgress);
Examples (C#)
Vieworks.vivix.net.detector.Detector Detector = null;
// SDK Initialized, DetectorGet done, Open finished, using namespaces.
int progress = -1;
if(Detector. DetectorClassGet() == DETECTOR_CLASS.DETECTOR_CLASS_FXRDN)
RESULT nResult = (Detector as FXRDN).DriveModeChangeProgressGet(out progress);
9.1.64 DriveModeNameGet
Gets the progress of the drive mode change sequence
Syntax (C++/C#)
RESULT DriveModeChangeProgressGet (
_In_ int nIndex,
_Out_ DRIVE_MODE_NAME* pszName
);
Syntax (C#)
RESULT DriveModeChangeProgressGet (
int nIndex,
out String name
);
Parameters
nIndex [In]
A variable for indicating the index of the drive mode.
name [out]
Name for the drive mode.
RESULT_SUCCESS
|
Succeeded to get the number of drive modes.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_NOT_SUPPORTED_MODEL
|
Can be used with drive mode supported models only.
|
RESULT_ERROR
|
Failed to get the number of drive modes.
|
Examples (C++)
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialized, DetectorGet done, Open finished, using namespaces.
DRIVE_MODE_NAME szName = {0,};
if(pDetector->DetectorClassGet() == DETECTOR_CLASS_FXRDN)
RESULT nResult = ((CFXRDN*)pDetector)->DriveModeNameGet(0,&szName);
Examples (C#)
Vieworks.vivix.net.detector.Detector Detector = null;
// SDK Initialized, DetectorGet done, Open finished, using namespaces.
String name;
if(Detector. DetectorClassGet() == DETECTOR_CLASS.DETECTOR_CLASS_FXRDN)
RESULT nResult = (Detector as FXRDN).DriveModeNameGet(0, out name);
9.1.65 AcquisitionModeGet
Gets the acquisition mode
Syntax (C++/C#)
RESULT AcquisitionModeGet (
_Out_ ACQUISITION_MODE * peAcqMode;
);
Syntax (C#)
RESULT AcquisitionModeGet (,
out ACQUISITION_MODE eAcqMode;
);
Parameters
eAcqMode [Out]
A variable for indicating the acquisition mode.
RESULT_SUCCESS
|
Succeeded to get the number of drive modes.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_NOT_SUPPORTED_MODEL
|
Can be used with drive mode supported models only.
|
RESULT_ERROR
|
Failed to get the number of drive modes.
|
Examples (C++)
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialized, DetectorGet done, Open finished, using namespaces.
ACQUISITION_MODE eAcqMode = ACQUISITION_MODE_RADIO;
if(pDetector->DetectorClassGet() == DETECTOR_CLASS_FXRDN)
RESULT nResult = ((CFXRDN*)pDetector)->AcquisitionModeGet(&eAcqMode);
Examples (C#)
Vieworks.vivix.net.detector.Detector Detector = null;
// SDK Initialized, DetectorGet done, Open finished, using namespaces.
ACQUISITION_MODE acqMode;
if(Detector. DetectorClassGet() == DETECTOR_CLASS.DETECTOR_CLASS_FXRDN)
RESULT nResult = (Detector as FXRDN). AcquisitionModeGet(out acqMode);
9.1.66 BinningModeGet
Syntax (C++/C#)
RESULT BinningModeGet (
_Out_ BINNING_MODE* peBinningMode;
);
Syntax (C#)
RESULT BinningModeGet (,
out BINNING _MODE eBinningMode;
);
Parameters
eBinningMode [Out]
A variable for indicating the binning mode.
RESULT_SUCCESS
|
Succeeded to get the number of drive modes.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_NOT_SUPPORTED_MODEL
|
Can be used with drive mode supported models only.
|
RESULT_ERROR
|
Failed to get the number of drive modes.
|
Examples (C++)
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialized, DetectorGet done, Open finished, using namespaces.
BINNING_MODE eBinningMode = BINNING_MODE_NONE;
if(pDetector->DetectorClassGet() == DETECTOR_CLASS_FXRDN)
RESULT nResult = ((CFXRDN*)pDetector)->BinningModeGet(&eBinningMode);
Examples (C#)
Vieworks.vivix.net.detector.Detector Detector = null;
// SDK Initialized, DetectorGet done, Open finished, using namespaces.
BINNING_MODE eBinningMode;
if(Detector. DetectorClassGet() == DETECTOR_CLASS.DETECTOR_CLASS_FXRDN)
RESULT nResult = (Detector as FXRDN).BinningModeGet(out eBinningMode);
9.1.67 AoiOffsetGet
Gets the starting position of the area of interest
Syntax (C++/C#)
RESULT AoiOffsetGet (
_Out_ int* pnOffsetX;
_Out_ int* pnOffsetY’
);
Syntax (C#)
RESULT AoiOffsetGet (,
out int offsetX;
out int offsetY’
);
Parameters
nOffsetX, nOffsetY [out]
Variables for indicating the starting X, Y position of the area of interest.
RESULT_SUCCESS
|
Succeeded to get the number of drive modes.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_NOT_SUPPORTED_MODEL
|
Can be used with drive mode supported models only.
|
RESULT_ERROR
|
Failed to get the number of drive modes.
|
Examples (C++)
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialized, DetectorGet done, Open finished, using namespaces.
int nOffsetX = -1, nOffsetY = -1;
if(pDetector->DetectorClassGet() == DETECTOR_CLASS_FXRDN)
RESULT nResult = ((CFXRDN*)pDetector)->AoiOffsetGet(&nOffsetX, &nOffsetY);
Examples (C#)
Vieworks.vivix.net.detector.Detector Detector = null;
// SDK Initialized, DetectorGet done, Open finished, using namespaces.
int nOffsetX = -1, nOffsetY = -1;
if(Detector. DetectorClassGet() == DETECTOR_CLASS.DETECTOR_CLASS_FXRDN)
RESULT nResult = (Detector as FXRDN).AoiOffsetGet(out nOffsetX, out nOffsetY);
9.1.68 AoiSizeGet
Gets the size of the area of interest
Syntax (C++/C#)
RESULT AoiSizeGet (
_Out_ int* pnWidth;
_Out_ int* pnHeight’
);
Syntax (C#)
RESULT AoiSizeGet (,
out int width
out int height
);
Parameters
nWIdth, nHeight [out]
Variables for indicating the size of the area of interest.
RESULT_SUCCESS
|
Succeeded to get the number of drive modes.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_NOT_SUPPORTED_MODEL
|
Can be used with drive mode supported models only.
|
RESULT_ERROR
|
Failed to get the number of drive modes.
|
Examples (C++)
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialized, DetectorGet done, Open finished, using namespaces.
int nWidth = -1, nHeight = -1;
if(pDetector->DetectorClassGet() == DETECTOR_CLASS_FXRDN)
RESULT nResult = ((CFXRDN*)pDetector)-> AoiSizeGet(&nWidth, &nHeight);
Examples (C#)
Vieworks.vivix.net.detector.Detector Detector = null;
// SDK Initialized, DetectorGet done, Open finished, using namespaces.
int width, height;
if(Detector. DetectorClassGet() == DETECTOR_CLASS.DETECTOR_CLASS_FXRDN)
RESULT nResult = (Detector as FXRDN).AoiSizeGet(out width, out height);
9.1.69 MaxAoiSizeGet
Gets the max size of the area of interest
Syntax (C++/C#)
RESULT MaxAoiSizeGet (
_Out_ int* pnWidth;
_Out_ int* pnHeight’
);
Syntax (C#)
RESULT MaxAoiSizeGet (,
out int width
out int height
);
Parameters
nWIdth, nHeight [out]
Variables for indicating the max size of the area of interest.
RESULT_SUCCESS
|
Succeeded to get the number of drive modes.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_NOT_SUPPORTED_MODEL
|
Can be used with drive mode supported models only.
|
RESULT_ERROR
|
Failed to get the number of drive modes.
|
Remarks
The max AOI size is equivalent with the original binning applied image size.
Examples (C++)
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialized, DetectorGet done, Open finished, using namespaces.
int nWidth = -1, nHeight = -1;
if(pDetector->DetectorClassGet() == DETECTOR_CLASS_FXRDN)
RESULT nResult = ((CFXRDN*)pDetector)->MaxAoiSizeGet(&nWidth, &nHeight);
Examples (C#)
Vieworks.vivix.net.detector.Detector Detector = null;
// SDK Initialized, DetectorGet done, Open finished, using namespaces.
int width, height;
if(Detector. DetectorClassGet() == DETECTOR_CLASS.DETECTOR_CLASS_FXRDN)
RESULT nResult = (Detector as FXRDN).MaxAoiSizeGet(out width, out height);
9.1.70 FrameRateGet
Syntax (C++/C#)
RESULT FrameRateGet (
_Out_ double* pfFrameRate;
);
Syntax (C#)
RESULT FrameRateGet (,
out double frameRate
);
Parameters
frameRate [out]
A variable for indicating the frame rate. (fps)
RESULT_SUCCESS
|
Succeeded to get the number of drive modes.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_NOT_SUPPORTED_MODEL
|
Can be used with drive mode supported models only.
|
RESULT_ERROR
|
Failed to get the number of drive modes.
|
Examples (C++)
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialized, DetectorGet done, Open finished, using namespaces
float fFrameRate = 0.0;
if(pDetector->DetectorClassGet() == DETECTOR_CLASS_FXRDN)
RESULT nResult = ((CFXRDN*)pDetector)->FrameRateGet(&fFrameRate);
Examples (C#)
Vieworks.vivix.net.detector.Detector Detector = null;
// SDK Initialized, DetectorGet done, Open finished, using namespaces.
float frameRate;
if(Detector. DetectorClassGet() == DETECTOR_CLASS.DETECTOR_CLASS_FXRDN)
RESULT nResult = (Detector as FXRDN).FrameRateGet(out frameRate);
9.1.71 FrameCountGet
Syntax (C++/C#)
RESULT FrameRateGet (
_Out_ int* pnFrameCount;
);
Syntax (C#)
RESULT FrameRateGet (,
out int frameCount
);
Parameters
frameCount [out]
A variable for indicating the number of images to acquire on a multi-frame acquisition sequence.
RESULT_SUCCESS
|
Succeeded to get the number of drive modes.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_NOT_SUPPORTED_MODEL
|
Can be used with drive mode supported models only.
|
RESULT_ERROR
|
Failed to get the number of drive modes.
|
Examples (C++)
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialized, DetectorGet done, Open finished, using namespaces
int nFrameCount = 0;
if(pDetector->DetectorClassGet() == DETECTOR_CLASS_FXRDN)
RESULT nResult = ((CFXRDN*)pDetector)->FrameCountGet(&nFrameCount);
Examples (C#)
Vieworks.vivix.net.detector.Detector Detector = null;
// SDK Initialized, DetectorGet done, Open finished, using namespaces.
int frameCount = 0;
if(Detector. DetectorClassGet() == DETECTOR_CLASS.DETECTOR_CLASS_FXRDN)
RESULT nResult = (Detector as FXRDN).FrameCountGet(out frameCount);
9.2 Callback Notification Setting Function
9.2.1 SetNotifyPowerWarning / SetDelegatePowerWarning
Sets NotifyPowerWarning / DelegatePowerWarning notification
Syntax (C++)
void SetNotifyPowerWarning (
_In_ NotifyPowerWarning pNotify
);
Syntax (C#)
void SetDelegatePowerWarning (
DelegatePowerWarning val
);
Parameters
pNotify [in]
NotifyPowerWarning
val [in]
DelegatePowerWarning
Remarks
Refer to ‘detector::NotifyPowerWarning’.
Refer to ‘detector.DelegatePowerWarning’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != NULL)
{
switch(pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
((Vieworks::vivix::detector::FXRDN*)pDetector)->SetNotifyPowerWarning(NotifyPowerWarning);
}
break;
default:
// Not supported model
break;
}
}
void NotifyPowerWarning(Vieworks::vivix::DETECTOR_ID id, VOLTAGE_STATUS status)
{
switch(status)
{
case Vieworks::vivix::VOLTAGE_STATUS::VOLTAGE_WARNING:
{
// Voltage warning
}
break;
case Vieworks::vivix::VOLTAGE_STATUS::VOLTAGE_POWER_OFF:
{
// Power off
}
break;
case Vieworks::vivix::VOLTAGE_HIBERNATE:
{
// Hibernate
}
break;
default:
{
// Invalid Voltage Status
}
break;
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != null)
{
switch(pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.SetDelegatePowerWarning(OnDelegatePowerWarning);
}
break;
default:
// Not supported model
break;
}
}
void OnDelegatePowerWarning(int id, VOLTAGE_STATUS status)
{
switch(status)
{
case Vieworks.vivix.net.VOLTAGE_STATUS.VOLTAGE_WARNING:
{
// Voltage warning
}
break;
case Vieworks.vivix.net.VOLTAGE_STATUS.VOLTAGE_POWER_OFF:
{
// Power off
}
break;
case Vieworks.vivix.net.VOLTAGE_HIBERNATE:
{
// Hibernate
}
break;
default:
{
// Invalid Voltage Status
}
break;
}
}
9.2.2 SetNotifySleep / SetDelegateSleep
Sets NotifySleep / DelegateSleep notification
Syntax (C++)
void SetNotifySleep (
_In_ NotifySleep pNotify
);
Syntax (C#)
void SetDelegateSleep (
DelegateSleep val
);
Parameters
pNotify [in]
NotifySleep
val [in]
DelegateSleep
Remarks
Refer to ‘detector::NotifySleep’.
Refer to ‘detector.DelegateSleep’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != NULL)
{
switch(pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
((Vieworks::vivix::detector::FXRDN*)pDetector)->SetNotifySleep(NotifySleep);
}
break;
default:
// Not supported model
break;
}
}
void NotifySleep(Vieworks::vivix::DETECTOR_ID id)
{
// Detector is in sleep state
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != null)
{
switch(pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.SetDelegateSleep(OnDelegateSleep);
}
break;
default:
// Not supported model
break;
}
}
void OnDelegateSleep(int id)
{
// Detector is in sleep state
}
9.2.3 SetNotifyWakeUp / SetDelegateWakeUp
Sets NotifyWakeUp / DelegateWakeUp notification
Syntax (C++)
void SetNotifyWakeUp (
_In_ NotifyWakeUp pNotify
);
Syntax (C#)
void SetDelegateWakeUp (
DelegateWakeUp val
);
Parameters
pNotify [in]
NotifyWakeUp
val [in]
DelegateWakeUp
Remarks
Refer to ‘detector::NotifyWakeUp’.
Refer to ‘detector.DelegateWakeUp’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != NULL)
{
switch(pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
((Vieworks::vivix::detector::FXRDN*)pDetector)->SetNotifyWakeUp(NotifyWakeUp);
}
break;
default:
// Not supported model
break;
}
}
void NotifyWakeUp(Vieworks::vivix::DETECTOR_ID id)
{
// The detector is turned out from the Sleep status to the normal
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != null)
{
switch(pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012-N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.SetDelegateWakeUp(OnDelegateWakeUp);
}
break;
default:
// Not supported model
break;
}
}
void OnDelegateWakeUp(int id)
{
// The detector is turned out from the Sleep status to the normal
}
9.2.4 SetNotifyKeepAlive / SetDelegateKeepAlive
Sets NotifyKeepAlive / DelegateKeepAlive notification
Syntax (C++)
void SetNotifyKeepAlive (
_In_ NotifyKeepAlive pNotify
);
Syntax (C#)
void SetDelegateKeepAlive (
DelegateKeepAlive val
);
Parameters
pNotify [in]
NotifyKeepAlive
val [in]
DelegateKeepAlive
Remarks
Refer to ‘detector::NotifyKeepAlive’.
Refer to ‘detector.DelegateKeepAlive’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != NULL)
{
switch(pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
((Vieworks::vivix::detector::FXRDN*)pDetector)->SetNotifyKeepAlive(NotifyKeepAlive);
}
break;
default:
// Not supported model
break;
}
}
void NotifyKeepAlive(Vieworks::vivix::DETECTOR_ID id, double temperature, Vieworks::vivix::CONNECTION_INTERFACE interfaceType, Vieworks::vivix::WIRELESS_SIGNAL_QUALITY wirelessQuality, unsigned int linkQuality, Vieworks::vivix::BATTERY_REMAIN_LEVEL batteryRemain, unsigned int batteryGauge)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != null)
{
switch(pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.SetDelegateKeepAlive(OnDelegateKeepAlive);
}
break;
default:
// Not supported model
break;
}
}
void OnDelegateKeepAlive(int id, double temperature, Vieworks.vivix.net.CONNECTION_INTERFACE interfaceType, Vieworks.vivix.net.WIRELESS_SIGNAL_QUALITY wirelessQuality, uint linkQuality, Vieworks.vivix.net.BATTERY_REMAIN_LEVEL batteryRemain, uint batteryGauge)
{
}
9.2.5 SetNotifyLogDownloadState / SetDelegateLogDownloadState
Sets NotifyLogDownloadState / DelegateLogDownloadState notification
Syntax (C++)
void SetNotifyLogDownloadState(
_In_ NotifyLogDownloadState pNotify
);
Syntax (C#)
void SetDelegateLogDownloadState(
DelegateLogDownloadState val
);
Parameters
pNotify [in]
NotifyLogDownloadState
val [in]
DelegateLogDownloadState
Remarks
Refer to ‘detector::NotifyLogDownloadState’.
Refer to ‘detector.DelegateLogDownloadState’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != NULL)
{
switch(pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
((Vieworks::vivix::detector::FXRDN*)pDetector)->SetNotifyLogDownloadState(NotifyLogDownloadState);
}
break;
default:
// Not supported model
break;
}
}
void NotifyLogDownloadState(Vieworks::vivix::DETECTOR_ID id, int currentStep, int totalStep, bool success)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != null)
{
switch(pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.SetDelegateLogDownloadState
(OnDelegateLogDownloadState);
}
break;
default:
// Not supported model
break;
}
}
void OnDelegateLogDownloadState(int id, int currentStep, int totalStep, bool success)
{
}
9.2.6 SetNotifyLogDownloadResult / SetDelegateLogDownloadResult
Sets NotifyLogDownloadResult / DelegateLogDownloadResult notification
Syntax (C++)
void SetNotifyLogDownloadResult(
_In_ NotifyLogDownloadResult pNotify
);
Syntax (C#)
void SetDelegateLogDownloadResult(
DelegateLogDownloadResult val
);
Parameters
pNotify [in]
NotifyLogDownloadResult
val [in]
DelegateLogDownloadResult
Remarks
Refer to ‘detector::NotifyLogDownloadResult’.
Refer to ‘detector.DelegateLogDownloadResult’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != NULL)
{
switch(pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
((Vieworks::vivix::detector::FXRDN*)pDetector)->SetNotifyLogDownloadResult(NotifyLogDownloadResult);
}
break;
default:
// Not supported model
break;
}
}
void NotifyLogDownloadResult(Vieworks::vivix::DETECTOR_ID id, bool success)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != null)
{
switch(pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.SetDelegateLogDownloadResult
(OnDelegateLogDownloadResult);
}
break;
default:
// Not supported model
break;
}
}
void OnDelegateLogDownloadResult(int id, bool success)
{
}
9.2.7 SetNotifyReboot / SetDelegateReboot
Sets NotifyReboot / DelegateReboot notification
Syntax (C++)
void SetNotifyReboot(
_In_ NotifyReboot pNotify
);
Syntax (C#)
void SetDelegateReboot(
DelegateReboot val
);
Parameters
pNotify [in]
NotifyReboot
val [in]
DelegateReboot
Remarks
Refer to ‘detector::NotifyReboot’.
Refer to ‘detector.DelegateReboot’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != NULL)
{
switch(pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
((Vieworks::vivix::detector::FXRDN*)pDetector)->SetNotifyReboot(NotifyReboot);
}
break;
default:
// Not supported model
break;
}
}
void NotifyReboot(Vieworks::vivix::DETECTOR_ID id, Vieworks::vivix::REBOOT_STATUS rebootStatus)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != null)
{
switch(pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.SetDelegateReboot(OnDelegateReboot);
}
break;
default:
// Not supported model
break;
}
}
void OnDelegateReboot(int id, Vieworks.vivix.net.REBOOT_STATUS rebootStatus)
{
}
9.2.8 SetNotifySelfDiagnosisTimeout / SetDelegateSelfDiagnosisTimeout
Sets NotifySelfDiagnosisTimeout / DelegateSelfDiagnosisTimeout notification
Syntax (C++)
void SetNotifySelfDiagnosisTiemout(
_In_ NotifySelfDiagnosisTimeout pNotify
);
Syntax (C#)
void SetDelegateSelfDiagnosisTiemout(
DelegateSelfDiagnosisTimeout val
);
Parameters
pNotify [in]
NotifySelfDiagnosisTimeout
val [in]
DelegateSelfDiagnosisTimeout
Remarks
Refer to ‘detector::NotifySelfDiagnosisTimeout’.
Refer to ‘detector.DelegateSelfDiagnosisTimeout’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != NULL)
{
switch(pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
((Vieworks::vivix::detector::FXRDN*)pDetector)->SetNotifySelfDiagnosisTimeout(NotifySelfDiagnosisTimeout);
}
break;
default:
// Not supported model
break;
}
}
void NotifySelfDiagnosisTimeout(Vieworks::vivix::DETECTOR_ID id)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != null)
{
switch(pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.SetDelegateSelfDiagnosisTimeout
(OnDelegateSelfDiagnosisTimeout);
}
break;
default:
// Not supported model
break;
}
}
void OnDelegateSelfDiagnosisTimeout(int id)
{
}
9.2.9 SetNotifySelfDiagnosisItemResult / SetDelegateSelfDiagnosisItemResult
Sets NotifySelfDiagnosisItemResult / DelegateSelfDiagnosisItemResult notification
Syntax (C++)
void SetNotifySelfDiagnosisItemResult (
_In_ NotifySelfDiagnosisItemResult pNotify
);
Syntax (C#)
void SetDelegateSelfDiagnosisItemResult (
DelegateSelfDiagnosisItemResult val
);
Parameters
pNotify [in]
NotifySelfDiagnosisItemResult
val [in]
DelegateSelfDiagnosisItemResult
Remarks
Refer to ‘detector::NotifySelfDiagnosisItemResult’.
Refer to ‘detector.DelegateSelfDiagnosisItemResult’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != NULL)
{
switch(pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
((Vieworks::vivix::detector::FXRDN*)pDetector)->SetNotifySelfDiagnosisResult(NotifySelfDiagnosisResult);
}
break;
default:
// Not supported model
break;
}
}
void NotifySelfDiagnosisResult(Vieworks::vivix::DETECTOR_ID id, Vieworks::vivix::SELF_DIAGNOSIS_RESULT* result)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != null)
{
switch(pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.SetDelegateSelfDiagnosisResult
(OnDelegateSelfDiagnosisResult);
}
break;
default:
// Not supported model
break;
}
}
void OnDelegateSelfDiagnosisResult(int id, Vieworks.vivix.net.SELF_DIAGNOSIS_RESULT* result)
{
}
9.2.10 SetNotifySelfDiagnosisItemDone / SetDelegateSelfDiagnosisItemDone
Sets NotifySelfDiagnosisItemDone / DelegateSelfDiagnosisItemDone notification
Syntax (C++)
void SetNotifySelfDiagnosisDone (
_In_ NotifySelfDiagnosisDone pNotify
);
Syntax (C#)
void SetDelegateSelfDiagnosisDone (
DelegateSelfDiagnosisDone val
);
Parameters
pNotify [in]
NotifySelfDiagnosisItemDone
val [in]
DelegateSelfDiagnosisItemDone
Remarks
Refer to ‘detector::NotifySelfDiagnosisDone’.
Refer to ‘detector.DelegateSelfDiagnosisDone’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != NULL)
{
switch(pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
((Vieworks::vivix::detector::FXRDN*)pDetector)->SetNotifySelfDiagnosisDone(NotifySelfDiagnosisDone);
}
break;
default:
// Not supported model
break;
}
}
void NotifySelfDiagnosisDone(Vieworks::vivix::DETECTOR_ID id, Vieworks::vivix::SELF_DIAGNOSIS_DONE_TYPE type, Vieworks::vivix::SELF_DIAGNOSIS_REPORT* report)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
If(pDetector != null)
{
switch(pDetector.DetectorTypeGet())
{
Case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
Case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.SetDelegateSelfDiagnosisDone
(OnDelegateSelfDiagnosisDone);
}
break;
default:
// Not supported model
break;
}
}
void OnDelegateSelfDiagnosisDone(int id, Vieworks.vivix.net.SELF_DIAGNOSIS_DONE_TYPE type, Vieworks.vivix.net.SELF_DIAGNOSIS_REPORT* report)
{
}
9.2.11 SetNotifyShockReportDownloadState / SetDelegateShockReportDownloadState
Sets NotifyShockReportDownloadState / DelegateShockReportDownloadState notification
Syntax (C++)
void SetNotifyShockReportDownloadState(
_In_ NotifyShockReportDownloadState pNotify
);
Syntax (C#)
void SetDelegateShockReportDownloadState(
DelegateShockReportDownloadState val
);
Parameters
pNotify [in]
NotifyShockReportDownloadState
val [in]
DelegateShockReportDownloadState
Remarks
Refer to ‘detector::NotifyShockReportDownloadState’.
Refer to ‘detector.DelegateShockReportDownloadState’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != NULL)
{
switch(pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
((Vieworks::vivix::detector::FXRDN*)pDetector)->SetNotifyShockReportDownloadState(NotifyShockReportDownloadState);
}
break;
default:
// Not supported model
break;
}
}
void NotifyShockReportDownloadState(Vieworks::vivix::DETECTOR_ID id, int currentStep, int totalStep, bool success)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != null)
{
switch(pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.SetDelegateShockReportDownloadState
(OnDelegateShockReportDownloadState);
}
break;
default:
// Not supported model
break;
}
}
void OnDelegateShockReportDownloadState(int id, int currentStep, int totalStep, bool success)
{
}
9.2.12 SetNotifyShockReportDownloadResult / SetDelegateShockReportDownloadResult
Sets NotifyShockReportDownloadResult / DelegateShockReportDownloadResult notification
Syntax (C++)
void SetNotifyShockReportDownloadResult(
_In_ NotifyShockReportDownloadResult pNotify
);
Syntax (C#)
void SetDelegateShockReportDownloadResult(
DelegateShockReportDownloadResult val
);
Parameters
pNotify [in]
NotifyShockReportDownloadResult
val [in]
DelegateShockReportDownloadResult
Remarks
Refer to ‘detector::NotifyShockReportDownloadResult’.
Refer to ‘detector.DelegateShockReportDownloadResult’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != NULL)
{
switch(pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
((Vieworks::vivix::detector::FXRDN*)pDetector)->SetNotifyShockReportDownloadResult(NotifyShockReportDownloadResult);
}
break;
default:
// Not supported model
break;
}
}
void NotifyShockReportDownloadResult(Vieworks::vivix::DETECTOR_ID id, bool success)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != null)
{
switch(pDetector.DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
nResult = pFXRDN.SetDelegateShockReportDownloadResult
(OnDelegateShockReportDownloadResult);
}
break;
default:
// Not supported model
break;
}
}
void OnDelegateShockReportDownloadResult(int id, bool success)
{
}
9.2.13 SetNotifyImageTransmissionDelayed / SetDelegateImageTransmissionDelayed
Sets NotifyImageTransmissionDelayed / DelegateImageTransmissionDelayed notification
Syntax (C++)
void SetNotifyImageTransmissionDelayed (
_In_ NotifyImageTransmissionDelayed pNotify
);
Syntax (C#)
void SetDelegateImageTransmissionDelayed (
DelegateImageTransmissionDelayed val
);
Parameters
pNotify [in]
NotifyImageTransmissionDelayed
val [in]
DelegatemageTransmissionDelayed
Remarks
-
Refer to ‘detector::NotifyImageTransmissionDelayed'.
-
Refer to ‘detector.DelegateImageTransmissionDelayed'.
-
The "ImageTransmissionDelayed" feature of the N-type model is not yet implemented.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != NULL)
{
switch(pDetector->DetectorTypeGet())
{
case Vieworks::vivix::DETECTOR_TYPE::FXRD1012_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1417_N:
case Vieworks::vivix::DETECTOR_TYPE::FXRD1717_N:
case Vieworks::vivix::DETECTOR_TYPE::VXTD2532_E:
{
((Vieworks::vivix::detector::FXRDN*)pDetector)-> SetNotifyImageTransmissionDelayed(NotifyImageTransmissionDelayed);
}
break;
default:
// Not supported model
break;
}
}
void NotifyImageTransmissionDelayed(Vieworks::vivix::DETECTOR_ID id)
{
// Image Transmission Delayed
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != NULL)
{
switch(pDetector->DetectorTypeGet())
{
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1012_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1417_N:
case Vieworks.vivix.net.DETECTOR_TYPE.FXRD1717_N:
case Vieworks.vivix.net.DETECTOR_TYPE.VXTD2532_E:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
pFXRDN.SetDelegateImageTransmissionDelayed
(OnDelegateImageTransmissionDelayed);
}
break;
default:
// Not supported model
break;
}
}
void OnDelegateImageTransmissionDelayed(int id)
{
// Image Transmission Delayed
}
9.2.14 SetNotifyPackageUpdateProgress / SetDelegatePackageUpdateProgress
Sets NotifyPackageUpdateProgress/DelegatePackageUpdateProgress notification
Syntax (C++)
void SetNotifyPackageUpdateProgress (
_In_ NotifyPackageUpdateProgress pNotify
);
Syntax (C#)
void SetDelegatePackageUpdateProgress (
DelegatePackageUpdateProgress val
);
Parameters
pNotify [in]
NotifyPackageUpdateProgress
val [in]
DelegatePackageUpdateProgress
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::CDetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
if(pDetector != NULL)
{
switch(pDetector->DetectorClassGet())
{
case Vieworks::vivix::DETECTOR_CLASS::DETECTOR_CLASS_FXRDN:
{
((Vieworks::vivix::detector::FXRDN*)pDetector)-> SetNotifyPackageUpdateProgress(NotifyPackageUpdateProgress);
}
break;
default:
// Not supported model
break;
}
}
void NotifyPackageUpdateProgress(Vieworks::vivix::DETECTOR_ID id, int nProgress)
{
// Package Update Progress
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
If(pDetector != NULL)
{
Switch(pDetector->DetectorClassGet())
{
case Vieworks.vivix.net.DETECTOR_CLASS.DETECTOR_CLASS_FXRDN:
{
Vieworks.vivix.net.detector.FXRDN pFXRDN = null;
pFXRDN = pDetector as Vieworks.vivix.net.detector.FXRDN;
pFXRDN.SetDelegatePackageUpdateProgress
(OnDelegatePackageUpdateProgress);
}
break;
default:
// Not supported model
break;
}
}
void OnDelegatePackageUpdateProgress (int id, int nProgress)
{
// Package Update Progress
}
9.2.15 SetNotifyDriveModeChanged / Set DelegateDriveModeChanged
Sets NotifyDriveModeChanged notification
Syntax (C++)
void SetNotifyDriveModeChanged (
_In_ NotifyDriveModeChanged pNotify
);
Syntax (C#)
void SetDelegateDriveModeChanged (
DelegateDriveModeChanged val
);
Parameters
pNotify [in]
NotifyDriveModeChanged
val [in]
DelegateDriveModeChanged
Remarks
Refer to ‘detector::NotifyDriveModeChanged’.
Refer to ‘detector.DelegateDriveModeChanged’.
Examples(C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::detector::Cdetector* pDetector = NULL;
// SDK Initialize finished.
// DetectorGet finished.
pDetector->SetNotifyDriveModeChanged(NotifyDriveModeChanged);
void NotifyDriveModeChanged(Vieworks::vivix::DETECTOR_ID id, int nDriveModeIndex)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.detector.Detector pDetector = null;
// SDK Initialize finished.
// DetectorGet finished.
pDetector.SetDelegateDriveModeChanged(OnDelegateDriveModeChanged);
void OnDelegateDriveModeChanged(int id, int DriveModeIndex)
{
}
9.3 Callback Notification Function
9.3.1 detector::NotifyPowerWarning / detector.DelegatePowerWarning
Notifies the warning of wireless detector power
Syntax (C++)
void detector::NotifyPowerWarning (
_In_ DETECTOR_ID id,
_In_ VOLTAGE_STATUS status
);
Syntax (C#)
void detector.DelegatePowerWarning (
int id,
VOLTAGE_STATUS status
);
Parameters
id [in]
Detector ID
status [in]
Detector voltage status
9.3.2 detector::NotifySleep / detector.DelegateSleep
Notifies the wireless detector entering sleep mode
Syntax (C++)
void NotifySleep (
_In_ DETECTOR_ID id
);
Syntax (C#)
void DelegateSleep (
int id
);
Parameters
id [in]
Detector ID
9.3.3 detector::NotifyWakeUp / detector.DelegateWakeUp
Notifies the wireless detector waking up
Syntax (C++)
void detector::NotifyWakeUp (
_In_ DETECTOR_ID id
);
Syntax (C#)
void detector.DelegateWakeUp (
int id
);
Parameters
id [in]
Detector ID
Remarks
This notification is called when the detector wakes up from the sleep state completely.
9.3.4 detector::NotifyKeepAlive / detector.DelegateKeepAlive
Notifies the wireless detector keeping alive
Syntax (C++)
void detector::NotifyKeepAlive (
_In_ DETECTOR_ID id,
_In_ double temperature,
_In_ CONNECTION_INTERFACE interfaceType,
_In_ WIRELESS_SIGNAL_QUALITY wirelessQuality,
_In_ uint linkQuality
_In_ BATTERY_REMAIN_LEVEL batteryRemain,
_In_ uint batteryGauge
);
Syntax (C#)
void detector.DelegateKeepAlive (
int id,
double temperature,
CONNECTION_INTERFACE interfaceType,
WIRELESS_SIGNAL_QUALITY wirelessQuality,
uint linkQuality
BATTERY_REMAIN_LEVEL batteryRemain,
uint batteryGauge
);
Parameters
id [in]
Detector ID
temperature [in]
Temperature of detector
interfaceType [in]
Detector interface type
wirelessQuality [in]
Wireless signal quality.
batteryRemain [in]
Battery remain level
batteryGauge [in]
Battery remain gauge
Remarks
This notification is delivered every 2 seconds.
9.3.5 detector::NotifyLogDownloadState/ detector.DelegateLogDownloadState
Notifies the download state
Syntax (C++)
void detector:: NotifyLogDownloadState (
_In_ DETECTOR_ID id,
_In_ int currentStep,
_In_ int totalStep,
_In_ bool success
);
Syntax (C#)
void detector. DelegateLogDownloadState (
int id,
int currentStep,
int totalStep,
bool success
);
Parameters
id [in]
Detector ID
currentStep [in]
Current step
totalStep [in]
Total step
success [in]
Download state
9.3.6 detector::NotifyLogDownloadResult / detector.DelegateLogDownloadResult
Notifies the download result
Syntax (C++)
void detector::NotifyLogDownloadResult (
_In_ DETECTOR_ID id,
_In_ bool success
);
Syntax (C#)
void detector.DelegateLogDownloadResult (
int id,
bool success
);
Parameters
id [in]
Detector ID
success [in]
Download result
9.3.7 detector::NotifyReboot / detector.DelegateReboot
Notifies the process of detector rebooting
Syntax (C++)
void detector::NotifyReboot (
_In_ DETECTOR_ID id,
_In_ REBOOT_STATUS rebootStatus
);
Syntax (C#)
void detector.DelegateReboot (
int id,
REBOOT_STATUS rebootStatus
);
Parameters
id [in]
Detector ID
rebootStatus [in]
Reboot status
9.3.8 detector::NotifySelfDiagnosisTimeout / detector.DelegateSelfDiagnosisTimeout
Notifies Self-diagnostic timeout
Syntax (C++)
void detector::NotifySelfDiagnosisTimeout (
_In_ DETECTOR_ID id,
);
Syntax (C#)
void detector.DelegateSelfDiagnosisTimeout (
int id,
);
Parameters
id [in]
Detector ID
9.3.9 detector::NotifySelfDiagnosisItemResult / detector.DelegateSelfDiagnosisItemResult
Notifies the information on self-diagnostic progress
Syntax (C++)
void detector::NotifySelfDiagnosisItemResult (
_In_ DETECTOR_ID id,
_In_ SELF_DIAGNOSIS_RESULT* result
);
Syntax (C#)
void detector.DelegateSelfDiagnosisItemResult (
int id,
SELF_DIAGNOSIS_RESULT result
);
Parameters
id [in]
Detector ID
result [in]
Self-diagnosis result
Remarks
When each self-diagnosis item is finished, the result transmitted using this function.
9.3.10 detector::NotifySelfDiagnosisDone / detector.DelegateSelfDiagnosisDone
Notifies the result of Self-diagnosis
Syntax (C++)
void detector::NotifySelfDiagnosisDone (
_In_ DETECTOR_ID id,
_In_ SELF_DIAGNOSIS_DONE_TYPE type,
_In_ SELF_DIAGNOSIS_REPORT* report
);
Syntax (C#)
void detector.DelegateSelfDiagnosisDone (
int id,
SELF_DIAGNOSIS_DONE_TYPE type,
SELF_DIAGNOSIS_REPORT report
);
Parameters
id [in]
Detector ID
type [in]
Self-diagnosis done type
report [in]
Self-diagnosis report array
Remarks
When all item is finished, the total result transmitted using this function.
9.3.11 detector::NotifyShockReportDownloadState / detector.DelegateShockReportDownloadState
Notifies the downloading state of shock report
Syntax (C++)
void detector::NotifyShockReportDownloadState (
_In_ DETECTOR_ID id,
_In_ int currentStep,
_In_ int totalStep,
_In_ bool success
);
Syntax (C#)
void detector.DelegateShockReportDownloadState (
int id,
int currentStep,
int totalStep,
bool success
);
Parameters
id [in]
Detector ID
currentStep [in]
Number of current downloaded shock report
totalStep [in]
Total number of shock report
success [in]
Download result
9.3.12 detector::NotifyShockReportDownloadResult / detector.DelegateShockReportDownloadResult
Notifies the download result
Syntax (C++)
void detector::NotifyShockReportDownloadResult (
_In_ DETECTOR_ID id,
_In_ bool success
);
Syntax (C#)
void detector.DelegateShockReportDownloadResult (
int id,
bool success
);
Parameters
id [in]
Detector ID
success [in]
Download result
9.3.13 detector::NotifyImageTransmissionDelayed / detector.DelegateImageTransmissionDelayed
Notifies the delay of image transmission
Syntax (C++)
void detector::NotifyImageTransmissionDelayed(
_In_ DETECTOR_ID id
);
Syntax (C#)
void detector.DelegateImageTransmissionDelayed(
int id
);
Parameters
id [in]
Detector ID
Remarks
If image transmission is delayed while the SDK is getting images, the relevant notification is called.
9.3.14 detector::NotifyDriveModeChanged / detector.DelegateDriveModeChanged
Notifies that the drive mode has changed.
Syntax (C++)
void detector:: NotifyDriveModeChanged (
_In_ DETECTOR_ID id,
_In_ int nDriveModeIndex
);
Syntax (C#)
void detector.DelegateFrameGrabberImageInStart (
int id,
int driveModeIndex
);
Parameters
id[in]
Detector ID
nDriveModeIndex [in]
Index of the drive mode which is currently selected.
Remarks
FXRD-3643FW, FXRD-4343FW: When the detector reboots, the drive mode changes automatically to 0, which will be notified after reconnection. When DriveModeSet is called, it is notified after change is finished.
10 CSCU
10.1 Member Functions
10.1.1 SCUTypeGet
Returns the SCU type of current instance
Syntax
SCU_TYPE SCUTypeGet (void);
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::scu::CSCU* pSCU = NULL;
// SDK Initialize finished.
// SCUGet finished.
if(pSCU != NULL)
{
switch (pSCU->SCUTypeGet())
{
case Vieworks::vivix::SCU_TYPE::FXRS02A:
{
// FXRS02A.
}
break;
case Vieworks::vivix::SCU_TYPE::FXRS03A:
{
// FXRS03A.
}
break;
case Vieworks::vivix::SCU_TYPE::FXRS04A:
{
// FXRS04A.
}
break;
case Vieworks::vivix::SCU_TYPE::FXRS04B:
{
// FXRS04B.
}
break;
case Vieworks::vivix::SCU_TYPE::NO_SCU:
default:
// Invalid SCU type.
break;
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.scu.SCU pSCU = null;
// SDK Initialize finished.
// SCUGet finished.
if(pSCU != null)
{
switch (pSCU.SCUTypeGet())
{
case Vieworks.vivix.net.SCU_TYPE.FXRS02A:
{
// FXRS02A.
}
break;
case Vieworks.vivix.net.SCU_TYPE.FXRS03A:
{
// FXRS03A.
}
break;
case Vieworks.vivix.net.SCU_TYPE.FXRS04A:
{
// FXRS04A.
}
break;
case Vieworks.vivix.net.SCU_TYPE.FXRS04B:
{
// FXRS04B.
}
break;
case Vieworks.vivix.net.SCU_TYPE.NO_SCU:
default:
// Invalid SCU type.
break;
}
}
10.1.2 IsWirelessSupport
Checks if the SCU model of the relevant instance supports wireless function
Syntax
bool IsWirelessSupport (void);
bool
|
Whether to support wireless function or not.
|
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::scu::CSCU* pSCU = NULL;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pSCU != NULL)
{
bool bWirelessSupport = pSCU->IsWirelessSupport();
if(bWirelessSupport == true)
{
// Wireless support model
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.scu.SCU pSCU = null;
// SDK Initialize finished.
// DetectorGet finished.
// Open finished.
if(pSCU != null)
{
bool bWirelessSupport = pSCU.IsWirelessSupport();
if(bWirelessSupport == true)
{
// Wireless support model
}
}
10.1.3 Open
Syntax
RESULT Open (void);
RESULT_SUCCESS
|
Succeeded in connecting SCU.
|
RESULT_SCU_ALREADY_CONNECTED
|
The SCU object that connected already.
|
RESULT_ERROR
|
Failed to set trigger debounce time.
|
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::scu::CSCU* pSCU = NULL;
// SDK Initialize finished.
// SCUGet finished.
// Open finished.
if(pSCU != NULL)
{
nResult = pSCU->Open();
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to open SCU.
}
else
{
// Failed to open SCU.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.scu.SCU pSCU = null;
// SDK Initialize finished.
// SCUGet finished.
// Open finished.
if(pSCU != null)
{
nResult = pSCU.Open();
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to open SCU.
}
else
{
// Failed to open SCU.
}
}
10.1.4 Close
Syntax
RESULT Close (void);
RESULT_SUCCESS
|
Closes the connection of SCU.
|
RESULT_SCU_NOT_CONNECTED
|
SCU is not connected.
|
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::scu::CSCU* pSCU = NULL;
// SDK Initialize finished.
// SCUGet finished.
// Open finished.
if(pSCU != NULL)
{
nResult = pSCU->Close();
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to close SCU.
}
else
{
// Failed to close SCU.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.scu.SCU pSCU = null;
// SDK Initialize finished.
// SCUGet finished.
// Open finished.
if(pSCU != null)
{
nResult = pSCU.Close();
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to close SCU.
}
else
{
// Failed to close SCU.
}
}
10.1.5 SelectDetector
Selects the detector to send the generator trigger signal
Syntax (C++)
RESULT SelectDetector (
_In_ DETECTOR_ID detectorID
);
Syntax (C#)
RESULT SelectDetector (
int detectorID
);
Parameters
detectorID [in]
Detector ID to get the trigger signal.
RESULT_SUCCESS
|
Succeeded in selecting the detector.
|
RESULT_SCU_NO_INFORMATION
|
No SCU information.
Abnormal SCU object
|
RESULT_SCU_NOT_CONNECTED
|
SCU is not connected.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector ID is not connected.
|
RESULT_DETECTOR_NO_INFORMATION
|
No detector information. Unregistered detector ID.
|
RESULT_ERROR
|
Failed to call SelectDetector.
|
Remarks
This function can be used after opening SCU connection. If SCU is reconnected to SDK, this function should be executed again (disconnect SCU physically and reboot up).
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::scu::CSCU* pSCU = NULL;
// SDK Initialize finished.
// SCUGet finished.
// Open finished.
if(pSCU != NULL)
{
nResult = pSCU->SelectDetector(0);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to select 0 detector.
}
else
{
// Failed to select 0 detector.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.scu.SCU pSCU = null;
// SDK Initialize finished.
// SCUGet finished.
// Open finished.
if(pSCU != null)
{
nResult = pSCU.SelectDetector(0);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to select 0 detector.
}
else
{
// Failed to select 0 detector.
}
}
10.1.6 APEnableGet
Configures to activate/deactivate the SCU AP function
Syntax (C++)
RESULT APEnableGet (
_Out_ bool enable
);
Syntax (C#)
RESULT APEnableGet (
out bool enable
);
Parameters
enable [out]
Whether the AP function is activated or not.
RESULT_SUCCESS
|
Completed to set the AP activation.
|
RESULT_SCU_NO_INFORMATION
|
No SCU information. Abnormal SCU subject.
|
RESULT_SCU_NOT_CONNECTED
|
SCU is not connected.
|
RESULT_INVALID_MODEL
|
Unsupported SCU model
|
RESULT_ERROR
|
Failed to activate SCU AP.
|
Remarks
This function can check whether the SCU AP is activated or not. It can be used after opening SCU connection. It can also check the temporary AP setting value configured from APEnableSet only, not from VIVIX Setup or the WirelessAPConfigurationSet function.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::scu::CSCU* pSCU = NULL;
// SDK Initialize finished.
// SCUGet finished.
// Open finished.
if(pSCU != NULL)
{
bool bSCUApEnable = false;
nResult = pSCU->APEnableGet(&bSCUApEnable);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get SCU AP state.
}
else
{
// Failed to get SCU AP state.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.scu.SCU pSCU = null;
// SDK Initialize finished.
// SCUGet finished.
// Open finished.
if(pSCU != null)
{
bool bSCUApEnable = false;
nResult = pSCU.APEnableGet(out bSCUApEnable);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get SCU AP state.
}
else
{
// Failed to get SCU AP state.
}
}
10.1.7 APEnableSet
Configures to activate/deactivate the SCU AP function
Syntax (C++)
RESULT APEnableSet (
_In_ bool enable
);
Syntax (C#)
RESULT APEnableSet (
bool enable
);
Parameters
enable [in]
Whether the AP function is activated or not.
RESULT_SUCCESS
|
Completed to set the AP activation.
|
RESULT_SCU_NO_INFORMATION
|
No SCU information. Abnormal SCU subject.
|
RESULT_SCU_NOT_CONNECTED
|
SCU is not connected.
|
RESULT_INVALID_MODEL
|
Unsupported SCU model
|
RESULT_ERROR
|
Failed to activate / deactivate SCU AP
|
Remarks
This function can be used after opening SCU connection. This function can turn off the AP temporarily if the AP function is turned on by the WirelessAPConfigurationSet function or by VIVIX Setup. However, the AP function cannot be activated if it is turned off by the WirelessAPConfigurationSet function or by VIVIX Setup. In the previous version V1.0.3.67, the signature of this function was ‘APEnable’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::scu::CSCU* pSCU = NULL;
// SDK Initialize finished.
// SCUGet finished.
// Open finished.
if(pSCU != NULL)
{
nResult = pSCU->APEnableSet(true);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to enable SCU AP.
}
else
{
// Failed to enable SCU AP.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.scu.SCU pSCU = null;
// SDK Initialize finished.
// SCUGet finished.
// Open finished.
if(pSCU != null)
{
nResult = pSCU.APEnableSet(true);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to enable SCU AP.
}
else
{
// Failed to enable SCU AP.
}
}
10.1.8 NetworkConfigurationGet
Gets network configuration
Syntax (C++)
RESULT NetworkConfigurationGet (
_Out_ NETWORK_CONFIGURATION* config
);
Syntax (C#)
RESULT NetworkConfigurationGet (
out NETWORK_CONFIGURATION config
);
Parameters
config [out]
Network configuration
RESULT_SUCCESS
|
Succeeded to get network configuration.
|
RESULT_INVALID_PARAMETER
|
[config] is NULL.
|
RESULT_SCU _NOT_CONNECTED
|
SCU is not connected.
|
RESULT_SCU _IS_IN_SLEEP
|
SCU is in sleep mode.
|
RESULT_ERROR
|
Failed to get network configuration.
|
Remarks
This function can be used after opening SCU connection. It brings the settings related to the network information. Since the information is not in SCU but is recorded in the SDK memory, you should call the ConfigurationRead function first, and then call NetworkConfigurationGet function to acquire the setting value in the real detector.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::scu::CSCU* pSCU = NULL;
// SDK Initialize finished.
// SCUGet finished.
// Open finished.
if(pSCU != NULL)
{
Vieworks::vivix::NETWORK_CONFIGURATION NetworkConfiguration;
nResult = pSCU->NetworkConfigurationGet(&NetworkConfiguration);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get network configuration.
}
else
{
// Failed to get network configuration.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.scu.SCU pSCU = null;
// SDK Initialize finished.
// SCUGet finished.
// Open finished.
if(pSCU != null)
{
Vieworks.vivix.net.NETWORK_CONFIGURATION NetworkConfiguration;
nResult = pSCU.NetworkConfigurationGet(out NetworkConfiguration);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get network configuration.
}
else
{
// Failed to get network configuration.
}
}
10.1.9 NetworkConfigurationSet
Sets network configuration
Syntax (C++)
RESULT NetworkConfigurationSet (
_In_ NETWORK_CONFIGURATION* config
);
Syntax (C#)
RESULT NetworkConfigurationSet (
NETWORK_CONFIGURATION config
);
Parameters
config [in]
Network configuration
RESULT_SUCCESS
|
Succeeded to set network configuration.
|
RESULT_INVALID_PARAMETER
|
Invalid item exists among the [config] items.
|
RESULT_SCU_NOT_CONNECTED
|
SCU was not connected.
|
RESULT_SCU_IS_IN_SLEEP
|
SCU is in sleep mode.
|
RESULT_ERROR
|
Failed to set networks configuration.
|
Remarks
This function can be used after opening SCU connection. It configures items related to the network information. The information is not set in SCU, but recorded in the SDK memory. You should call the ConfigurationSave function to send and save the information in the SDK memory to the detector.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::scu::CSCU* pSCU = NULL;
// SDK Initialize finished.
// SCUGet finished.
// Open finished.
if(pSCU != NULL)
{
Vieworks::vivix::NETWORK_CONFIGURATION NetworkConfiguration;
nResult = pSCU->NetworkConfigurationSet(&NetworkConfiguration);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to set network configuration.
}
else
{
// Failed to set network configuration.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.scu.SCU pSCU = null;
// SDK Initialize finished.
// SCUGet finished.
// Open finished.
if(pSCU != null)
{
Vieworks.vivix.net.NETWORK_CONFIGURATION NetworkConfiguration;
nResult = pSCU.NetworkConfigurationSet(NetworkConfiguration);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to set network configuration.
}
else
{
// Failed to set network configuration.
}
}
10.1.10 WirelessAPConfigurationGet
Gets wireless AP configuration
Syntax (C++)
RESULT WirelessAPConfigurationGet (
_Out_ WIRELESS_AP_CONFIGURATION* config
);
Syntax (C#)
RESULT WirelessAPConfigurationGet (
out WIRELESS_AP_CONFIGURATION config
);
Parameters
config [out]
Wireless AP configurations.
RESULT_SUCCESS
|
Succeeded to get wireless AP configuration.
|
RESULT_INVALID_PARAMETER
|
[config] is NULL.
|
RESULT_DETECTOR_NO_INFORMATION
|
There is no detector information.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to get wireless AP configuration.
|
Remarks
This function can be used after opening SCU connection. It brings the settings related to the wireless AP function. The information is not set in SCU, but recorded in the SDK memory. You should call the ConfigurationRead function first, and then call the WirelessAPConfigurationGet function to acquire the setting value in the real detector.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::scu::CSCU* pSCU = NULL;
// SDK Initialize finished.
// SCUGet finished.
// Open finished.
if(pSCU != NULL)
{
Vieworks::vivix::WIRELESS_AP_CONFIGURATION WirelessAPConfiguration;
nResult = pSCU->WirelessAPConfigurationGet(&WirelessAPConfiguration);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get wireless AP configuration.
}
else
{
// Failed to get wireless AP configuration
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.scu.SCU pSCU = null;
// SDK Initialize finished.
// SCUGet finished.
// Open finished.
if(pSCU != null)
{
Vieworks.vivix.net.WIRELESS_AP_CONFIGURATION WirelessAPConfiguration;
nResult = pSCU.WirelessAPConfigurationGet(out WirelessAPConfiguration);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get wireless AP configuration.
}
else
{
// Failed to get wireless AP configuration
}
}
10.1.11 WirelessAPConfigurationSet
Sets wireless AP configuration
Syntax (C++)
RESULT WirelessAPConfigurationSet (
_In_ WIRELESS_AP_CONFIGURATION* config
);
Syntax (C#)
RESULT WirelessAPConfigurationSet (
WIRELESS_AP_CONFIGURATION config
);
Parameters
config [in]
Wireless AP configurations.
RESULT_SUCCESS
|
Succeeded to set wireless AP configuration.
|
RESULT_INVALID_PARAMETER
|
Invalid item exists among the [config] items.
|
RESULT_SCU_NOT_CONNECTED
|
SCU was not connected.
|
RESULT_SCU_IS_IN_SLEEP
|
SCU is in sleep mode.
|
RESULT_ERROR
|
Failed to set wireless AP configuration.
|
Remarks
This function can be used after opening SCU connection. It configures items related to the wireless AP information. The information is not set in SCU, but recorded in the SDK memory. You should call the ConfigurationSave function to send and save the information in the SDK memory to the detector.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::scu::CSCU* pSCU = NULL;
// SDK Initialize finished.
// SCUGet finished.
// Open finished.
if(pSCU != NULL)
{
Vieworks::vivix::WIRELESS_AP_CONFIGURATION WirelessAPConfiguration;
nResult = pSCU->WirelessAPConfigurationSet(&WirelessAPConfiguration);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to set wireless AP configuration.
}
else
{
// Failed to set wireless AP configuration
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.scu.SCU pSCU = null;
// SDK Initialize finished.
// SCUGet finished.
// Open finished.
if(pSCU != null)
{
Vieworks.vivix.net.WIRELESS_AP_CONFIGURATION WirelessAPConfiguration;
nResult = pSCU.WirelessAPConfigurationSet(WirelessAPConfiguration);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to set wireless AP configuration.
}
else
{
// Failed to set wireless AP configuration
}
}
10.1.12 TriggerConfigurationGet
Gets trigger configuration
Syntax (C++)
RESULT TriggerConfigurationGet (
_In_ SCU_TRIGGER_CONFIGURATION* config
);
Syntax (C#)
RESULT TriggerConfigurationGet (
out SCU_TRIGGER_CONFIGURATION config
);
Parameters
config [in]
Trigger configurations.
RESULT_SUCCESS
|
Succeeded to get trigger configuration.
|
RESULT_INVALID_PARAMETER
|
[config] is NULL.
|
RESULT_SCU_NOT_CONNECTED
|
SCU was not connected
|
RESULT_ERROR
|
Succeeded to get trigger configuration.
|
Remarks
This function can be used after opening SCU connection. It brings the settings related to trigger. The information is not set in SCU, but recorded in the SDK memory. You should call the ConfigurationRead function first, and then call the TriggerConfigurationGet function to acquire the value in the real detector.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::scu::CSCU* pSCU = NULL;
// SDK Initialize finished.
// SCUGet finished.
// Open finished.
if(pSCU != NULL)
{
Vieworks::vivix::SCU_TRIGGER_CONFIGURATION SCUTriggerConfiguration;
nResult = pSCU->TriggerConfigurationGet(&SCUTriggerConfiguration);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get trigger configuration.
}
else
{
// Failed to get trigger configuration.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.scu.SCU pSCU = null;
// SDK Initialize finished.
// SCUGet finished.
// Open finished.
if(pSCU != null)
{
Vieworks.vivix.net.SCU_TRIGGER_CONFIGURATION SCUTriggerConfiguration;
nResult = pSCU.TriggerConfigurationGet(out SCUTriggerConfiguration);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get trigger configuration.
}
else
{
// Failed to get trigger configuration.
}
}
10.1.13 TriggerConfigurationSet
Sets trigger configuration
Syntax (C++)
RESULT TriggerConfigurationSet (
_In_ SCU_TRIGGER_CONFIGURATION* config
);
Syntax (C#)
RESULT TriggerConfigurationSet (
SCU_TRIGGER_CONFIGURATION config
);
Parameters
config [in]
Trigger configurations.
RESULT_SUCCESS
|
Succeeded to set trigger configuration.
|
RESULT_INVALID_PARAMETER
|
One or more parameters are not valid.
|
RESULT_SCU_NOT_CONNECTED
|
SCU was not connected.
|
RESULT_ERROR
|
Failed to set trigger configuration.
|
Remarks
This function can be used after opening SCU connection. It configures items related to trigger. The information is not set in SCU, but recorded in the SDK memory. You should call the ConfigurationSave function to send and save the information in the SDK memory to the detector.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::scu::CSCU* pSCU = NULL;
// SDK Initialize finished.
// SCUGet finished.
// Open finished.
if(pSCU != NULL)
{
Vieworks::vivix::SCU_TRIGGER_CONFIGURATION SCUTriggerConfiguration;
nResult = pSCU->TriggerConfigurationSet(&SCUTriggerConfiguration);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to set trigger configuration.
}
else
{
// Failed to set trigger configuration.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.scu.SCU pSCU = null;
// SDK Initialize finished.
// SCUGet finished.
// Open finished.
if(pSCU != null)
{
Vieworks.vivix.net.SCU_TRIGGER_CONFIGURATION SCUTriggerConfiguration;
nResult = pSCU.TriggerConfigurationSet(SCUTriggerConfiguration);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to set trigger configuration.
}
else
{
// Failed to set trigger configuration.
}
}
10.1.14 ConfigurationRead
Renews the setting information
Syntax
RESULT ConfigurationRead (void);
RESULT_SUCCESS
|
Succeeded to renew the setting information.
|
RESULT_SCU_NOT_CONNECTED
|
SCU was not connected.
|
RESULT_ERROR
|
Failed to renew the setting information.
|
Remarks
This function can be used after opening SCU connection. The information of Wireless AP Configuration, Network Configuration, and Trigger Configuration are read from the real detector to SDK memory.
The acquired information in the SDK memory can be brought by using the NetworkConfigurationGet, WirelessAPConfigurationGet, TriggerConfigurationGet functions.
Note that the information of Wireless AP Configuration, Network Configuration, and Trigger Configuration which have not been stored by the CalibrationSave function can be renewed to the information stored in the detector.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::scu::CSCU* pSCU = NULL;
// SDK Initialize finished.
// SCUGet finished.
// Open finished.
if(pSCU != NULL)
{
nResult = pSCU->ConfigurationRead();
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to read configuration from SCU.
}
else
{
// Failed to read configuration from SCU.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.scu.SCU pSCU = null;
// SDK Initialize finished.
// SCUGet finished.
// Open finished.
if(pSCU != null)
{
nResult = pSCU.ConfigurationRead();
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to read configuration from SCU.
}
else
{
// Failed to read configuration from SCU.
}
}
10.1.15 ConfigurationSave
Saves the changed setting information
Syntax
RESULT ConfigurationSave (void);
RESULT_SUCCESS
|
Succeeded to save the setting information.
|
RESULT_SCU_NOT_CONNECTED
|
SCU was not connected.
|
RESULT_ERROR
|
Failed to save the setting information.
|
Remarks
This function can be used after opening SCU connection. It sends and saves the information of Network Configuration, Wireless AP Configuration, and Trigger Configuration in the SDK memory to SCU. The FXRS-02A and 03A models are rebooted automatically after the ConfigurationSave function is succeeded. The FXRS-04A model is disconnected and reconnected when the wireless AP and network settings are changed.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::scu::CSCU* pSCU = NULL;
// SDK Initialize finished.
// SCUGet finished.
// Open finished.
if(pSCU != NULL)
{
nResult = pSCU->ConfigurationSave();
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to save configuration to SCU.
}
else
{
// Failed to save configuration to SCU.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.scu.SCU pSCU = null;
// SDK Initialize finished.
// SCUGet finished.
// Open finished.
if(pSCU != null)
{
nResult = pSCU.ConfigurationSave();
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to save configuration to SCU.
}
else
{
// Failed to save configuration to SCU.
}
}
10.1.16 VersionInfoGet
Gets the version information
Syntax (C++)
RESULT VersionInfoGet (
_Out_ SCU_VERSION_INFO* info
);
Syntax (C#)
RESULT VersionInfoGet (
out SCU_VERSION_INFO info
);
Parameters
info [out]
Version information
RESULT_SUCCESS
|
Succeeded to get the version information.
|
RESULT_INVALID_PARAMETER
|
Incorrect parameter.
|
RESULT_SCU_NOT_CONNECTED
|
SCU was not connected.
|
RESULT_ERROR
|
Failed to get the version information.
|
Remarks
This function can be used after opening SCU connection. It provides the information of firmware, Bootloader, Kernel, Package, Ramdisk, and MAC address for the factory setting.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::scu::CSCU* pSCU = NULL;
// SDK Initialize finished.
// SCUGet finished.
// Open finished.
if(pSCU != NULL)
{
Vieworks::vivix::SCU_VERSION_INFO SCUVersionInfo;
nResult = pSCU->VersionInfoGet(&SCUVersionInfo);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get version information.
}
else
{
// Failed to get version information.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.scu.SCU pSCU = null;
// SDK Initialize finished.
// SCUGet finished.
// Open finished.
if(pSCU != null)
{
Vieworks.vivix.net.SCU_VERSION_INFO SCUVersionInfo;
nResult = pSCU.VersionInfoGet(out SCUVersionInfo);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get version information.
}
else
{
// Failed to get version information.
}
}
10.1.17 LogDataListGet
Gets the list of log information
Syntax (C++)
RESULT LogDataListGet (
_In_ LOG_LIST* logList
);
Syntax (C#)
RESULT LogDataListGet (
out LOG_LIST logList
);
Parameters
logList [in]
The list of SCU log information.
RESULT_SUCCESS
|
Succeeded to get the list of log information.
|
RESULT_INVALID_PARAMETER
|
Incorrect parameter
|
RESULT_SCU_NO_INFORMATION
|
No SCU information. Abnormal SCU object.
|
RESULT_SCU_NOT_CONNECTED
|
SCU was not connected.
|
RESULT_ERROR
|
Failed to get the list of log information.
|
Remarks
This function can be used after opening SCU connection. Input Timestamp to startDate and endDate of LOG_LIST as a parameter to search the log in the certain period. Input 0 to startDate and endDate and send it as a parameter if you need the log data list of the whole period.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::scu::CSCU* pSCU = NULL;
// SDK Initialize finished.
// SCUGet finished.
// Open finished.
if(pSCU != NULL)
{
Vieworks::vivix::LOG_LIST LogList;
CTime t1(2015, 3, 10, 0, 0, 0);
CTime t2(2015, 3, 12, 0, 0, 0);
LogList.startDate = t1.GetTime();
LogList.endDate = t2.GetTime();
nResult = pSCU->LogDataListGet(&LogList);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get log list.
}
else
{
// Failed to get log list.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.scu.SCU pSCU = null;
// SDK Initialize finished.
// SCUGet finished.
// Open finished.
if(pSCU != null)
{
Vieworks.vivix.net.LOG_LIST LogList;
CTime t1(2015, 3, 10, 0, 0, 0);
CTime t2(2015, 3, 12, 0, 0, 0);
LogList.startDate = t1.GetTime();
LogList.endDate = t2.GetTime();
nResult = pSCU.LogDataListGet(out LogList);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get log list.
}
else
{
// Failed to get log list.
}
}
10.1.18 LogDataGet
Imports the log information
Syntax (C++)
RESULT LogDataGet (
_In_ LOG_DATA* logData
);
Syntax (C#)
RESULT LogDataGet (
out LOG_DATA* logData
);
Parameters
logData [in]
The log information to be imported.
RESULT_SUCCESS
|
Succeeded to import the log information.
|
RESULT_INVALID_PARAMETER
|
Incorrect parameter
|
RESULT_SCU_NO_INFORMATION
|
No SCU information. Abnormal SCU object.
|
RESULT_SCU_NOT_CONNECTED
|
SCU is not connected.
|
RESULT_ERROR
|
Failed to import the log information.
|
Remarks
This function can be used after opening SCU connection. Assign the log data to be brought by using LOG_DATA in the LOG_LIST structure, which was acquired by LogDataListGet.
The log data is saved to “SCU\[Serial number” at the bottom of the storage route of SDK log.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::scu::CSCU* pSCU = NULL;
// SDK Initialize finished.
// SCUGet finished.
// Open finished.
if(pSCU != NULL)
{
Vieworks::vivix::LOG_LIST LogList;
CTime t1(2015, 3, 10, 0, 0, 0);
CTime t2(2015, 3, 12, 0, 0, 0);
LogList.startDate = t1.GetTime();
LogList.endDate = t2.GetTime();
nResult = pSCU->LogDataListGet(&LogList);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get log list.
if(LogList.LogCount > 0)
{
nResult = pSCU->LogDataGet(&LogList.LogList[0]);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get log in log path.
}
else
{
// Failed to get log.
}
}
}
else
{
// Failed to get log list.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.scu.SCU pSCU = null;
// SDK Initialize finished.
// SCUGet finished.
// Open finished.
if(pSCU != null)
{
Vieworks.vivix.net.LOG_LIST LogList;
CTime t1(2015, 3, 10, 0, 0, 0);
CTime t2(2015, 3, 12, 0, 0, 0);
LogList.startDate = t1.GetTime();
LogList.endDate = t2.GetTime();
nResult = pSCU.LogDataListGet(out LogList);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get log list.
if(LogList.LogCount > 0)
{
nResult = pSCU.LogDataGet(LogList.LogList[0]);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get log in log path.
}
else
{
// Failed to get log.
}
}
}
else
{
// Failed to get log list.
}
}
10.1.19 SelfDiagnosis
Executes the self-diagnosis.
Syntax
RESULT SelfDiagnosis (void);
RESULT_ERROR
|
Failed to import the log information.
|
Remarks
Scheduled to be implemented later.
10.1.20 DiagnosableItemsGet
Gets the list of diagnosable items
Syntax (C++)
RESULT DiagnosableItemsGet (
_Out_ DIAGNOSABLE_ITEM_INFO_LIST* list
);
Syntax (C#)
RESULT DiagnosableItemsGet (
ref DIAGNOSABLE_ITEM_INFO_LIST list
);
Parameters
list [out]
Diagnosable item information list.
RESULT_SUCCESS
|
Succeeded to get diagnosable item list.
|
RESULT_INVALID_PARAMETER
|
Detector ID is out of range or [type] value is invalid or out of range.
|
RESULT_SCU_NOT_CONNECTED
|
SCU was not connected.
|
RESULT_ERROR
|
Failed to get diagnosable item list.
|
Remarks
This function can be used after opening SCU connection. It receives the list of diagnosable items from SCU firmware. Execute the self-diagnosis to all diagnosable items or partial items by using the DiagnoseItem function. The self-diagnosis items can be different depending on the firmware version of SCU. The callback functions related to the self-diagnosis are NotifySelfDiagnosisTimeout, NotifySelfDiagnosisItemResult, and NotifySelfDiagnosisDone.
This function works only in FXRS-04A.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::scu::CSCU* pSCU = NULL;
// SDK Initialize finished.
// SCUGet finished.
// Open finished.
if(pSCU != NULL)
{
Vieworks::vivix::DIAGNOSABLE_ITEM_INFO_LIST DiagnosableItemInfoList;
nResult = pSCU-> DiagnosableItemsGet(&DiagnosableItemInfoList);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get diagnosable item list.
}
else
{
// Failed to get diagnosable item list.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.scu.SCU pSCU = null;
// SDK Initialize finished.
// SCUGet finished.
// Open finished.
if(pSCU != null)
{
Vieworks.vivix.net.DIAGNOSABLE_ITEM_INFO_LIST DiagnosableItemInfoList = new Vieworks.vivix.net.DIAGNOSABLE_ITEM_INFO_LIST();
nResult = pSCU. DiagnosableItemsGet(ref DiagnosableItemInfoList);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get diagnosable item list.
}
else
{
// Failed to get diagnosable item list.
}
}
10.1.21 DiagnoseItem
Syntax (C++)
RESULT DiagnoseItem (
_In_ int category,
_In_ int item
);
Syntax (C#)
RESULT DiagnoseItem (
_In_ int category,
_In_ int item
);
Parameters
category [in]
Category number of the item to be self-diagnosed.
item [in]
Item number of the item to be self-diagnosed.
RESULT_SUCCESS
|
Succeeded to start diagnosis.
|
RESULT_DETECTOR_NOT_CONNECTED
|
Detector is not connected.
|
RESULT_DETECTOR_IS_IN_SLEEP
|
Detector is in sleep mode.
|
RESULT_ERROR
|
Failed to start diagnosis.
|
Remarks
This function can be used after opening SCU connection. Use the DiagnoseItem function to execute self-diagnosis to all diagnosable items or partial items, which were sent by the DiagnosableImtesGet function. The callback functions related to the DiagnoseItem function are NotifySelfDiagnosisTimeout and NotifySelfDiagnosisItemResult.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_SUCCESS;
Vieworks::vivix::scu::CSCU* pSCU = NULL;
// SDK Initialize finished.
// SCUGet finished.
// Open finished.
if(pSCU != NULL)
{
Vieworks::vivix::DIAGNOSABLE_ITEM_INFO_LIST DiagnosableItemInfoList;
nResult = pSCU-> DiagnosableItemsGet(&DiagnosableItemInfoList);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to get diagnosable item list.
if(DiagnosableItemInfoList.numOfitems > 0)
{
nResult = pSCU->DiagnoseItem(DiagnosableItemInfoList.items[0].categoryId, DiagnosableItemInfoList.items[0].itemId);
if(nResult == Vieworks::vivix::RESULT::RESULT_SUCCESS)
{
// Succeeded to diagnose item.
}
else
{
// Failed to diagnose item.
}
}
}
else
{
// Failed to get diagnosable item list.
}
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_SUCCESS;
Vieworks.vivix.net.scu.SCU pSCU = null;
// SDK Initialize finished.
// SCUGet finished.
// Open finished.
if(pSCU != null)
{
Vieworks.vivix.net.DIAGNOSABLE_ITEM_INFO_LIST DiagnosableItemInfoList = new Vieworks.vivix.net.DIAGNOSABLE_ITEM_INFO_LIST();
nResult = pSCU.DiagnosableItemsGet(ref DiagnosableItemInfoList);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to get diagnosable item list.
if(DiagnosableItemInfoList.numOfitems > 0)
{
nResult = pSCU.DiagnoseItem(DiagnosableItemInfoList.items[0].categoryId, DiagnosableItemInfoList.items[0].itemId);
if(nResult == Vieworks.vivix.net.RESULT.RESULT_SUCCESS)
{
// Succeeded to diagnose item.
}
else
{
// Failed to diagnose item.
}
}
}
else
{
// Failed to get diagnosable item list.
}
}
10.2 Callback Notification Setting Function
10.2.1 SetNotifyReboot / SetDelegateReboot
Sets NotifyReboot / DelegateReboot notification
Syntax (C++)
void SetNotifyReboot (
_In_ NotifyReboot pNotify
);
Syntax (C#)
void SetDelegateReboot (
DelegateReboot val
);
Parameters
pNotify [in]
NotifyReboot
val [in]
DelegateReboot
Remarks
Refer to ‘scu::NotifyReboot’.
Refer to ‘scu.DelegateReboot’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::scu::CSCU* pSCU = NULL;
// SDK Initialize finished.
// SCUGet finished.
if(pSCU != NULL)
{
pSCU->SetNotifyReboot(NotifyReboot);
}
void NotifyReboot(Vieworks::vivix::REBOOT_STATUS rebootStatus)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.scu.SCU pSCU = null;
// SDK Initialize finished.
// SCUGet finished.
if(pSCU != null)
{
pSCU.SetDelegateReboot(OnDelegateReboot);
}
void OnDelegateReboot(Vieworks.vivix.net.REBOOT_STATUS rebootStatus)
{
}
10.2.2 SetNotifyDisconnected / SetDelegateDisconnected
Sets NotifyDisconnected / DelegateDisconnected notification
Syntax (C++)
void SetNotifyDisconnected (
_In_ NotifyDisconnected pNotify
);
Syntax (C#)
void SetDelegateDisconnected (
DelegateDisconnected val
);
Parameters
pNotify [in]
NotifyDisconnected
val [in]
DelegateDisconnected
Remarks
Refer to ‘scu::NotifyDisconnected’.
Refer to ‘scu.DelegateDisconnected’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::scu::CSCU* pSCU = NULL;
// SDK Initialize finished.
// SCUGet finished.
if(pSCU != NULL)
{
pSCU->SetNotifyDisconnected(NotifyDisconnected);
}
void NotifyDisconnected()
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.scu.SCU pSCU = null;
// SDK Initialize finished.
// SCUGet finished.
if(pSCU != null)
{
pSCU.SetDelegateDisconnected(OnDelegateDisconnected);
}
void OnDelegateDisconnected()
{
}
10.2.3 SetNotifyReconnected / SetDelegateReconnected
Sets NotifyReconnected / DelegateReconnected notification
Syntax (C++)
void SetNotifyReconnected (
_In_ NotifyReconnected pNotify
);
Syntax (C#)
void SetDelegateReconnected (
DelegateReconnected val
);
Parameters
pNotify [in]
NotifyReconnected
val [in]
DelegateReconnected
Remarks
Refer to ‘scu::NotifyReconnected’.
Refer to ‘scu.DelegateReconnected’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::scu::CSCU* pSCU = NULL;
// SDK Initialize finished.
// SCUGet finished.
if(pSCU != NULL)
{
pSCU->SetNotifyReconnected(NotifyReconnected);
}
void NotifyReconnected()
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.scu.SCU pSCU = null;
// SDK Initialize finished.
// SCUGet finished.
if(pSCU != null)
{
pSCU.SetDelegateReconnected(OnDelegateReconnected);
}
void OnDelegateReconnected()
{
}
10.2.4 SetNotifyApEnable / SetDelegateApEnable
Sets NotifyApEnable / DelegateApEnable notification
Syntax (C++)
void SetNotifyReconnected (
_In_ NotifyApEnable pNotify
);
Syntax (C#)
void SetDelegateReconnected (
DelegateApEnable val
);
Parameters
pNotify [in]
NotifyApEnable
val [in]
DelegateApEnable
Remarks
Refer to ‘scu::NotifyApEnable’.
Refer to ‘scu.DelegateApEnable’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::scu::CSCU* pSCU = NULL;
// SDK Initialize finished.
// SCUGet finished.
if(pSCU != NULL)
{
pSCU->SetNotifyApEnable(NotifyApEnable);
}
void NotifyApEnable(bool APEnable)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.scu.SCU pSCU = null;
// SDK Initialize finished.
// SCUGet finished.
if(pSCU != null)
{
pSCU.SetDelegateApEnable(OnDelegateApEnable);
}
void OnDelegateApEnable(bool APEnable)
{
}
10.2.5 SetNotifyApInfo / SetDelegateApInfo
Sets NotifyApInfo / DelegateApInfo notification
Syntax (C++)
void SetNotifyAPInfo(
_In_ NotifyApInfo pNotify
);
Syntax (C#)
void SetDelegateAPInfo(
DelegateApInfo val
);
Parameters
pNotify [in]
NotifyApInfo
val [in]
DelegateApInfo
Remarks
Refer to ‘scu::NotifyAPInfo’.
Refer to ‘scu.DelegateAPInfo’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::scu::CSCU* pSCU = NULL;
// SDK Initialize finished.
// SCUGet finished.
if(pSCU != NULL)
{
pSCU->SetNotifyApInfo(NotifyApInfo);
}
void NotifyApInfo(Vieworks::vivix::SCU_APINFO_PARAM scuAPInfo)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.scu.SCU pSCU = null;
// SDK Initialize finished.
// SCUGet finished.
if(pSCU != null)
{
pSCU.SetDelegateApInfo(OnDelegateApInfo);
}
void OnDelegateApInfo(Vieworks.vivix.net.SCU_APINFO_PARAM scuAPInfo)
{
}
10.2.6 SetNotifySelfDiagnosisTimeout / SetDelegateSelfDiagnosisTimeout
Sets the notification of NotifySelfDiagnosisTimeout notification / DelegateSelfDiagnosisTimeout
Syntax (C++)
void SetNotifySelfDiagnosisTimeout(
_In_ NotifySelfDiagnosisTimeout pNotify
);
Syntax (C#)
void SetDelegateSelfDiagnosisTiemout(
DelegateSelfDiagnosisTimeout val
);
Parameters
pNotify [in]
NotifySelfDiagnosisTimeout
val [in]
DelegateSelfDiagnosisTimeout
Remarks
Refer to ‘scu::NotifySelfDiagnosisTimeout’.
Refer to ‘scu.DelegateSelfDiagnosisTimeout’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::scu::CSCU* pSCU = NULL;
// SDK Initialize finished.
// SCUGet finished.
if(pSCU != NULL)
{
pSCU->SetNotifySelfDiagnosisTimeout(NotifySelfDiagnosisTimeout);
}
void NotifySelfDiagnosisTimeout()
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.scu::CSCU* pSCU = NULL;
// SDK Initialize finished.
// SCUGet finished.
if(pSCU != null)
{
pSCU.SetDelegateSelfDiagnosisTimeout(OnDelegateSelfDiagnosisTimeout);
}
void OnDelegateSelfDiagnosisTimeout()
{
}
10.2.7 SetNotifySelfDiagnosisItemResult / SetDelegateSelfDiagnosisItemResult
Sets NotifySelfDiagnosisItemResult notification / DelegateSelfDiagnosisItemResult notification
Syntax (C++)
void SetNotifySelfDiagnosisItemResult(
_In_ NotifySelfDiagnosisItemResult pNotify
);
Syntax (C#)
void SetDelegateSelfDiagnosisResult (
DelegateSelfDiagnosisResult val
);
Parameters
pNotify [in]
NotifySelfDiagnosisItemResult
val [in]
DelegateSelfDiagnosisItemResult
Remarks
Refer to ‘scu::NotifySelfDiagnosisItemResult’.
Refer to ‘scu.DelegateSelfDiagnosisItemResult’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::scu::CSCU* pSCU = NULL;
// SDK Initialize finished.
// SCUGet finished.
if(pSCU != NULL)
{
pSCU->SetNotifySelfDiagnosisItemResult(NotifySelfDiagnosisItemResult);
}
void NotifySelfDiagnosisItemResult(Vieworks::vivix::SELF_DIAGNOSIS_RESULT* result)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.scu.SCU pSCU = null;
// SDK Initialize finished.
// DetectorGet finished.
if(pSCU != null)
{
pSCU.SetDelegateSelfDiagnosisResult(OnDelegateSelfDiagnosisResult);
}
void OnDelegateSelfDiagnosisResult(Vieworks.vivix.net.SELF_DIAGNOSIS_RESULT result)
{
}
10.2.8 SetNotifySelfDiagnosisDone / SetDelegateSelfDiagnosisItemDone
Sets NotifySelfDiagnosisDone notification / DelegateSelfDiagnosisItemDone notification
Syntax (C++)
void SetNotifySelfDiagnosisDone(
_In_ NotifySelfDiagnosisDone pNotify
);
Syntax (C#)
void SetDelegateSelfDiagnosisDone (
DelegateSelfDiagnosisDone val
);
Parameters
pNotify [in]
NotifySelfDiagnosisDone
val [in]
DelegateSelfDiagnosisItemDone
Remarks
Refer to ‘scu::NotifySelfDiagnosisDone’.
Refer to ‘scu.DelegateSelfDiagnosisDone’.
Examples (C++)
Vieworks::vivix::CVivixSDK SDK;
Vieworks::vivix::RESULT nResult = Vieworks::vivix::RESULT::RESULT_ERROR;
Vieworks::vivix::scu::CSCU* pSCU = NULL;
// SDK Initialize finished.
// SCUGet finished.
if(pSCU != NULL)
{
pSCU->SetNotifySelfDiagnosisDone(NotifySelfDiagnosisDone);
}
void NotifySelfDiagnosisDone(Vieworks::vivix::SELF_DIAGNOSIS_DONE_TYPE type, Vieworks::vivix:SELF_DIAGNOSIS_REPORT* report)
{
}
Examples (C#)
Vieworks.vivix.net.VivixNet pSDK = new Vieworks.vivix.net.VivixNet();
Vieworks.vivix.net.RESULT nResult = Vieworks.vivix.net.RESULT.RESULT_ERROR;
Vieworks.vivix.net.scu.SCU pSCU = null;
// SDK Initialize finished.
// SCUGet finished.
if(pSCU != null)
{
pSCU.SetDelegateSelfDiagnosisDone(OnDelegateSelfDiagnosisDone);
}
void OnDelegateSelfDiagnosisDone(Vieworks.vivix.net.SELF_DIAGNOSIS_DONE_TYPE type, Vieworks.vivix.net.SELF_DIAGNOSIS_REPORT report)
{
}
10.3 Callback Notification Function
10.3.1 scu::NotifyReboot / scu.DelegateReboot
Syntax (C++)
void scu::NotifyReboot (
_In_ NOTIFY_REBOOT_STATUS rebootStatus
);
Syntax (C#)
void scu.DelegateReboot (
REBOOT_STATUS rebootStatus
);
Parameters
rebootStatus [in]
SCU reboot status
10.3.2 scu::NotifyDisconnected / scu.DelegateDisconnected
Notifies SCU disconnection
Syntax (C++)
void scu::NotifyDisconnected (void);
Syntax (C#)
void scu.DelegateDisconnected (void);
10.3.3 scu::NotifyReconnected / scu.DelegateReconnected
Notifies SCU reconnection
Syntax (C++)
void scu::NotifyReconnected (void);
Syntax (C#)
void scu.DelegateReconnected (void);
10.3.4 scu::NotifyApEnable / scu.DelegateApEnable
Notifies the AP state of SCU
Syntax (C++)
void scu::ApEnable (
_In_ bool APEnable
);
Syntax (C#)
void scu.ApEnable (
bool APEnable
);
Parameters
APEnable [in]
SCU AP state
10.3.5 scu::NotifyAPInfo / scu.DelegateAPInfo
Notifies the AP information of SCU
Syntax (C++)
void scu::NotifyAPInfo (
_In_ SCU_APINFO_PARAM scuAPInfo
);
Syntax (C#)
void scu.DelegateAPInfo (
SCU_APINFO_PARAM scuAPInfo
);
Parameters
scuAPInfo [in]
SCU AP information
10.3.6 scu::NotifySelfDiagnosisTimeout / scu.DelegateSelfDiagnosisTimeout
Notifies the self-diagnostic timeout
Syntax (C++)
void scu::NotifySelfDiagnosisTimeout ( void );
Syntax (C++)
void scu.DelegateSelfDiagnosisTimeout ( void );
10.3.7 scu::NotifySelfDiagnosisItemResult / scu.DelegateSelfDiagnosisItemResult
Notifies the information on self-diagnostic progress
Syntax (C++)
void scu::NotifySelfDiagnosisItemResult (
_In_ SELF_DIAGNOSIS_RESULT* result
);
Syntax (C#)
void scu.DelegateSelfDiagnosisItemResult (
_In_ SELF_DIAGNOSIS_RESULT result
);
Parameters
result [in]
Self-diagnosis result
Remarks
When each self-diagnosis item is finished, the result transmitted using this function.
10.3.8 scu::NotifySelfDiagnosisDone / scu.DelegateSelfDiagnosisDone
Notifies the self-diagnostic result
Syntax (C++)
void scu::NotifySelfDiagnosisDone (
_In_ SELF_DIAGNOSIS_DONE_TYPE type,
_In_ SELF_DIAGNOSIS_REPORT* report
);
Syntax (C#)
void scu.DelegateSelfDiagnosisDone (
_In_ SELF_DIAGNOSIS_DONE_TYPE type,
_In_ SELF_DIAGNOSIS_REPORT report
);
Parameters
type [in]
Self-diagnosis done type
report [in]
Self-diagnosis report array
Remarks
When all items are finished, the total result is transmitted by using this function.
11 Appendix
11.1 Sequence Diagram
11.1.1 Initializing SDK and Registering Devices
11.1.2 Opening Devices
11.1.3 Image Acquisition
11.2 Self Diagnosis
11.2.1 Concept
Self-diagnosis’s goal is that detector diagnoses status and transmits result of diagnosis.
Later on, the diagnosable item is added or removed. The criteria of diagnosis are stored in detector and detector diagnoses under criteria.
The program was created using VIVIX SDK inform user of self-diagnosis result.
11.2.2 Required condition for self diagnosis
-
Replace a fully charged battery.
-
If SCU is used, the detector and SCU should be connected with a tether cable.
-
If SCU is used, the detector and SCU should be kept communicable distance.
-
If SCU is used, SSID of the detector and SCU must be matched.
11.2.3 Self diagnosis item
Voltage
|
D101*
|
DDC
|
Judgement
|
Tether interface cable failure
|
Change tether interface cable.
|
N/A
|
Tether cable power failure
|
Panel replacement
|
N/A
|
D102
|
Main
|
Judgement
|
Processor I/O power failure
|
Panel replacement
|
Error
|
D103
|
Core
|
Judgement
|
Processor core power failure
|
Panel replacement
|
Error
|
Battery
|
D201
|
Detection
|
Judgement
|
Battery connection or circuit failure
|
Panel replacement
|
Error
|
D202
|
Voltage
|
Information
|
N/A
|
N/A
|
-
|
D203
|
Remain
|
Information
|
N/A
|
N/A
|
-
|
Wireless
|
D301
|
Detection
|
Judgement
|
Wireless module failure
|
Panel replacement
|
Error
|
D302*
|
Connection
|
Judgement
|
SSID or key is mismatched between SCU and panel.
|
Check if the SSID and Key of SCU/panel are same.
|
Warning
|
Unsuitable wireless signal strength
|
Check the distance between SCU and panel.
|
-
|
Wireless LAN module failure
|
Panel replacement
|
Error
|
Sensor
|
D401
|
Impact Sensor
|
Judgement
|
Shock sensor failure
|
Panel replacement
|
Warning
|
D402
|
Temperature
|
Judgement
|
Temperature sensor failure
|
Panel replacement
|
Error
|
D403
|
AED
|
Judgement
|
AED sensor failure
|
Panel replacement
|
Error
|
Memory
|
D501
|
Detection
|
Judgement
|
Offset correction cannot be applied.
|
Panel replacement
|
Error
|
Backup image cannot be saved.
|
Panel replacement
|
-
|
Portable mode cannot be used.
|
Panel replacement
|
-
|
D502
|
File system
|
Judgement
|
Offset correction cannot be applied.
|
Panel replacement
|
Error
|
Backup image cannot be saved.
|
Panel replacement
|
-
|
Portable mode cannot be used.
|
Panel replacement
|
-
|
D503
|
Status
|
Information
|
N/A
|
-
|
-
|
IC
|
D601
|
FPGA
|
Judgement
|
Cannot perform the image acquisition.
|
Panel replacement
|
Error
|
D602
|
Fuel gauge
|
Judgement
|
Battery remain checking are not available.
|
Panel replacement
|
Error
|
D603
|
RTC
|
Judgement
|
Wrong time will be recorded on the exposure time in Portable mode.
|
Panel replacement
|
Warning
|
Wrong time will be recorded on the panel log file.
|
Panel replacement
|
-
|
11.3 Revision history
3.60
|
2015-05-22
|
Initial release
|
1.0.3.60
|
3.67
|
2015-08-10
|
C++ and C# documents combined
Updated
|
1.0.3.67
|
4.0
|
2015-09-14
|
VIVIX SDK update to 1.0.4.1
|
1.0.4.1
|
4.3
|
2015-09-21
|
VIVIX SDK update to 1.0.4.3
|
1.0.4.3
|
4.4
|
2015-10-20
|
VIVIX SDK update to 1.0.4.4
|
1.0.4.4
|
4.5
|
2016-01-11
|
VIVIX SDK update to 1.0.4.5
|
1.0.4.5
|
4.8
|
2016-02-18
|
VIVIX SDK update to 1.0.4.8
|
1.0.4.8
|
4.10
|
2016-04-07
|
VIVIX SDK update to 1.0.4.10
|
1.0.4.10
|
4.11
|
2016-07-05
|
VIVIX SDK update to 1.0.4.11
|
1.0.4.11
|
4.14
|
2016-10-31
|
VIVIX SDK update to 1.0.4.14
|
1.0.4.14
|
4.15
|
2016-11-23
|
VIVIX SDK update to 1.0.4.15
|
1.0.4.15
|
4.16
|
2017-01-03
|
VIVIX SDK update to 1.0.4.16
|
1.0.4.16
|
4.23
|
2017-04-12
|
VIVIX SDK update to 1.0.4.23
|
1.0.4.23
|
1.0.5
|
2017-08-16
|
VIVIX SDK update to 1.0.5
|
1.0.5
|
1.0.7
|
2017-12-18
|
VIVIX SDK update to 1.0.7
|
1.0.7
|
1.0.9
|
2018-05-30
|
VIVIX SDK update to 1.0.9
Changed the European agent address and contact information.
|
1.0.9
|
1.0.10
|
2018-06-12
|
VIVIX SDK update to 1.0.10
|
1.0.10
|
1.0.11
|
2018-09-18
|
VIVIX SDK update to 1.0.11
|
1.0.11
|
1.0.15
|
2019-03-06
|
VIVIX SDK update to 1.0.15
|
1.0.15
|
1.0.16
|
2019-05-14
|
VIVIX SDK update to 1.0.16
|
1.0.16
|
1.0.17
|
2019-12-16
|
VIVIX SDK update to 1.0.17
|
1.0.17
|
1.0.18
|
2020-01-30
|
VIVIX SDK update to 1.0.18
|
1.0.18
|
1.0.19
|
2020-07-21
|
VIVIX SDK update to 1.0.19
|
1.0.19
|
1.0.22
|
2020-08-27
|
VIVIX SDK update to 1.0.22
|
1.0.22
|
1.0.23
|
2020-11-17
|
VIVIX SDK update to 1.0.23
|
1.0.23
|
1.0.23
|
2021-12-01
|
Calibration API description updated.
|
1.0.23
|
1.0.25
|
2021-02-15
|
VIVIX-SDK update to 1.0.25
|
1.0.25
|
1.1.0
|
2021-10-18
|
VIVIX SDK update to 1.1.0
|
1.1.0
|
1.1.2
|
2022-01-18
|
VIVIX SDK update to 1.1.2
|
1.1.2
|
1.1.4
|
2021-03-21
|
VIVIX SDK update to 1.1.4
|
1.1.4
|
1.1.5
|
2022-06-10
|
VIVIX SDK update to 1.1.5
|
1.1.5
|
|
Vieworks Co., Ltd.
Headquarter
41-3, Burim-ro 170beon-gil, Dongan-gu, Anyang-si,
Gyeonggi-do, 14055 Republic of Korea
Telephone: +82-70-7011-6161
Fax: +82-31-386-8631
Homepage: http://www.vieworks.com
Hwaseong Site
25-7, Jeongnamsandan 2-gil, Jeongnam-myeon, Hwaseong-si,
Gyeonggi-do, 18514 Republic of Korea
Telephone: +82-70-7011-6161
Homepage: http://www.vieworks.com
|
|
European Authorized Representative: Obelis s.a
Bd. Général Wahis 53
1030 Brussels, BELGIUM
Tel: +(32) 2.732.59.54
Fax: +(32) 2.732.60.03
E-mail: mail@obelis.net
|