CVB++ 15.1
Loading...
Searching...
No Matches

Specialized server class for GigE Vision 3.0 servers. More...

#include <decl_server_gev3.hpp>

Inherits ServerBase.

Public Member Functions

void * Handle () const noexcept override
 Returns the internal handle of this server object.
 
void RegisterFlowSetPool (const GenDcDescriptor &descriptor, FlowSetPoolPtr flowSetPool, std::function< void()> onFlowSetRelease)
 Registers a flow set pool with the server. Uses a callback that will be called when the flow set pool is released. callback will be called on the same thread as the flow set pool is released. this is useful to clean up resources that are associated with the flow set pool.
 
size_t GetRegisteredFlowSetPoolSize () const noexcept
 Gets the size of the registered flow set pool.
 
std::vector< FlowInfoGetRegisteredFlowSetInfo () const noexcept
 Gets the registered flow set information about the count and size of the flows.
 
StreamGev3Ptr Stream () const
 Gets the Cvb::GevServer::StreamGev3 for sending GenDC data.
 
- Public Member Functions inherited from ServerBase
virtual GevServer::State State ()
 Gets the the current state this server is in.
 
virtual GevServer::DriverType DriverType ()
 Gets the GigE Vision driver used by this server object.
 
virtual String UserVersion () const
 Gets the user defined version that is appended to the device version.
 
virtual void SetUserVersion (const String &value)
 Sets the user defined version that is appended to the device version.
 
virtual Cvb::NetworkConnection LocalEndpoint () const
 Gets the local end point this server is bound to.
 
virtual Cvb::NetworkConnection RemoteEndpoint () const
 Gets the remote end point this server is connected to.
 
virtual NodeMapPtr NodeMap () const
 Returns the GenApi node map of this server.
 
virtual void Start (const Cvb::NetworkConnection::IPAddress &address)
 Starts this server and binds it to the given address .
 
virtual void Start (const Cvb::NetworkConnection::IPAddressUInt &address)
 Starts this server and binds it to the given address .
 
virtual void Stop ()
 Stops this server.
 

Static Public Member Functions

static ServerGev3Ptr Create (GevServer::DriverType driverType)
 Creates a new ServerGev3 object with a client configurable payload in the format of GenDC.
 
template<class T>
static ServerGev3Ptr FromHandle (HandleGuard< ServerGev3 > &&guard)
 Creates a shared pointer to a ServerGev3 instance from a given handle guard.
 

Detailed Description

Specialized server class for GigE Vision 3.0 servers.

Member Function Documentation

◆ Create()

ServerGev3Ptr Create ( GevServer::DriverType driverType)
inlinestatic

Creates a new ServerGev3 object with a client configurable payload in the format of GenDC.

Pay attention that the GenDC descriptor must be created with the same sizes and alignments as the flow set pool. The passed GenDcDescriptor must match the FlowSetPools properties and will be used as prefetch desriptor.

Parameters
descriptorGenDcDescriptor to use.
poolFlowSetPool to use.
driverTypeThe DriverType to use.
releaseCallbackA callback that will be called when the flow set pool is released.
Returns
Newly created server object in State::Configuration state.

◆ FromHandle()

template<class T>
static ServerGev3Ptr FromHandle ( HandleGuard< ServerGev3 > && guard)
inlinestatic

Creates a shared pointer to a ServerGev3 instance from a given handle guard.

Template Parameters
TThe type parameter for the server handle guard (typically Server).
Parameters
guardA HandleGuard<Server> rvalue reference representing the server handle to wrap.
Returns
A shared pointer to a ServerGev3 instance constructed from the provided handle guard.

◆ GetRegisteredFlowSetInfo()

std::vector< FlowInfo > GetRegisteredFlowSetInfo ( ) const
inlinenoexcept

Gets the registered flow set information about the count and size of the flows.

Returns
Vector of FlowInfo objects describing the registered flow set pool.

◆ GetRegisteredFlowSetPoolSize()

size_t GetRegisteredFlowSetPoolSize ( ) const
inlinenoexcept

Gets the size of the registered flow set pool.

Returns
Size of the registered flow set pool.

◆ Handle()

void * Handle ( ) const
inlineoverridevirtualnoexcept

Returns the internal handle of this server object.

Returns

Implements ServerBase.

◆ RegisterFlowSetPool()

void RegisterFlowSetPool ( const GenDcDescriptor & descriptor,
FlowSetPoolPtr flowSetPool,
std::function< void()> onFlowSetRelease )
inline

Registers a flow set pool with the server. Uses a callback that will be called when the flow set pool is released. callback will be called on the same thread as the flow set pool is released. this is useful to clean up resources that are associated with the flow set pool.

Parameters
descriptorGenDcDescriptor to use.
flowSetPoolFlowSetPool to use.
onFlowSetReleaseCallback to call when the flow set pool is released.