Classes | Public Member Functions | Protected Member Functions | List of all members
XDriver Class Referenceabstract

Base class for all instrument drivers. More...

#include <driver.h>

Inheritance diagram for XDriver:
Inheritance graph
[legend]

Classes

struct  Payload
 
struct  XBufferUnderflowRecordError
 The size of the raw record is not enough to continue analyzing. More...
 
struct  XRecordError
 
struct  XSkippedRecordError
 Throwing this exception will skip signal emission, assuming record is kept valid. More...
 

Public Member Functions

 XDriver (const char *name, bool runtime, Transaction &tr_meas, const shared_ptr< XMeasure > &meas)
 
virtual void showForms ()=0
 Shows all forms belonging to the driver.
 
- Public Member Functions inherited from XNode
 XNode (const char *name, bool runtime=false)
 
template<class T >
shared_ptr< T > create (const char *name)
 
template<class T , typename... Args>
shared_ptr< T > create (const char *name, bool runtime, Args &&...args)
 
template<class T >
shared_ptr< T > create (Transaction &tr, const char *name)
 
template<class T , typename... Args>
shared_ptr< T > create (Transaction &tr, const char *name, bool runtime, Args &&...args)
 
XString getName () const
 
virtual XString getLabel () const
 
XString getTypename () const
 
shared_ptr< XNodegetChild (const XString &var) const
 
shared_ptr< XNodegetParent () const
 
void setUIEnabled (bool v)
 Enables/disables controls over scripting/GUI.
 
void disable ()
 Disables all scripting/GUI operations on this node hereafter.
 
- Public Member Functions inherited from Transactional::Node< XNode >
bool insert (Transaction< XNode > &tr, const shared_ptr< XNode > &var, bool online_after_insertion=false)
 
void insert (const shared_ptr< XNode > &var)
 
bool release (Transaction< XNode > &tr, const shared_ptr< XNode > &var)
 
void release (const shared_ptr< XNode > &var)
 
void releaseAll ()
 
bool swap (Transaction< XNode > &tr, const shared_ptr< XNode > &x, const shared_ptr< XNode > &y)
 
void swap (const shared_ptr< XNode > &x, const shared_ptr< XNode > &y)
 
XNodeupperNode (Snapshot< XNode > &shot)
 Finds the parent node in shot.
 
Snapshot< XNodeiterate_commit (Closure)
 
Snapshot< XNodeiterate_commit_if (Closure)
 
void iterate_commit_while (Closure)
 
void print_ () const
 
 Node (const Node &)=delete
 
Nodeoperator= (const Node &)=delete
 

Protected Member Functions

virtual void visualize (const Snapshot &shot)=0
 
void record (Transaction &tr, const XTime &time_awared, const XTime &time_recorded)
 

Additional Inherited Members

- Public Types inherited from Transactional::Node< XNode >
using NodeNotFoundError = std::domain_error
 
using NodeList = fast_vector< shared_ptr< XNode >, 2 >
 
using iterator = typename NodeList::iterator
 
using const_iterator = typename NodeList::const_iterator
 
- Static Public Member Functions inherited from XNode
template<class T__ >
static shared_ptr< T__ > createOrphan (const char *name)
 
template<class T__ , typename... Args_>
static shared_ptr< T__ > createOrphan (const char *name, bool runtime, Args_ &&...args)
 

Detailed Description

Base class for all instrument drivers.

Definition at line 30 of file driver.h.

Member Function Documentation

void XDriver::record ( Transaction tr,
const XTime time_awared,
const XTime time_recorded 
)
protected

Sets time stamps.

See Also
time(), timeAwared()

Definition at line 48 of file driver.cpp.

Referenced by XPrimaryDriver::finishWritingRaw().

virtual void XDriver::visualize ( const Snapshot shot)
protectedpure virtual

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

Generated for KAME4 by  doxygen 1.8.3