41 |
|
|
42 |
|
#ifndef TYPES_COMPONENT_HPP |
43 |
|
#define TYPES_COMPONENT_HPP |
44 |
+ |
#include "types/DataHolder.hpp" |
45 |
+ |
#include "types/MoleculeStamp.hpp" |
46 |
+ |
namespace oopse { |
47 |
+ |
class Component : public DataHolder { |
48 |
+ |
DeclareParameter(Type, std::string); |
49 |
+ |
DeclareParameter(NMol, int); |
50 |
|
|
51 |
< |
class Component{ |
52 |
< |
|
53 |
< |
public: |
54 |
< |
Component(); |
55 |
< |
~Component(); |
56 |
< |
|
57 |
< |
int assignString( char* lhs, char* rhs, char** err ); |
58 |
< |
int assignDouble( char* lhs, double rhs, char** err ); |
53 |
< |
int assignInt( char* lhs, int rhs, char** err ); |
54 |
< |
void startIndex( int* the_start_array, int n_elements ); |
55 |
< |
char* checkMe( void ); |
56 |
< |
|
57 |
< |
int getNMol( void ) { return nMol; } |
58 |
< |
char* getType( void ) { return type; } |
59 |
< |
|
60 |
< |
short int haveNMol( void ) { return have_nMol; } |
61 |
< |
|
62 |
< |
private: |
63 |
< |
|
64 |
< |
|
65 |
< |
char type[100]; |
66 |
< |
int nMol; |
67 |
< |
double molFraction; |
68 |
< |
int* start_array; |
69 |
< |
int n_start; |
70 |
< |
|
71 |
< |
short int have_type, have_nMol, have_molFraction, have_start_array; |
51 |
> |
public: |
52 |
> |
Component(); |
53 |
> |
virtual ~Component(); |
54 |
> |
virtual void validate(); |
55 |
> |
MoleculeStamp* getMoleculeStamp() { return moleculeStamp_;} |
56 |
> |
bool findMoleculeStamp(const std::map<std::string, MoleculeStamp*>& molStamps); |
57 |
> |
private: |
58 |
> |
MoleculeStamp* moleculeStamp_; |
59 |
|
}; |
60 |
+ |
} |
61 |
|
|
62 |
|
#endif |