musica (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::unordered_map< std::string, T > &)
 Contact law function type.

Static Public Member Functions

static ContactLawFunction * load (const std::string &path)
 Load a contact law from a shared library.
static ContactLawBase< T > * create (const std::variant< ContactLawType, std::string, ContactLawBase< T > * > &contact, const std::unordered_map< std::string, T > &props={})
 Create contact law.
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::unordered_map< std::string, T > &)

Contact law function type.

Member Function Documentation

◆ contact_law_name()

◆ contact_law_type()

◆ create()

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

Create contact law.

Parameters
contactcontact law
propsmaterial properties
Returns
contact law

Referenced by load().

Here is the caller graph for this function:

◆ load()

template<typename T>
ContactLawFunction * micromechanical::contacts::ContactLawRegistry< T >::load ( const std::string & path)
inlinestatic

Load a contact law from a shared library.

References create().

Here is the call graph for this function:

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