xentara-plugin v1.2.1
The Xentara Plugin Framework
Loading...
Searching...
No Matches
xentara::io::IoBatchClass Class Referenceabstract

A class of I/O batch that a driver supports. More...

#include <io/IoBatchClass.hpp>

Public Member Functions

virtual internal ~IoBatchClass ()=0
 Virtual destructor.
 
virtual auto name () const -> std::string_view=0
 Gets the name of the I/O batch class.
 
virtual auto uuid () const -> utils::core::Uuid=0
 Gets the UUID of the I/O batch class.
 
auto nameHandle () const noexcept -> memory::Array::ObjectHandle< std::string >
 Gets an array handle to the name of an I/O batch.
 
auto primaryKeyHandle () const noexcept -> memory::Array::ObjectHandle< std::string >
 Gets an array handle to the primary key of an I/O batch.
 
auto uuidHandle () const noexcept -> memory::Array::ObjectHandle< utils::core::Uuid >
 Gets an array handle to the UUID of an I/O batch.
 

Static Public Attributes

Standard Names
static const std::string_view kBatch
 The standard name for a generic batch.
 
static const std::string_view kGroup
 The standard name for a generic group.
 
static const std::string_view kQuery
 The standard name for a query.
 
static const std::string_view kPoll
 The standard name for a poll.
 
static const std::string_view kCommand
 The standard name for a command.
 
static const std::string_view kBatchCommand
 The standard name for a batch command.
 
static const std::string_view kTransaction
 The standard name for a transaction.
 
static const std::string_view kAcquisition
 The standard name for an acquisition.
 

Protected Member Functions

auto config () -> memory::Array &
 Gets the array object used for the configuration attributes.
 

Detailed Description

A class of I/O batch that a driver supports.

See also
xentara::io::IoBatch
I/O Batch Classes

Constructor & Destructor Documentation

◆ ~IoBatchClass()

xentara::io::IoBatchClass::~IoBatchClass ( )
pure virtualdefault

Virtual destructor.

Member Function Documentation

◆ config()

auto xentara::io::IoBatchClass::config ( ) -> memory::Array &
protected

Gets the array object used for the configuration attributes.

This function returns the object that the framework will be using to allocate the memory block that contains the configuration attributes. You can call this function in the constructor to add confioguration attributes of your own.

You do not need to add the entire configuration of the I/O batchs to this array, only the configuration parameters you intend to publish as Xentara attributes.

See also
Publishing Config Parameters as Xentara Attributes

◆ name()

virtual auto xentara::io::IoBatchClass::name ( ) const -> std::string_view
pure virtual

Gets the name of the I/O batch class.

To keep naming conventions as consistent as possible between drivers, Xentara provides a set of predefined type names. All things being equal, you should prefer using one of the predefines names. If the documentation, the specification, or common usage for your I/O method use different nomenclature, however, you should prefer that over the standard names.

Returns
The name of the class, in UTF-8 encoding.

◆ nameHandle()

auto xentara::io::IoBatchClass::nameHandle ( ) const -> memory::Array::ObjectHandle< std::string >
noexcept

Gets an array handle to the name of an I/O batch.

Note
Since the name of the I/O batch is part of its configuration, the returned handle should only be used once the I/O batch’s configuration has been fully loaded.
Returns
A handle to the I/O batch’s name in UTF-8 encoding.

◆ primaryKeyHandle()

auto xentara::io::IoBatchClass::primaryKeyHandle ( ) const -> memory::Array::ObjectHandle< std::string >
noexcept

Gets an array handle to the primary key of an I/O batch.

Note
Since the primary key is only fully known once the configuration has been completely loaded, the returned handle should not be used to get the I/O batch’s key during loading. Specifically, the returned handle should not be used from within loadConfig().
Returns
A handle to the I/O batch’s primary key in UTF-8 encoding.

◆ uuid()

virtual auto xentara::io::IoBatchClass::uuid ( ) const -> utils::core::Uuid
pure virtual

Gets the UUID of the I/O batch class.

◆ uuidHandle()

auto xentara::io::IoBatchClass::uuidHandle ( ) const -> memory::Array::ObjectHandle< utils::core::Uuid >
noexcept

Gets an array handle to the UUID of an I/O batch.

Note
Since the UUID of the I/O batch is part of its configuration, this function should only be called once the I/O batch’s configuration has been fully loaded.

Member Data Documentation

◆ kAcquisition

const std::string_view xentara::io::IoBatchClass::kAcquisition
static

The standard name for an acquisition.

◆ kBatch

const std::string_view xentara::io::IoBatchClass::kBatch
static

The standard name for a generic batch.

◆ kBatchCommand

const std::string_view xentara::io::IoBatchClass::kBatchCommand
static

The standard name for a batch command.

◆ kCommand

const std::string_view xentara::io::IoBatchClass::kCommand
static

The standard name for a command.

◆ kGroup

const std::string_view xentara::io::IoBatchClass::kGroup
static

The standard name for a generic group.

◆ kPoll

const std::string_view xentara::io::IoBatchClass::kPoll
static

The standard name for a poll.

◆ kQuery

const std::string_view xentara::io::IoBatchClass::kQuery
static

The standard name for a query.

◆ kTransaction

const std::string_view xentara::io::IoBatchClass::kTransaction
static

The standard name for a transaction.