libbio
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
bio::physical::SymmetryFactory Struct Reference

#include <Class.h>

Collaboration diagram for bio::physical::SymmetryFactory:
Collaboration graph
[legend]

Public Member Functions

 SymmetryFactory (Symmetry *(*f)())
 

Public Attributes

Symmetry *(* fn )()
 

Detailed Description

Tiny wrapper carrying a lazy-Symmetry factory (argument-free function returning a fresh Symmetry address). Used to disambiguate the Class<T> factory ctor from the eager Class(T*, Symmetry*) ctor: a bare function pointer or NULL would be ambiguous against Symmetry*, but a NULL prefers the standard NULL->Symmetry* conversion over this user-defined wrapper, so the eager Class(this, NULL) call sites are unaffected. The implicit ctor lets call sites pass &Foo::MakeSymmetry directly.

Constructor & Destructor Documentation

◆ SymmetryFactory()

bio::physical::SymmetryFactory::SymmetryFactory ( Symmetry *(*)()  f)
inline

Member Data Documentation

◆ fn

Symmetry *(* bio::physical::SymmetryFactory::fn) ()

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