ardour
Classes | Public Member Functions | Static Public Member Functions | Private Types | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
PBD::EnumWriter Class Reference

#include <enumwriter.h>

Classes

struct  EnumRegistration
 

Public Member Functions

void register_distinct (std::string type, std::vector< int >, std::vector< std::string >)
 
void register_bits (std::string type, std::vector< int >, std::vector< std::string >)
 
std::string write (std::string type, int value)
 
int read (std::string type, std::string value)
 
void add_to_hack_table (std::string str, std::string hacked_str)
 

Static Public Member Functions

static EnumWriterinstance ()
 
static void destroy ()
 

Private Types

typedef std::map< std::string,
EnumRegistration
Registry
 

Private Member Functions

 EnumWriter ()
 
 ~EnumWriter ()
 
std::string write_bits (EnumRegistration &, int value)
 
std::string write_distinct (EnumRegistration &, int value)
 
int read_bits (EnumRegistration &, std::string value)
 
int read_distinct (EnumRegistration &, std::string value)
 
int validate (EnumRegistration &er, int value)
 

Private Attributes

Registry registry
 

Static Private Attributes

static EnumWriter_instance = 0
 
static std::map< std::string,
std::string > 
hack_table
 

Detailed Description

Definition at line 52 of file enumwriter.h.

Member Typedef Documentation

typedef std::map<std::string, EnumRegistration> PBD::EnumWriter::Registry
private

Definition at line 79 of file enumwriter.h.

Constructor & Destructor Documentation

EnumWriter::EnumWriter ( )
private

Definition at line 83 of file enumwriter.cc.

EnumWriter::~EnumWriter ( )
private

Definition at line 87 of file enumwriter.cc.

Member Function Documentation

void EnumWriter::add_to_hack_table ( std::string  str,
std::string  hacked_str 
)

Definition at line 323 of file enumwriter.cc.

void EnumWriter::destroy ( )
static

Definition at line 77 of file enumwriter.cc.

EnumWriter & EnumWriter::instance ( )
static

Definition at line 67 of file enumwriter.cc.

int EnumWriter::read ( std::string  type,
std::string  value 
)

Definition at line 141 of file enumwriter.cc.

int EnumWriter::read_bits ( EnumRegistration ,
std::string  value 
)
private

Definition at line 227 of file enumwriter.cc.

int EnumWriter::read_distinct ( EnumRegistration ,
std::string  value 
)
private

Definition at line 277 of file enumwriter.cc.

void EnumWriter::register_bits ( std::string  type,
std::vector< int >  ,
std::vector< std::string >   
)

Definition at line 108 of file enumwriter.cc.

void EnumWriter::register_distinct ( std::string  type,
std::vector< int >  ,
std::vector< std::string >   
)

Definition at line 92 of file enumwriter.cc.

int EnumWriter::validate ( EnumRegistration er,
int  value 
)
private

Definition at line 192 of file enumwriter.cc.

string EnumWriter::write ( std::string  type,
int  value 
)

Definition at line 124 of file enumwriter.cc.

string EnumWriter::write_bits ( EnumRegistration er,
int  value 
)
private

Definition at line 158 of file enumwriter.cc.

string EnumWriter::write_distinct ( EnumRegistration er,
int  value 
)
private

Definition at line 177 of file enumwriter.cc.

Member Data Documentation

EnumWriter * EnumWriter::_instance = 0
staticprivate

Definition at line 88 of file enumwriter.h.

map< string, string > EnumWriter::hack_table
staticprivate

Definition at line 89 of file enumwriter.h.

Registry PBD::EnumWriter::registry
private

Definition at line 80 of file enumwriter.h.


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