NEML2 2.0.0
Loading...
Searching...
No Matches
Transformable< Derived > Class Template Referenceabstract

Mixin class for things that can be transformed by a symmetry operator. More...

Detailed Description

template<class Derived>
class neml2::Transformable< Derived >

Mixin class for things that can be transformed by a symmetry operator.

Template Parameters
Derivedtype

#include <Transformable.h>

Public Member Functions

 Transformable ()=default
 
 Transformable (const Transformable &)=default
 
 Transformable (Transformable &&) noexcept=default
 
Transformableoperator= (const Transformable &)=default
 
Transformableoperator= (Transformable &&) noexcept=default
 
virtual ~Transformable ()=default
 
virtual Derived transform (const R2 &op) const =0
 apply a transformation operator
 

Constructor & Destructor Documentation

◆ Transformable() [1/3]

template<class Derived >
Transformable ( )
default

◆ Transformable() [2/3]

template<class Derived >
Transformable ( const Transformable< Derived > & )
default

◆ Transformable() [3/3]

template<class Derived >
Transformable ( Transformable< Derived > && )
defaultnoexcept

◆ ~Transformable()

template<class Derived >
virtual ~Transformable ( )
virtualdefault

Member Function Documentation

◆ operator=() [1/2]

template<class Derived >
Transformable & operator= ( const Transformable< Derived > & )
default

◆ operator=() [2/2]

template<class Derived >
Transformable & operator= ( Transformable< Derived > && )
defaultnoexcept

◆ transform()

template<class Derived >
virtual Derived transform ( const R2 & op) const
pure virtual

apply a transformation operator

Parameters
opthe transformation operator
Returns
an instance of the Derived type that has been transform

Implemented in Vec.