ddt 1.4.0
 
Loading...
Searching...
No Matches
ddt::DdtSubscriber Class Reference

#include <ddtSubscriber.hpp>

Inheritance diagram for ddt::DdtSubscriber:
ddt::DdtDataSubscriberApplication

Classes

struct  SignalConnection
 

Public Member Functions

 DdtSubscriber ()
 
 ~DdtSubscriber () final
 
ddt::InitCodes Init (int argc, char *argv[])
 
ddt::InitCodes Init (const std::vector< std::string > &args)
 
int Run () final
 
int RunTransfer ()
 
void Stop ()
 
SignalConnection ConnectNewImage (std::function< void()> callback)
 
::cpl_image * GetCurrentImageCopy ()
 
uintptr_t GetCurrentImageCopyAsRawPtr ()
 
- Public Member Functions inherited from ddt::DdtDataSubscriberApplication
 DdtDataSubscriberApplication ()=default
 
virtual ~DdtDataSubscriberApplication ()=default
 

Detailed Description

This class provides the subscriber functionality.

Constructor & Destructor Documentation

◆ DdtSubscriber()

DdtSubscriber::DdtSubscriber ( )

Constructor

◆ ~DdtSubscriber()

DdtSubscriber::~DdtSubscriber ( )
final

Destructor

Member Function Documentation

◆ ConnectNewImage()

ddt::DdtSubscriber::SignalConnection DdtSubscriber::ConnectNewImage ( std::function< void()> callback)

Callback for new image signal. The provided callback is invoked each time a new image is available.

Parameters
callbackCallback function to be invoked when a new image is available.
Returns
A SignalConnection handle for managing lifetime of the boost signal connection.

◆ GetCurrentImageCopy()

cpl_image * DdtSubscriber::GetCurrentImageCopy ( )

◆ GetCurrentImageCopyAsRawPtr()

uintptr_t DdtSubscriber::GetCurrentImageCopyAsRawPtr ( )

◆ Init() [1/2]

ddt::InitCodes DdtSubscriber::Init ( const std::vector< std::string > & args)

Python-friendly initialization method.

Parameters
argsCommand-line arguments (first element is the program name).

◆ Init() [2/2]

ddt::InitCodes ddt::DdtSubscriber::Init ( int argc,
char * argv[] )

Initialization method.

Parameters
argcNumber of arguments.
argvArray that contains arguments.

◆ Run()

int DdtSubscriber::Run ( )
finalvirtual

Main method of the application

Returns
1 if something went wrong otherwise 0

Implements ddt::DdtDataSubscriberApplication.

◆ RunTransfer()

int DdtSubscriber::RunTransfer ( )

Main method of the application for image transfer

Returns
1 if something went wrong otherwise 0

◆ Stop()

void DdtSubscriber::Stop ( )

Request the simulator to stop. Can be called from any thread (e.g. from Python) to terminate the Run/RunTransfer loop without relying on Unix signals.


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