SeaBreeze
OOIUSBInterface.h
Go to the documentation of this file.
1 /***************************************************/
30 #ifndef OOIUSBINTERFACE_H
31 #define OOIUSBINTERFACE_H
32 
37 
38 #define OCEAN_OPTICS_USB_VID 0x2457
39 
40 namespace seabreeze {
41 
43  public:
45  virtual ~OOIUSBInterface();
46 
47  int getProductID();
48  int getVendorID();
49 
50  /* Inherited from Bus */
51  virtual TransferHelper *getHelper(const std::vector<ProtocolHint *> &hints) const;
52  virtual void setLocation(const DeviceLocatorInterface &location) throw (IllegalArgumentException);
53  virtual bool open();
54  virtual void close();
55 
56  /* Inherited from DeviceLocationProberInterface */
57  virtual std::vector<DeviceLocatorInterface *> *probeDevices();
58 
59  protected:
60  void addHelper(ProtocolHint *hint, TransferHelper *helper);
61  void clearHelpers();
62 
63  int vendorID;
64  int productID;
65 
66  /* These vectors should really be in a map, but that didn't want to
67  * work easily. Since there will likely be about 2 entries in here,
68  * storing in a pair of vectors for now won't hurt anything.
69  */
70  std::vector<ProtocolHint *> helperKeys;
71  std::vector<TransferHelper *> helperValues;
72  };
73 
74 }
75 
76 #endif /* OOIUSBINTERFACE_H */
Definition: DeviceLocatorInterface.h:47
Definition: DeviceLocationProberInterface.h:42
Definition: TransferHelper.h:46
Definition: OOIUSBInterface.h:42
Definition: ProtocolHint.h:44
Encapsulates all SeaBreeze classes.
Definition: DeviceFactory.h:42
Definition: IllegalArgumentException.h:43
Definition: USBInterface.h:46