2#ifndef STORMM_MDLMOL_REQUEST_H
3#define STORMM_MDLMOL_REQUEST_H
8#include "DataTypes/stormm_vector_types.h"
9#include "Potential/energy_enumerators.h"
10#include "molecule_format_enumerators.h"
15using energy::StateVariable;
28 const std::string &label_in = std::string(
""));
31 const std::string &label_in);
34 const std::string &message_in,
const std::string &label_in);
37 const std::vector<char4> &atom_types_in,
const std::string &label_in);
50 DataRequestKind
getKind()
const;
109 DataRequestKind kind;
112 StateVariable energy_component;
113 std::string atom_mask;
116 StateVariable valence_kind;
123 std::vector<char4> atom_types;
124 std::string system_label;
131 bool use_maccs_ii_number;
134 bool use_internal_registry;
137 std::string external_regno;
145 void checkKind(DataRequestKind accepted_kind)
const;
MdlMolDataRequest(const std::string &title_in=std::string(""), const std::string &label_in=std::string(""))
The constructor takes arguments corresponding to each member variable. Various overloads allow the ob...
Definition mdlmol_request.cpp:13
MdlMolDataRequest(const std::string &title_in=std::string(""), const std::string &label_in=std::string(""))
The constructor takes arguments corresponding to each member variable. Various overloads allow the ob...
Definition mdlmol_request.cpp:13
const std::string & getAtomMask() const
Get the atom mask string. Raise a runtime error if this request is not of the appropriate kind.
Definition mdlmol_request.cpp:142
const std::string & getSystemLabel() const
Get the system label to which the data item should be applied.
Definition mdlmol_request.cpp:165
const std::string & getExternalRegistryNumber() const
Get the external registry number for the compound, as transcribed for this request.
Definition mdlmol_request.cpp:170
void setExternalRegistryNumber(const std::string ®no_in)
Set the external registry number.
Definition mdlmol_request.cpp:190
const std::string & getMessage() const
Get the custom string, again raising a runtime error if the request is not of the appropriate kind.
Definition mdlmol_request.cpp:154
StateVariable getEnergyComponent() const
Get the type of energy requested, or produce a runtime error if this request is not of the appropriat...
Definition mdlmol_request.cpp:136
DataRequestKind getKind() const
Get the kind of request.
Definition mdlmol_request.cpp:126
const std::vector< char4 > & getAtomTypes() const
Get the vector of atom types defining a valence parameter of interest, again raising a runtime error ...
Definition mdlmol_request.cpp:160
bool placeMaccsFieldInHeader() const
Indicate that the MACCS-II field number should go in the resulting data item's header line.
Definition mdlmol_request.cpp:175
void setInternalRegistryUsage(const std::string &input)
Set the data item to make use of the SD file archive's internal registry number (the number of the mo...
Definition mdlmol_request.cpp:201
int getMaccsFieldNumber() const
Get the MACCS-II field number.
Definition mdlmol_request.cpp:185
StateVariable getValenceParameter() const
Get the valence parameter type. Raise a runtime error if this request is not of the appropriate kind.
Definition mdlmol_request.cpp:148
bool placeInternalRegistryInHeader() const
Indicate that the internal registry numbre (known only once the SD file is ready for assembly) should...
Definition mdlmol_request.cpp:180
const std::string & getTitle() const
Get the title for the printed SD file's data item.
Definition mdlmol_request.cpp:131
void setMaccsFieldNumber(int maccs_in)
Set the MACCS-II field number.
Definition mdlmol_request.cpp:195
MdlMolDataRequest(const MdlMolDataRequest &original)=default
The default copy and move constructors, as well as copy and move assignment operators,...