BioDynaMo  v1.05.120-25dc9790
Public Member Functions | Private Attributes | Static Private Attributes | List of all members
bdm::JitForEachDataMemberFunctor Class Reference

#include <jit.h>

Collaboration diagram for bdm::JitForEachDataMemberFunctor:
[legend]

Public Member Functions

 JitForEachDataMemberFunctor (TClass *tclass, const std::vector< std::string > &dm_names, const std::string &functor_name, const std::function< std::string(const std::string &, const std::vector< TDataMember * > &)> &code_generation)
 
void Compile () const
 
void * New (const std::string &parameter="")
 
template<typename TFunctor >
TFunctor * New (const std::string &parameter="")
 

Private Attributes

std::string functor_name_
 
std::vector< TDataMember * > data_members_
 
std::function< std::string(const std::string &, const std::vector< TDataMember * > &)> code_generator_
 

Static Private Attributes

static std::atomic< int > counter_
 The counter value is appended to the functor_name to obtain unique names. More...
 

Detailed Description

Definition at line 49 of file jit.h.

Constructor & Destructor Documentation

◆ JitForEachDataMemberFunctor()

bdm::JitForEachDataMemberFunctor::JitForEachDataMemberFunctor ( TClass *  tclass,
const std::vector< std::string > &  dm_names,
const std::string &  functor_name,
const std::function< std::string(const std::string &, const std::vector< TDataMember * > &)> &  code_generation 
)

Definition at line 106 of file jit.cc.

Member Function Documentation

◆ Compile()

void bdm::JitForEachDataMemberFunctor::Compile ( ) const

Definition at line 129 of file jit.cc.

◆ New() [1/2]

void * bdm::JitForEachDataMemberFunctor::New ( const std::string &  parameter = "")

Definition at line 135 of file jit.cc.

◆ New() [2/2]

template<typename TFunctor >
TFunctor* bdm::JitForEachDataMemberFunctor::New ( const std::string &  parameter = "")
inline

Definition at line 63 of file jit.h.

Member Data Documentation

◆ code_generator_

std::function<std::string(const std::string&, const std::vector<TDataMember*>&)> bdm::JitForEachDataMemberFunctor::code_generator_
private

Definition at line 74 of file jit.h.

◆ counter_

std::atomic< int > bdm::JitForEachDataMemberFunctor::counter_
staticprivate

The counter value is appended to the functor_name to obtain unique names.

Definition at line 69 of file jit.h.

◆ data_members_

std::vector<TDataMember*> bdm::JitForEachDataMemberFunctor::data_members_
private

Definition at line 71 of file jit.h.

◆ functor_name_

std::string bdm::JitForEachDataMemberFunctor::functor_name_
private

Definition at line 70 of file jit.h.


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