camcom 1.0.0-pre2
 
Loading...
Searching...
No Matches
camcom::genicam::GenICamEmulator Class Reference

#include <emulator.hpp>

Inheritance diagram for camcom::genicam::GenICamEmulator:
camcom::common::AdapterBase

Classes

struct  Impl
 

Public Member Functions

 GenICamEmulator ()
 
 ~GenICamEmulator () override
 
 GenICamEmulator (const GenICamEmulator &)=delete
 
GenICamEmulatoroperator= (const GenICamEmulator &)=delete
 
 GenICamEmulator (GenICamEmulator &&)=delete
 
GenICamEmulatoroperator= (GenICamEmulator &&)=delete
 
std::map< std::string, common::ParameterConnect () override
 
void Disconnect () override
 
common::CheckResult CheckConnection () const override
 
bool IsConnected () const override
 
std::string GetProtocol () const override
 Get the protocol name used by this adapter.
 
common::BasicParams GetBasicParams () const override
 Get basic camera parameters in standardized units. Adapters read their native parameters and convert to common units.
 
void ReceiveFrame (bool &received_frame, uint64_t max_size, std::span< uint8_t > &data, common::FrameInfo &frame_info) override
 
common::Parameter Read (const std::string &name) override
 Read a single parameter from the camera.
 
std::vector< common::ParameterRead (const std::vector< std::string > &names) override
 Read multiple parameters from the camera.
 
void Write (const common::Parameter &parameter) override
 Write a single parameter to the camera.
 
void Write (const std::vector< common::Parameter > &parameters) override
 
std::vector< common::ParameterScan () override
 Scan all available parameters from the camera Re-scans the device parameter space, updates the namespace repository, and returns all discovered parameters.
 
common::AcquisitionState GetAcquisitionState () const override
 Get the current acquisition state.
 
void StartAcquisition (std::optional< int64_t > frame_count=std::nullopt) override
 Start frame acquisition.
 
void StopAcquisition () override
 Stop frame acquisition.
 
- Public Member Functions inherited from camcom::common::AdapterBase
 AdapterBase ()
 
virtual ~AdapterBase ()
 
virtual void Initialise (const ReceiveCfg &cfg)
 
virtual void Write (const std::vector< Parameter > &parameters)=0
 Write multiple parameters to the camera.
 
virtual NativeDocument GetNativeParameterDocument () const
 Get native parameter document from camera (protocol-specific) For GenICam cameras, returns the XML register description. Default implementation returns empty NativeDocument (not supported).
 
void SetAddress (const std::string &address)
 Set the camera address/URI for connection.
 
void SetTimeout (double timeout_seconds)
 Set the connection timeout.
 

Additional Inherited Members

- Static Public Member Functions inherited from camcom::common::AdapterBase
static std::string ResolveAddress (const std::string &address, bool allow_device_id=false)
 
- Protected Attributes inherited from camcom::common::AdapterBase
const std::chrono::duration< double_t > m_connect_timeout {std::chrono::seconds(10)}
 
std::string m_cam_address
 
std::chrono::duration< double_t > m_timeout
 
bool m_initialised {false}
 
std::chrono::time_point< std::chrono::system_clock > m_time_last_stop {common::TimeNow()}
 
std::chrono::time_point< std::chrono::system_clock > m_time_last_frame_recv {m_time_last_stop}
 
bool m_waiting_for_frame {false}
 

Constructor & Destructor Documentation

◆ GenICamEmulator() [1/3]

camcom::genicam::GenICamEmulator::GenICamEmulator ( )

◆ ~GenICamEmulator()

camcom::genicam::GenICamEmulator::~GenICamEmulator ( )
override

◆ GenICamEmulator() [2/3]

camcom::genicam::GenICamEmulator::GenICamEmulator ( const GenICamEmulator & )
delete

◆ GenICamEmulator() [3/3]

camcom::genicam::GenICamEmulator::GenICamEmulator ( GenICamEmulator && )
delete

Member Function Documentation

◆ CheckConnection()

common::CheckResult camcom::genicam::GenICamEmulator::CheckConnection ( ) const
overridevirtual

