Tenncor
Classes | Namespaces | Typedefs | Functions | Variables
layer.hpp File Reference
#include "estd/estd.hpp"
#include "tag/tag.hpp"
#include "eteq/constant.hpp"
#include "eteq/variable.hpp"
#include "eteq/generated/pyapi.hpp"
Include dependency graph for layer.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  layr::LayerId
 Sublayer type, label, and index encapsulation. More...
 
struct  layr::LayerTag
 Tag implementation specifically for contents of layers. More...
 
struct  layr::iLayer
 
struct  layr::iLayerBuilder
 
struct  layr::LayerRegistry
 

Namespaces

 layr
 

Typedefs

using layr::LayerIdsT = std::vector< LayerId >
 Vector of sublayer ids. More...
 
using layr::LayerptrT = std::shared_ptr< iLayer >
 Smart pointer of layer. More...
 
using layr::LBuilderptrT = std::shared_ptr< iLayerBuilder >
 Layer builder smart pointer. More...
 
using layr::LayerBuildF = std::function< LBuilderptrT(std::string)>
 Function that takes layer type and returns associated layer builder. More...
 

Functions

void layr::validate_label (const std::string &label)
 
std::string layr::layer_label_fmt (std::string label, LayerId subid)
 Return formatted raw label with associated sublayer. More...
 
std::unordered_map< std::string, LayerIdsT > layr::unpack_labels (const std::vector< std::string > &labels)
 Return raw labels mapped to sublayers given a vector of formatted labels. More...
 
LayerRegistry & layr::get_layer_reg (void)
 Return global layer registry reference. More...
 
void layr::recursive_layer_tag (teq::TensptrT tens, std::string layer_type, std::string name, teq::TensSetT stops, LayerRegistry &registry=get_layer_reg())
 
LayerptrT layr::load_layer (std::istream &ins, teq::TensptrsT &roots, std::string ltype, std::string label, LayerRegistry &registry=get_layer_reg())
 
bool layr::save_layer (std::ostream &outs, const iLayer &layer, teq::TensptrsT roots, LayerRegistry &registry=get_layer_reg())
 

Variables

const std::string layr::layers_key_prefix = "layer_"
 String prefixed to every layer key. More...
 
const char layr::llabel_sep = ':'
 Layer label separator to divide each element in the LayerId. More...