Mantid
|
Creates instances of Surfaces. More...
#include <SurfaceFactory.h>
Public Member Functions | |
std::unique_ptr< Surface > | createSurface (const std::string &) const |
Creates an instance of tally given a valid key. More... | |
std::unique_ptr< Surface > | createSurfaceID (const std::string &) const |
Creates an instance of tally given a valid key. More... | |
std::unique_ptr< Surface > | processLine (const std::string &) const |
Creates an instance of a surface given a valid line. More... | |
Static Public Member Functions | |
static SurfaceFactory * | Instance () |
Effective new command / this command. More... | |
Private Types | |
using | MapType = std::vector< std::pair< std::string, std::unique_ptr< Surface > > > |
< Storage of surface pointers. More... | |
Private Member Functions | |
SurfaceFactory & | operator= (const SurfaceFactory &other) |
void | registerSurface () |
Register tallies to be used. More... | |
SurfaceFactory () | |
singleton constructor More... | |
SurfaceFactory (const SurfaceFactory &other) | |
Private Attributes | |
std::map< char, std::string > | ID |
Short letter identifiers. More... | |
MapType | SGrid |
The tally stack. More... | |
Static Private Attributes | |
static SurfaceFactory * | FOBJ |
Effective "this". More... | |
Creates instances of Surfaces.
This is a singleton class. It creates Surface* depending registered tallies and the key given. Predominately for creating tallies from an input deck where we only have the number.
Definition at line 26 of file SurfaceFactory.h.
|
private |
< Storage of surface pointers.
Definition at line 32 of file SurfaceFactory.h.
|
private |
Definition at line 62 of file SurfaceFactory.cpp.
References SGrid.
|
private |
singleton constructor
Constructor.
Definition at line 54 of file SurfaceFactory.cpp.
References registerSurface().
Referenced by Instance().
std::unique_ptr< Surface > Mantid::Geometry::SurfaceFactory::createSurface | ( | const std::string & | Key | ) | const |
Creates an instance of tally given a valid key.
Key | :: Item to get |
NotFoundError | for the key if not found |
Definition at line 107 of file SurfaceFactory.cpp.
std::unique_ptr< Surface > Mantid::Geometry::SurfaceFactory::createSurfaceID | ( | const std::string & | Key | ) | const |
Creates an instance of tally given a valid key.
Key | :: Form of first ID |
NotFoundError | for the key if not found |
Definition at line 125 of file SurfaceFactory.cpp.
|
static |
Effective new command / this command.
Definition at line 42 of file SurfaceFactory.cpp.
References FOBJ, and SurfaceFactory().
|
private |
Definition at line 67 of file SurfaceFactory.cpp.
std::unique_ptr< Surface > Mantid::Geometry::SurfaceFactory::processLine | ( | const std::string & | Line | ) | const |
Creates an instance of a surface given a valid line.
Line | :: Full description of line |
InContainerError | for the key if not found |
Definition at line 145 of file SurfaceFactory.cpp.
References Mantid::Kernel::Strings::convert(), and Mantid::Geometry::X.
|
private |
Register tallies to be used.
Definition at line 77 of file SurfaceFactory.cpp.
Referenced by SurfaceFactory().
|
staticprivate |
|
private |
Short letter identifiers.
Definition at line 37 of file SurfaceFactory.h.
Referenced by operator=(), and registerSurface().
|
private |
The tally stack.
Definition at line 36 of file SurfaceFactory.h.
Referenced by operator=(), registerSurface(), and SurfaceFactory().