votca 2024-dev
Loading...
Searching...
No Matches
Classes | Public Member Functions | Private Member Functions | Private Attributes | List of all members
votca::csg::CGMoleculeDef Class Reference

definition of a coarse grained molecule More...

#include <cgmoleculedef.h>

Collaboration diagram for votca::csg::CGMoleculeDef:
Collaboration graph
[legend]

Classes

struct  beaddef_t
 

Public Member Functions

 CGMoleculeDef ()=default
 
 ~CGMoleculeDef ()
 
MoleculeCreateMolecule (Topology &top)
 
Map CreateMap (const Molecule &in, Molecule &out)
 
void Load (std::string filename)
 
const std::string & getName ()
 
const std::string & getIdent ()
 

Private Member Functions

void ParseTopology (tools::Property &options)
 
void ParseBeads (tools::Property &options)
 
void ParseBonded (tools::Property &options)
 
void ParseMapping (tools::Property &options)
 
beaddef_tgetBeadByName (const std::string &name)
 
tools::PropertygetMapByName (const std::string &name)
 

Private Attributes

tools::Property options_
 
std::string name_
 
std::string ident_
 
std::vector< beaddef_t * > beads_
 
std::map< std::string, beaddef_t * > beads_by_name_
 
std::map< std::string, tools::Property * > maps_
 
std::vector< tools::Property * > bonded_
 

Detailed Description

definition of a coarse grained molecule

This class is to define a coarse grained molecule, which includes the topology, mapping, ...

Todo:

clean up this class, do the bonded interactions right!!!!

check for consistency of xml file, seperate xml parser and class!!

Definition at line 49 of file cgmoleculedef.h.

Constructor & Destructor Documentation

◆ CGMoleculeDef()

votca::csg::CGMoleculeDef::CGMoleculeDef ( )
default

◆ ~CGMoleculeDef()

votca::csg::CGMoleculeDef::~CGMoleculeDef ( )

Definition at line 51 of file cgmoleculedef.cc.

Member Function Documentation

◆ CreateMap()

Map votca::csg::CGMoleculeDef::CreateMap ( const Molecule in,
Molecule out 
)

TODO: change this to factory, do not hardcode!!

Definition at line 202 of file cgmoleculedef.cc.

◆ CreateMolecule()

Molecule * votca::csg::CGMoleculeDef::CreateMolecule ( Topology top)

Definition at line 118 of file cgmoleculedef.cc.

◆ getBeadByName()

CGMoleculeDef::beaddef_t * votca::csg::CGMoleculeDef::getBeadByName ( const std::string &  name)
private

Definition at line 242 of file cgmoleculedef.cc.

◆ getIdent()

const std::string & votca::csg::CGMoleculeDef::getIdent ( )
inline

Definition at line 60 of file cgmoleculedef.h.

◆ getMapByName()

tools::Property * votca::csg::CGMoleculeDef::getMapByName ( const std::string &  name)
private

Definition at line 251 of file cgmoleculedef.cc.

◆ getName()

const std::string & votca::csg::CGMoleculeDef::getName ( )
inline

Definition at line 59 of file cgmoleculedef.h.

◆ Load()

void votca::csg::CGMoleculeDef::Load ( std::string  filename)

Definition at line 58 of file cgmoleculedef.cc.

◆ ParseBeads()

void votca::csg::CGMoleculeDef::ParseBeads ( tools::Property options)
private

Definition at line 75 of file cgmoleculedef.cc.

◆ ParseBonded()

void votca::csg::CGMoleculeDef::ParseBonded ( tools::Property options)
private

Definition at line 108 of file cgmoleculedef.cc.

◆ ParseMapping()

void votca::csg::CGMoleculeDef::ParseMapping ( tools::Property options)
private

Definition at line 112 of file cgmoleculedef.cc.

◆ ParseTopology()

void votca::csg::CGMoleculeDef::ParseTopology ( tools::Property options)
private

Definition at line 68 of file cgmoleculedef.cc.

Member Data Documentation

◆ beads_

std::vector<beaddef_t *> votca::csg::CGMoleculeDef::beads_
private

Definition at line 80 of file cgmoleculedef.h.

◆ beads_by_name_

std::map<std::string, beaddef_t *> votca::csg::CGMoleculeDef::beads_by_name_
private

Definition at line 81 of file cgmoleculedef.h.

◆ bonded_

std::vector<tools::Property *> votca::csg::CGMoleculeDef::bonded_
private

Definition at line 86 of file cgmoleculedef.h.

◆ ident_

std::string votca::csg::CGMoleculeDef::ident_
private

Definition at line 77 of file cgmoleculedef.h.

◆ maps_

std::map<std::string, tools::Property *> votca::csg::CGMoleculeDef::maps_
private

Definition at line 84 of file cgmoleculedef.h.

◆ name_

std::string votca::csg::CGMoleculeDef::name_
private

Definition at line 75 of file cgmoleculedef.h.

◆ options_

tools::Property votca::csg::CGMoleculeDef::options_
private

Definition at line 63 of file cgmoleculedef.h.


The documentation for this class was generated from the following files: