C++ wrapper for plumed.
More...
#include <Plumed.h>
|
| Plumed (const Plumed &) |
| Copy constructor is disabled (private and unimplemented) The problem here is that after copying it will not be clear who is going to finalize the corresponding plumed structure. More...
|
|
Plumed & | operator= (const Plumed &) |
| Assignment operator is disabled (private and unimplemented) The problem here is that after copying it will not be clear who is going to finalize the corresponding plumed structure. More...
|
|
|
plumed | main |
| C structure. More...
|
|
bool | reference |
| keeps track if the object was created from scratch using the defaults destructor (reference=false) or if it was imported from C or FORTRAN (reference=true). More...
|
|
C++ wrapper for plumed.
This class provides a C++ interface to PLUMED.
◆ Plumed() [1/4]
◆ Plumed() [2/4]
PLMD::Plumed::Plumed |
( |
const char * |
c | ) |
|
|
inline |
Clone a Plumed object from a FORTRAN char* handler
- Parameters
-
c | The FORTRAN handler (a char[32]). |
- Attention
- The Plumed object created in this manner will not finalize the corresponding plumed structure. It is expected that the FORTRAN code calls plumed_c_finalize for it
◆ Plumed() [3/4]
PLMD::Plumed::Plumed |
( |
plumed |
p | ) |
|
|
inline |
Clone a Plumed object from a C plumed structure
- Parameters
-
- Attention
- The Plumed object created in this manner will not finalize the corresponding plumed structure. It is expected that the C code calls plumed_finalize for it
◆ Plumed() [4/4]
PLMD::Plumed::Plumed |
( |
const Plumed & |
| ) |
|
|
private |
Copy constructor is disabled (private and unimplemented) The problem here is that after copying it will not be clear who is going to finalize the corresponding plumed structure.
◆ ~Plumed()
PLMD::Plumed::~Plumed |
( |
| ) |
|
|
inlinevirtual |
Destructor.
Destructor is virtual so as to allow correct inheritance from Plumed object. To avoid linking problems with g++, I specify "inline" also here (in principle it should be enough to specify it down in the definition of the function, but for some reason that I do not understand g++ does not inline it properly in that case and complains when Plumed.h is included but Plumed.o is not linked. Anyway, the way it is done here seems to work properly).
◆ cmd()
void PLMD::Plumed::cmd |
( |
const char * |
key, |
|
|
const void * |
val = NULL |
|
) |
| |
|
inline |
Send a command to this plumed object.
- Parameters
-
key | The name of the command to be executed |
val | The argument. It is declared as const to allow calls like p.cmd("A","B"), but for some choice of key it can change the content |
- Note
- Equivalent to plumed_cmd()
◆ gcmd()
void PLMD::Plumed::gcmd |
( |
const char * |
key, |
|
|
const void * |
val = NULL |
|
) |
| |
|
inlinestatic |
Send a command to global-plumed.
- Parameters
-
key | The name of the command to be executed |
val | The argument. It is declared as const to allow calls like gcmd("A","B"), but for some choice of key it can change the content |
- Note
- Equivalent to plumed_gcmd()
◆ gcreate()
void PLMD::Plumed::gcreate |
( |
| ) |
|
|
inlinestatic |
◆ gfinalize()
void PLMD::Plumed::gfinalize |
( |
| ) |
|
|
inlinestatic |
◆ ginitialized()
bool PLMD::Plumed::ginitialized |
( |
| ) |
|
|
inlinestatic |
Check if global-plumed has been initialized.
- Returns
- true if global plumed object (see global()) is initialized (i.e. if gcreate() has been called), false otherwise.
- Note
- Equivalent to plumed_ginitialized() but returns a bool
◆ global()
Plumed PLMD::Plumed::global |
( |
| ) |
|
|
inlinestatic |
Returns the Plumed global object.
- Returns
- The Plumed global object
◆ installed()
bool PLMD::Plumed::installed |
( |
| ) |
|
|
inlinestatic |
Check if plumed is installed (for runtime binding)
- Returns
- true if plumed is installed, false otherwise
- Note
- Equivalent to plumed_installed() but returns a bool
◆ operator plumed()
PLMD::Plumed::operator plumed |
( |
| ) |
const |
|
inline |
Retrieve the C plumed structure for this object.
◆ operator=()
Assignment operator is disabled (private and unimplemented) The problem here is that after copying it will not be clear who is going to finalize the corresponding plumed structure.
◆ toFortran()
void PLMD::Plumed::toFortran |
( |
char * |
c | ) |
const |
|
inline |
Retrieve a FORTRAN handler for this object.
- Parameters
-
c | The FORTRAN handler (a char[32]). |
◆ main
◆ reference
bool PLMD::Plumed::reference |
|
private |
keeps track if the object was created from scratch using the defaults destructor (reference=false) or if it was imported from C or FORTRAN (reference=true).
In the latter case, the plumed_finalize() method is not called when destructing the object, since it is expected to be finalized in the C/FORTRAN code
The documentation for this class was generated from the following file: