Version 8.9.0
 
Loading...
Searching...
No Matches
evo::IRDeviceDS Class Reference

DirectShow device interface (Windows platforms) More...

#include <IRDeviceDS.h>

Inheritance diagram for evo::IRDeviceDS:
Inheritance graph
Collaboration diagram for evo::IRDeviceDS:
Collaboration graph

Public Member Functions

 ~IRDeviceDS ()
 Destructor.
 
int startStreaming ()
 Start video streaming. More...
 
int stopStreaming ()
 Stop video streaming. More...
 
const char * getFriendlyName ()
 Get readable name of attached device. More...
 
virtual void run ()
 Run device, i.e., treat main thread in blocking mode. More...
 
virtual void exit ()
 Exit blocking run method, if previously called.
 
bool isOpen ()
 Check if device was already opened. More...
 
virtual IRDeviceError getFrame (unsigned char *buffer, double *timestamp=NULL, int timeoutMilliseconds=-1)
 Acquire one frame. More...
 

Static Public Member Functions

static IRDeviceDScreateInstance (IRDeviceParams &params)
 Factory method. More...
 
static bool findSerial (unsigned long &query, unsigned int skipNResults=0)
 Determine serial number of attached device(s) More...
 

Friends

class CallbackHandler
 

Detailed Description

DirectShow device interface (Windows platforms)

Author
Stefan May, Helmut Engelhardt (Evocortex GmbH), Matthias Wiedemann (Optris GmbH)

Member Function Documentation

◆ createInstance()

static IRDeviceDS * evo::IRDeviceDS::createInstance ( IRDeviceParams params)
static

Factory method.

Parameters
[in]paramsdevice parameters

◆ findSerial()

static bool evo::IRDeviceDS::findSerial ( unsigned long &  query,
unsigned int  skipNResults = 0 
)
static

Determine serial number of attached device(s)

Parameters
[in]serialSerial number (pass 0 to search for serial of an attached device, pass serial to search for a specific device).
[in]skipSkips the first n results. Use this to detect multiple devices.
Returns
success flag

◆ getFrame()

virtual IRDeviceError evo::IRDeviceDS::getFrame ( unsigned char *  buffer,
double *  timestamp = NULL,
int  timeoutMilliseconds = -1 
)
virtual

Acquire one frame.

Parameters
bufferimage data
timestamppoint of time at arrival
[in]timeoutMillisecondstimeout in milliseconds, -1 to use device frequency * 2, 0 = no timeout

◆ getFriendlyName()

const char * evo::IRDeviceDS::getFriendlyName ( )

Get readable name of attached device.

Returns
name of device type

◆ isOpen()

bool evo::IRDeviceDS::isOpen ( )

Check if device was already opened.

Returns
state (open / closed)

◆ run()

virtual void evo::IRDeviceDS::run ( )
virtual

Run device, i.e., treat main thread in blocking mode.

The data stream is not influence by this method. It is implemented for the user's convenience, if the main thread is desired to be occupied. User do not need to call this method, if they want to use their own idle loop.

◆ startStreaming()

int evo::IRDeviceDS::startStreaming ( )

Start video streaming.

Returns
success==true

◆ stopStreaming()

int evo::IRDeviceDS::stopStreaming ( )

Stop video streaming.

Returns
success==true

The documentation for this class was generated from the following file: