micromechanical (C++)
Loading...
Searching...
No Matches
micromechanical::contacts::ContactLawRegistry< T > Struct Template Reference

Contact law registry. More...

#include <contacts.hpp>

Public Types

typedef ContactLawBase< T > * ContactLawFunction(const std::map< std::string, T > &)
 Contact law function type.
 

Static Public Member Functions

static ContactLawBase< T > * create (ContactLawBase< T > *contact, const std::map< std::string, T > &props={})
 Create contact law.
 
static ContactLawBase< T > * create (const ContactLawType type, const std::map< std::string, T > &props={})
 Create contact law.
 
static ContactLawBase< T > * create (const std::string &path, const std::map< std::string, T > &props={})
 Create contact law from plugin.
 
static std::string contact_law_name (const ContactLawType type)
 Get the name of a contact law enum value.
 
static ContactLawType contact_law_type (const std::string &name)
 Get the contact law type from a string.
 

Detailed Description

template<typename T>
struct micromechanical::contacts::ContactLawRegistry< T >

Contact law registry.

Member Typedef Documentation

◆ ContactLawFunction

template<typename T>
typedef ContactLawBase< T > * micromechanical::contacts::ContactLawRegistry< T >::ContactLawFunction(const std::map< std::string, T > &)

Contact law function type.

Member Function Documentation

◆ contact_law_name()

◆ contact_law_type()

◆ create() [1/3]

template<typename T>
static ContactLawBase< T > * micromechanical::contacts::ContactLawRegistry< T >::create ( const ContactLawType type,
const std::map< std::string, T > & props = {} )
inlinestatic

Create contact law.

Parameters
typecontact law type
propsmaterial properties
Returns
contact law

◆ create() [2/3]

template<typename T>
static ContactLawBase< T > * micromechanical::contacts::ContactLawRegistry< T >::create ( const std::string & path,
const std::map< std::string, T > & props = {} )
inlinestatic

Create contact law from plugin.

Parameters
pathpath to the contact law plugin
propsmaterial properties
Returns
contact law

◆ create() [3/3]

template<typename T>
static ContactLawBase< T > * micromechanical::contacts::ContactLawRegistry< T >::create ( ContactLawBase< T > * contact,
const std::map< std::string, T > & props = {} )
inlinestatic

Create contact law.

Parameters
contactcontact law
propsmaterial properties
Returns
contact law

The documentation for this struct was generated from the following file: