Scanframe Modular Application 0.1.0
Loading...
Searching...
No Matches
sf::StorageServer Class Reference

Storage server. More...

#include <StorageServer.h>

Inheritance diagram for sf::StorageServer:
Collaboration diagram for sf::StorageServer:

Public Member Functions

 StorageServer (id_type deviceNumber, const std::string &serverName={})
 Constructor.
 
 ~StorageServer ()
 Destructor.
 
std::string getServerName () const
 Gets the name given at the constructor.
 
bool createImplementation (const std::string &name)
 Creates an attached implementation by name.
 
std::string getImplementationName () const
 Gets the name of the current implementation.
 
void destroyImplementation ()
 Destroys the created implementation.
 
StorageInterfacegetImplementation ()
 Gets a pointer to the current acquisition implementation.
 
- Public Member Functions inherited from sf::InformationTypes
template<typename T >
constexpr std::enable_if_t<(sizeof(T)<=sizeof(data_type)), data_typetoDataType (T value) const
 Casts any type to a data_type value.
 
template<typename T >
constexpr std::enable_if_t<(sizeof(T)<=sizeof(data_type)), T > fromDataType (data_type value) const
 Casts a data_type value to a given type.
 

Protected Member Functions

bool createImplementation (int index)
 Creates the implementation of index on the registered implementations.
 
void createInterface ()
 Create interface parameters at construction once.
 
void destroyInterface ()
 Remove all parameters and results.
 

Protected Attributes

StorageInterface_implementation {nullptr}
 Holds the implementation.
 
id_type _deviceNumber {0}
 Holds the device number passed at the constructor.
 
std::string _serverName
 Holds the device name for creating the variable names.
 

Additional Inherited Members

- Public Types inherited from sf::InformationTypes
typedef unsigned long long id_type
 Type used for the identifying integer (64-bits).
 
typedef int32_t flags_type
 Type used for the flag integer.
 
typedef size_t size_type
 Type used for size of vectors.
 
typedef uint64_t data_type
 Type used for containing a single data element which is the largest integer.
 
typedef int64_t sdata_type
 Type used for containing a single data element which is the largest signed integer.
 
typedef TVector< id_typeIdVector
 Vector for lists of information ID's.
 
typedef TVector< InformationBase * > Vector
 Vector for containing different information base derived classes.
 
- Static Public Attributes inherited from sf::InformationTypes
static constexpr size_t npos = std::numeric_limits<size_type>::max()
 Unsigned size value indicating not found or no index.
 

Detailed Description

Storage server.

Constructor & Destructor Documentation

◆ StorageServer()

sf::StorageServer::StorageServer ( id_type  deviceNumber,
const std::string &  serverName = {} 
)
explicit

Constructor.

◆ ~StorageServer()

sf::StorageServer::~StorageServer ( )

Destructor.

Member Function Documentation

◆ createImplementation() [1/2]

bool sf::StorageServer::createImplementation ( const std::string &  name)

Creates an attached implementation by name.

◆ createImplementation() [2/2]

bool sf::StorageServer::createImplementation ( int  index)
protected

Creates the implementation of index on the registered implementations.

Returns
True on success.

◆ createInterface()

void sf::StorageServer::createInterface ( )
protected

Create interface parameters at construction once.

◆ destroyImplementation()

void sf::StorageServer::destroyImplementation ( )
inline

Destroys the created implementation.

◆ destroyInterface()

void sf::StorageServer::destroyInterface ( )
protected

Remove all parameters and results.

◆ getImplementation()

StorageInterface * sf::StorageServer::getImplementation ( )
inline

Gets a pointer to the current acquisition implementation.

◆ getImplementationName()

std::string sf::StorageServer::getImplementationName ( ) const

Gets the name of the current implementation.

◆ getServerName()

std::string sf::StorageServer::getServerName ( ) const

Gets the name given at the constructor.

Member Data Documentation

◆ _deviceNumber

id_type sf::StorageServer::_deviceNumber {0}
protected

Holds the device number passed at the constructor.

◆ _implementation

StorageInterface* sf::StorageServer::_implementation {nullptr}
protected

Holds the implementation.

◆ _serverName

std::string sf::StorageServer::_serverName
protected

Holds the device name for creating the variable names.


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