diff --git a/src/generic/DumpMassCharge.cpp b/src/generic/DumpMassCharge.cpp index 8b6c3bf1ade2b638428dd7fb1c55bc266e26c8f9..d4adfc24f884fea040b8bdd9dda5531723d05ea7 100644 --- a/src/generic/DumpMassCharge.cpp +++ b/src/generic/DumpMassCharge.cpp @@ -96,10 +96,12 @@ class DumpMassCharge: { string file; bool first; + bool second; public: explicit DumpMassCharge(const ActionOptions&); ~DumpMassCharge(); static void registerKeywords( Keywords& keys ); + void prepare(); void calculate() {} void apply() {} void update(); @@ -120,7 +122,8 @@ DumpMassCharge::DumpMassCharge(const ActionOptions&ao): Action(ao), ActionAtomistic(ao), ActionPilot(ao), - first(true) + first(true), + second(true) { vector<AtomNumber> atoms; parse("FILE",file); @@ -142,6 +145,13 @@ DumpMassCharge::DumpMassCharge(const ActionOptions&ao): requestAtoms(atoms); } +void DumpMassCharge::prepare() { + if(!first && second) { + requestAtoms(vector<AtomNumber>()); + second=false; + } +} + void DumpMassCharge::update() { if(!first) return; first=false;