TOBI SignalServer  0.1
tobiss::DataQ Class Reference

This class is used to gain access to DataQ DAQ devices. More...

#include <dataq.h>

+ Inheritance diagram for tobiss::DataQ:
+ Collaboration diagram for tobiss::DataQ:

Public Member Functions

 DataQ (ticpp::Iterator< ticpp::Element > hw)
 Destructor.
virtual ~DataQ ()
 Destructor.
virtual SampleBlock< double > getSyncData ()
 Abstract method to achieve synchronous data acquisition (method is blocking).
virtual SampleBlock< double > getAsyncData ()
 Abstract method to achieve asynchronous data acquisition (method is non-blocking).
virtual void run ()
 Method to start data acquisition.
virtual void stop ()
 Method to stop data acquisition.

Private Member Functions

virtual void setDeviceSettings (ticpp::Iterator< ticpp::Element >const &father)
 Set configuration defined in the device settings xml section.
virtual void setChannelSettings (ticpp::Iterator< ticpp::Element >const &father)
 Set configuration defined in the channel settings xml section.
void setHardware (ticpp::Iterator< ticpp::Element >const &hw)
 Initialize the g.Mobilab device.
void setDeviceRange (ticpp::Iterator< ticpp::Element >const &father)
void setDeviceBipolar (ticpp::Iterator< ticpp::Element >const &father)
void setChannelBipolar (ticpp::Iterator< ticpp::Element >const &father)
void setChannelRange (ticpp::Iterator< ticpp::Element >const &father)
int checkErrorCode (int error_code, bool throw_on_error)
void printDataQInfo ()
int openDev (bool throw_on_error)
int closeDev (bool throw_on_error)
int startAcqu (bool throw_on_error)
int stopAcqu (bool throw_on_error)
void setInList ()
void setDaqMode ()
double getVoltageValue (short val, boost::uint16_t ch_nr)
void acquireData ()
void checkBiploarConfig ()
void checkChannels ()

Private Attributes

boost::thread * acq_thread_
DataQWrapperdataq_dev_ptr_
unsigned int dev_nr_
short * dev_buffer_
bool device_opened_
bool acqu_running_
double burst_rate_count_
unsigned int last_pos_
di_inlist_structinlist_ptr_
di_info_struct info_
di_mode_struct mode_
 master, slave or aperiodic
std::vector< bool > bipolar_list_
std::vector< unsigned int > gain_index_
std::vector< double > v_max_
std::vector< double > v_min_
DataBuffer< short > buffer_
boost::asio::io_service io_service_
boost::asio::deadline_timer sleep_timer_
boost::posix_time::microseconds sleep_time_
boost::system::error_code error_
int sample_count_

Static Private Attributes

static const
HWThreadBuilderTemplateRegistratorWithoutIOService
< DataQ
factory_registrator_
static const unsigned int DMA_IN_SIZ = 0xF000
static const unsigned int RING_BUFFER_SIZE = 512
static const std::string hw_dataq_range_
static const std::string hw_dataq_bipolar_
static const std::string hw_dataq_value_

Detailed Description

This class is used to gain access to DataQ DAQ devices.

Definition at line 61 of file dataq.h.


The documentation for this class was generated from the following files:
 All Data Structures Files Functions Variables