Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef _PHIDGET_H_
00019 #define _PHIDGET_H_
00020
00021 #include <string>
00022 #include <libphidgets/phidget21.h>
00023
00024 class Phidget
00025 {
00026 public:
00027 enum class SensingMode{EVENT=0, POLLING=1};
00028
00029 ~Phidget();
00030
00031 auto open(int serial_number) -> int;
00032 auto close(int serial_number) -> int;
00033 auto waitForAttachment(int timeout) -> int;
00034 auto getDeviceType() -> std::string;
00035 auto getDeviceName() -> std::string;
00036 auto getDeviceLabel() -> std::string;
00037 auto getLibraryVersion() -> std::string;
00038 auto getDeviceSerialNumber() -> int;
00039 auto getDeviceVersion() -> int;
00040
00041 virtual auto update() -> void;
00042
00043 static auto getErrorDescription(int errorCode) -> std::string;
00044
00045 protected:
00046 CPhidgetHandle* _phiHandle;
00047 int _serialNumber;
00048 int _last_error;
00049 SensingMode _sensMode;
00050
00051 Phidget(CPhidgetHandle * handle, SensingMode mode);
00052
00053 virtual auto attachHandler() -> int;
00054 virtual auto detachHandler() -> int;
00055 };
00056 #endif //_PHIDGET_H_