◆ Connect()

std::map< std::string, common::Parameter > camcom::genicam::GenICamEmulator::Connect ( )
overridevirtual

◆ Disconnect()

void camcom::genicam::GenICamEmulator::Disconnect ( )
overridevirtual

◆ GetAcquisitionState()

common::AcquisitionState camcom::genicam::GenICamEmulator::GetAcquisitionState ( ) const
overridevirtual

Get the current acquisition state.

Returns
AcquisitionState with mode, remaining frames (if finite), and current FPS

Implements camcom::common::AdapterBase.

◆ GetBasicParams()

common::BasicParams camcom::genicam::GenICamEmulator::GetBasicParams ( ) const
overridevirtual

Get basic camera parameters in standardized units. Adapters read their native parameters and convert to common units.

Returns
BasicParams struct with timing, geometry, and buffer info

Implements camcom::common::AdapterBase.

◆ GetProtocol()

std::string camcom::genicam::GenICamEmulator::GetProtocol ( ) const
inlineoverridevirtual

Get the protocol name used by this adapter.

Returns
Protocol identifier string (e.g., "CamComSim", "GenICam", "CameraLink")

Implements camcom::common::AdapterBase.

◆ IsConnected()

bool camcom::genicam::GenICamEmulator::IsConnected ( ) const
overridevirtual

◆ operator=() [1/2]

GenICamEmulator & camcom::genicam::GenICamEmulator::operator= ( const GenICamEmulator & )
delete

◆ operator=() [2/2]

GenICamEmulator & camcom::genicam::GenICamEmulator::operator= ( GenICamEmulator && )
delete

◆ Read() [1/2]

common::Parameter camcom::genicam::GenICamEmulator::Read ( const std::string & name)
overridevirtual

Read a single parameter from the camera.

Parameters
nameName of the parameter to read
Returns
Parameter object with current value from camera
Exceptions
std::runtime_errorif parameter not found or read fails

Implements camcom::common::AdapterBase.

◆ Read() [2/2]

std::vector< common::Parameter > camcom::genicam::GenICamEmulator::Read ( const std::vector< std::string > & names)
overridevirtual

Read multiple parameters from the camera.

Parameters
namesVector of parameter names to read
Returns
Vector of Parameter objects with current values from camera
Exceptions
std::runtime_errorif any parameter not found or read fails

Implements camcom::common::AdapterBase.

◆ ReceiveFrame()

void camcom::genicam::GenICamEmulator::ReceiveFrame ( bool & received_frame,
uint64_t max_size,
std::span< uint8_t > & data,
common::FrameInfo & frame_info )
overridevirtual

◆ Scan()

std::vector< common::Parameter > camcom::genicam::GenICamEmulator::Scan ( )
overridevirtual

Scan all available parameters from the camera Re-scans the device parameter space, updates the namespace repository, and returns all discovered parameters.

Returns
Vector of all available parameters with current values

Implements camcom::common::AdapterBase.

◆ StartAcquisition()

void camcom::genicam::GenICamEmulator::StartAcquisition ( std::optional< int64_t > frame_count = std::nullopt)
overridevirtual

Start frame acquisition.

Parameters
frame_countNumber of frames to acquire, or std::nullopt for continuous
  • std::nullopt: Continuous mode (stream until StopAcquisition)
  • value > 0: Finite mode (acquire exactly N frames then stop)

Implements camcom::common::AdapterBase.

◆ StopAcquisition()

void camcom::genicam::GenICamEmulator::StopAcquisition ( )
overridevirtual

Stop frame acquisition.

Implements camcom::common::AdapterBase.

◆ Write() [1/2]

void camcom::genicam::GenICamEmulator::Write ( const common::Parameter & parameter)
overridevirtual

Write a single parameter to the camera.

Parameters
parameterParameter object containing name, value, and type to write
Exceptions
std::runtime_errorif parameter not found or write fails

Implements camcom::common::AdapterBase.

◆ Write() [2/2]

void camcom::genicam::GenICamEmulator::Write ( const std::vector< common::Parameter > & parameters)
override

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