ETSI STF525 / Internal Testing test suite
This project provides an internal testing test suite and its associated Test Adapter/Codec
layer_stack_builder.hh
Go to the documentation of this file.
1 
11 #pragma once
12 
13 #include "layer_factory.hh"
14 
20 private:
21  typedef std::map<std::string, layer_factory*> LayerFactoryMap;
22 
24  std::map<std::string, layer_factory*> _layer_factories;
25 
31  layer_stack_builder(); // can not be created manually
32 public:
33 
39 
47  static void register_layer_factory(const std::string & p_type, layer_factory* p_layer_factory);
48 
49 private:
50 
56  void _register_layer_factory(const std::string & p_type, layer_factory* p_layer_factory);
57 
58 public:
59 
65  layer* create_layer_stack(const char* p_layer_stack_description);
66 }; // End of class layer_stack_builder
67 
This class provides a factory class to create Layer class instances.
Definition: layer_stack_builder.hh:19
std::map< std::string, layer_factory * > LayerFactoryMap
Definition: layer_stack_builder.hh:21
Forward declaration of TITAN class.
Definition: layer.hh:29
static layer_stack_builder * _instance
Definition: layer_stack_builder.hh:23
This class provides a factory class to create layer class instances .
Definition: layer_factory.hh:25
layer * create_layer_stack(const char *p_layer_stack_description)
Add a new layer factory.
Definition: layer_factory.cc:31
Header file for ITS abstract protocol layer definition.
void _register_layer_factory(const std::string &p_type, layer_factory *p_layer_factory)
Add a new layer factory.
Definition: layer_factory.cc:26
layer_stack_builder()
The list of the registered.
Definition: layer_factory.cc:22
std::map< std::string, layer_factory * > _layer_factories
Smart pointer to the unique instance of the logger framework.
Definition: layer_stack_builder.hh:24
static void register_layer_factory(const std::string &p_type, layer_factory *p_layer_factory)
Add a new layer factory.
Definition: layer_factory.cc:16
static layer_stack_builder * get_instance()
Accessor for the unique instance of the logger framework.
Definition: layer_factory.cc:11