Pleora Technologies Inc. eBUS SDK v6.5.1.6797 API



PvSystem.h
1 // *****************************************************************************
2 //
3 // Copyright (c) 2008, Pleora Technologies Inc., All rights reserved.
4 //
5 // *****************************************************************************
6 
7 #ifndef __PVSYSTEM_H__
8 #define __PVSYSTEM_H__
9 
10 #include <PvSystemEventSink.h>
11 #include <PvNetworkAdapter.h>
12 #include <PvUSBHostController.h>
13 
14 
15 namespace PvSystemLib
16 {
17  class System;
18 }
19 
20 
26 
27 typedef struct {
28  PvString mName; // The textual session name
29  PvString mAddress; // The session connection address (an IPv4 address)
30  uint16_t mPort; // The session transport port
31  PvString mLocalAddress; // The local address on which the session was discovered
33 
34 
44 class PV_SYSTEM_API PvSystem
45 {
46 public:
47 
51  PvSystem();
52 
56  virtual ~PvSystem();
57 
68  PvResult Find();
69 
92  PvResult FindDevice( const PvString &aDeviceToFind, const PvDeviceInfo **aDeviceInfo );
93 
114  void SetDetectionTimeout( uint32_t aTimeout );
115 
129  uint32_t GetDetectionTimeout() const;
130 
136  void SetSubnetBroadcastEnabled( bool aValue );
137 
143  bool GetSubnetBroadcastEnabled() const;
144 
152  uint32_t GetGEVSupportedVersion() const;
153 
161  uint32_t GetU3VSupportedVersion() const;
162 
176  PvResult RegisterEventSink( PvSystemEventSink *aEventSink );
177 
190  PvResult UnregisterEventSink( PvSystemEventSink *aEventSink );
191 
197  uint32_t GetInterfaceCount() const;
198 
208  const PvInterface *GetInterface( uint32_t aIndex ) const;
209 
215  uint32_t GetDeviceCount() const;
216 
228  const PvDeviceInfo *GetDeviceInfo( uint32_t aIndex ) const;
229 
236  uint32_t DiscoverSessions() const;
237 
249  PvResult GetSessionInfo( uint32_t aIndex, PvSessionInfo &aSessionInfo ) const;
250 
251 protected:
252 
253 private:
254 
255  // Not implemented
256  PvSystem( const PvSystem & );
257  const PvSystem &operator=( const PvSystem & );
258 
259  PvSystemLib::System *mThis;
260 
261 };
262 
263 #endif
Information identifying a device.
Definition: PvDeviceInfo.h:27
Represents one interface (network adapter or USB host controller) on a system (the PC)
Definition: PvInterface.h:33
Result information.
Definition: PvResult.h:30
String class.
Definition: PvString.h:26
Observer interface for an observable PvSystem object.
Definition: PvSystemEventSink.h:40
Find interfaces (network adapters or USB host controllers) and devices reachable from this PC.
Definition: PvSystem.h:45
Describes a multimedia session (typically an RTP stream) discovered via SAP.
Definition: PvSystem.h:27

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