Pleora Technologies Inc. eBUS SDK v6.2.8.5877 API



PvDeviceInfoU3V.h
1 // *****************************************************************************
2 //
3 // Copyright (c) 2013, Pleora Technologies Inc., All rights reserved.
4 //
5 // *****************************************************************************
6 
7 #ifndef __PVDEVICEINFOU3V_H__
8 #define __PVDEVICEINFOU3V_H__
9 
10 #include <PvDeviceInfoUSB.h>
11 
12 
13 class PV_SYSTEM_API PvDeviceInfoU3V : public PvDeviceInfoUSB
14 {
15 public:
16 
18  virtual ~PvDeviceInfoU3V();
19 
21 
22  uint32_t GetGenCPVersion() const;
23  uint32_t GetU3VVersion() const;
24 
25  PvString GetDeviceGUID() const;
26  PvString GetFamilyName() const;
27  PvString GetU3VSerialNumber() const;
28  PvString GetDevicePath() const;
29  PvString GetDeviceKey() const;
30  PvString GetSpeedMessage() const;
31  PvString GetPowerMessage() const;
32 
33  bool IsLowSpeedSupported() const;
34  bool IsFullSpeedSupported() const;
35  bool IsHighSpeedSupported() const;
36  bool IsSuperSpeedSupported() const;
37  bool IsCurrentSpeedSupported() const;
38 
39  PvUSBSpeed GetSpeed() const;
40 
41  uint32_t GetMaxPower() const;
42  uint32_t GetMaxPacketSize() const;
43 
44  bool IsPleoraDriverInstalled() const;
45  bool IsInitializedCapabilities() const;
46 
47 protected:
48 
49 #ifndef PV_GENERATING_DOXYGEN_DOC
50 
51  PvDeviceInfoU3V( PvInterface *aInterface );
52 
53  void Init();
54 
55  void SetGenCPVersion( uint32_t aValue ) { mGenCPVersion = aValue; }
56  void SetU3VVersion( uint32_t aValue ) { mU3VVersion = aValue; }
57 
58  void SetDeviceGUID( const std::string &aValue ) { *mDeviceGUID = aValue; }
59  void SetFamilyName( const std::string &aValue ) { *mFamilyName = aValue; }
60  void SetU3VSerialNumber( const std::string &aValue ) { *mU3VSerialNumber = aValue; }
61  void SetDevicePath( const std::string &aValue ) { *mDevicePath = aValue; }
62  void SetDeviceKey( const std::string &aValue ) { *mDeviceKey = aValue; }
63  void SetSpeedMessage( const std::string &aValue ) { *mSpeedMessage = aValue; }
64  void SetPowerMessage( const std::string &aValue ) { *mPowerMessage = aValue; }
65 
66  void SetLowSpeedSupported( bool aValue ) { mLowSpeedSupported = aValue; }
67  void SetFullSpeedSupported( bool aValue ) { mFullSpeedSupported = aValue; }
68  void SetHighSpeedSupported( bool aValue ) { mHighSpeedSupported = aValue; }
69  void SetSuperSpeedSupported( bool aValue ) { mSuperSpeedSupported = aValue; }
70  void SetCurrentSpeedSupported( bool aValue ) { mCurrentSpeedSupported = aValue; }
71 
72  void SetSpeed( PvUSBSpeed aValue ) { mSpeed = aValue; }
73 
74  void SetMaxPower( uint32_t aValue ) { mMaxPower = aValue; }
75  void SetMaxPacketSize( uint32_t aValue ) { mMaxPacketSize = aValue; }
76 
77  void SetPleoraDriverInstalled( bool aValue ) { mPleoraDriverInstalled = aValue; }
78  void SetInitializedCapabilities( bool aValue ) { mInitializedCapabilities = aValue; }
79 
80 #endif // PV_GENERATING_DOXYGEN_DOC
81 
82 private:
83 
84  // Not implemented
86 
87  uint32_t mGenCPVersion;
88  uint32_t mU3VVersion;
89 
90  std::string *mDeviceGUID;
91  std::string *mFamilyName;
92  std::string *mU3VSerialNumber;
93  std::string *mDevicePath;
94  std::string *mDeviceKey;
95  std::string *mSpeedMessage;
96  std::string *mPowerMessage;
97 
98  bool mLowSpeedSupported;
99  bool mFullSpeedSupported;
100  bool mHighSpeedSupported;
101  bool mSuperSpeedSupported;
102  bool mCurrentSpeedSupported;
103  bool mInitializedCapabilities;
104 
105  PvUSBSpeed mSpeed;
106 
107  uint32_t mMaxPower;
108  uint32_t mMaxPacketSize;
109 
110  bool mPleoraDriverInstalled;
111 
112 };
113 
114 #endif
PvInterface
Represents one interface (network adapter or USB host controller) on a system (the PC)
Definition: PvInterface.h:25
PvDeviceInfoUSB::operator=
PvDeviceInfoUSB & operator=(const PvDeviceInfoUSB &)
Equal operator: copies the object.
Definition: PvDeviceInfoUSB.cpp:64
PvString
String class.
Definition: PvString.h:21
PvDeviceInfoUSB
Information about a generic USB device.
Definition: PvDeviceInfoUSB.h:13
PvDeviceInfoU3V
Information about a USB3 Vision device.
Definition: PvDeviceInfoU3V.h:13
PvUSBSpeed
PvUSBSpeed
The speed grade of the USB device or interface.
Definition: PvSystemEnums.h:58

Copyright (c) 2002-2021 Pleora Technologies Inc.
www.pleora.com