Dripline-Cpp  v2.4.2
Dripline Implementation in C++
Public Types | Public Member Functions | Protected Member Functions | Friends | List of all members
version_store Class Reference

Singleton class to store all version information relevant in any particular application context. More...

#include <version_store.hh>

Inheritance diagram for version_store:
Inheritance graph

Public Types

typedef std::map< std::string, scarab::version_semantic_ptr_t > version_map_t
 

Public Member Functions

template<typename x_version >
void add_version (const std::string &a_name)
 
void add_version (const std::string &a_name, scarab::version_semantic_ptr_t a_version_ptr)
 
void remove_version (const std::string &a_name)
 
 snake_case_mv_referrable_const (version_map_t, versions)
 

Protected Member Functions

 version_store ()
 
virtual ~version_store ()
 

Friends

class scarab::singleton< version_store >
 
class scarab::destroyer< version_store >
 

Detailed Description

Singleton class to store all version information relevant in any particular application context.

Author
N.S. Oblath

This class is used to provide all of the relevant version information to a dripline message object. A library/executable will add the version information to this singleton object, and when a message is created, it automatically access that information.

Definition at line 36 of file version_store.hh.

Member Typedef Documentation

◆ version_map_t

typedef std::map< std::string, scarab::version_semantic_ptr_t > version_map_t

Definition at line 50 of file version_store.hh.

Constructor & Destructor Documentation

◆ version_store()

version_store ( )
protected

Definition at line 16 of file version_store.cc.

◆ ~version_store()

~version_store ( )
protectedvirtual

Definition at line 20 of file version_store.cc.

Member Function Documentation

◆ add_version() [1/2]

void add_version ( const std::string &  a_name)
inline

Definition at line 115 of file version_store.hh.

◆ add_version() [2/2]

void add_version ( const std::string &  a_name,
scarab::version_semantic_ptr_t  a_version_ptr 
)
inline

Definition at line 121 of file version_store.hh.

◆ remove_version()

void remove_version ( const std::string &  a_name)
inline

Definition at line 127 of file version_store.hh.

◆ snake_case_mv_referrable_const()

snake_case_mv_referrable_const ( version_map_t  ,
versions   
)

Friends And Related Function Documentation

◆ scarab::destroyer< version_store >

friend class scarab::destroyer< version_store >
friend

Definition at line 40 of file version_store.hh.

◆ scarab::singleton< version_store >

friend class scarab::singleton< version_store >
friend

Definition at line 39 of file version_store.hh.


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