Ignore:
Timestamp:
Aug 28, 2010, 12:57:56 AM (15 years ago)
Author:
Frederik Heber <heber@…>
Branches:
Action_Thermostats, Add_AtomRandomPerturbation, Add_FitFragmentPartialChargesAction, Add_RotateAroundBondAction, Add_SelectAtomByNameAction, Added_ParseSaveFragmentResults, AddingActions_SaveParseParticleParameters, Adding_Graph_to_ChangeBondActions, Adding_MD_integration_tests, Adding_ParticleName_to_Atom, Adding_StructOpt_integration_tests, AtomFragments, Automaking_mpqc_open, AutomationFragmentation_failures, Candidate_v1.5.4, Candidate_v1.6.0, Candidate_v1.6.1, Candidate_v1.7.0, ChangeBugEmailaddress, ChangingTestPorts, ChemicalSpaceEvaluator, CombiningParticlePotentialParsing, Combining_Subpackages, Debian_Package_split, Debian_package_split_molecuildergui_only, Disabling_MemDebug, Docu_Python_wait, EmpiricalPotential_contain_HomologyGraph, EmpiricalPotential_contain_HomologyGraph_documentation, Enable_parallel_make_install, Enhance_userguide, Enhanced_StructuralOptimization, Enhanced_StructuralOptimization_continued, Example_ManyWaysToTranslateAtom, Exclude_Hydrogens_annealWithBondGraph, FitPartialCharges_GlobalError, Fix_BoundInBox_CenterInBox_MoleculeActions, Fix_ChargeSampling_PBC, Fix_ChronosMutex, Fix_FitPartialCharges, Fix_FitPotential_needs_atomicnumbers, Fix_ForceAnnealing, Fix_IndependentFragmentGrids, Fix_ParseParticles, Fix_ParseParticles_split_forward_backward_Actions, Fix_PopActions, Fix_QtFragmentList_sorted_selection, Fix_Restrictedkeyset_FragmentMolecule, Fix_StatusMsg, Fix_StepWorldTime_single_argument, Fix_Verbose_Codepatterns, Fix_fitting_potentials, Fixes, ForceAnnealing_goodresults, ForceAnnealing_oldresults, ForceAnnealing_tocheck, ForceAnnealing_with_BondGraph, ForceAnnealing_with_BondGraph_continued, ForceAnnealing_with_BondGraph_continued_betteresults, ForceAnnealing_with_BondGraph_contraction-expansion, FragmentAction_writes_AtomFragments, FragmentMolecule_checks_bonddegrees, GeometryObjects, Gui_Fixes, Gui_displays_atomic_force_velocity, ImplicitCharges, IndependentFragmentGrids, IndependentFragmentGrids_IndividualZeroInstances, IndependentFragmentGrids_IntegrationTest, IndependentFragmentGrids_Sole_NN_Calculation, JobMarket_RobustOnKillsSegFaults, JobMarket_StableWorkerPool, JobMarket_unresolvable_hostname_fix, MoreRobust_FragmentAutomation, ODR_violation_mpqc_open, PartialCharges_OrthogonalSummation, PdbParser_setsAtomName, PythonUI_with_named_parameters, QtGui_reactivate_TimeChanged_changes, Recreated_GuiChecks, Rewrite_FitPartialCharges, RotateToPrincipalAxisSystem_UndoRedo, SaturateAtoms_findBestMatching, SaturateAtoms_singleDegree, StoppableMakroAction, Subpackage_CodePatterns, Subpackage_JobMarket, Subpackage_LinearAlgebra, Subpackage_levmar, Subpackage_mpqc_open, Subpackage_vmg, Switchable_LogView, ThirdParty_MPQC_rebuilt_buildsystem, TrajectoryDependenant_MaxOrder, TremoloParser_IncreasedPrecision, TremoloParser_MultipleTimesteps, TremoloParser_setsAtomName, Ubuntu_1604_changes, stable
Children:
966e12
Parents:
53d01c
git-author:
Frederik Heber <heber@…> (08/26/10 21:05:34)
git-committer:
Frederik Heber <heber@…> (08/28/10 00:57:56)
Message:

All Actions are converted to the new macro framework.

  • included all three values that have been used to create or convert the files
    • createdef.sh
    • createCpp.sh
    • createHeader.sh
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/Actions/WorldAction/RepeatBoxAction.cpp

    r53d01c r1fd675  
    2020#include "Helpers/MemDebug.hpp"
    2121
    22 #include "Actions/WorldAction/RepeatBoxAction.hpp"
    23 #include "Actions/ActionRegistry.hpp"
     22#include "Descriptors/MoleculePtrDescriptor.hpp"
    2423#include "atom.hpp"
    2524#include "Helpers/Log.hpp"
     
    3736using namespace std;
    3837
    39 #include "UIElements/UIFactory.hpp"
    40 #include "UIElements/Dialog.hpp"
    41 #include "Actions/ValueStorage.hpp"
    42 #include "Descriptors/MoleculeDescriptor.hpp"
    43 #include "Descriptors/MoleculePtrDescriptor.hpp"
     38#include "Actions/WorldAction/RepeatBoxAction.hpp"
    4439
    45 const char WorldRepeatBoxAction::NAME[] = "repeat-box";
    46 
    47 WorldRepeatBoxAction::WorldRepeatBoxAction() :
    48   Action(NAME)
    49 {}
    50 
    51 WorldRepeatBoxAction::~WorldRepeatBoxAction()
    52 {}
    53 
    54 void WorldRepeatBox(Vector &Repeater) {
    55   ValueStorage::getInstance().setCurrentValue(WorldRepeatBoxAction::NAME, Repeater);
    56   ActionRegistry::getInstance().getActionByName(WorldRepeatBoxAction::NAME)->call(Action::NonInteractive);
    57 };
    58 
    59 void WorldRepeatBoxAction::getParametersfromValueStorage()
    60 {};
    61 
    62 Dialog* WorldRepeatBoxAction::fillDialog(Dialog *dialog) {
    63   ASSERT(dialog,"No Dialog given when filling action dialog");
    64 
    65   dialog->queryVector(NAME, false, ValueStorage::getInstance().getDescription(NAME));
    66 
    67   return dialog;
    68 }
    69 
     40// and construct the stuff
     41#include "RepeatBoxAction.def"
     42#include "Action_impl_pre.hpp"
     43/** =========== define the function ====================== */
    7044Action::state_ptr WorldRepeatBoxAction::performCall() {
    71   Vector Repeater;
    7245  int count;
    7346  const element ** Elements;
     
    7750  MoleculeListClass *molecules = World::getInstance().getMolecules();
    7851
    79   ValueStorage::getInstance().queryCurrentValue(NAME, Repeater);
     52  // obtain information
     53  getParametersfromValueStorage();
    8054
    8155  vector<molecule *> AllMolecules;
     
    8862  }
    8963
    90   (cout << "Repeating box " << Repeater << " times for (x,y,z) axis." << endl);
     64  (cout << "Repeating box " << params.Repeater << " times for (x,y,z) axis." << endl);
    9165  Matrix M = World::getInstance().getDomain().getM();
    9266  Matrix newM = M;
     
    9569  Matrix repMat;
    9670  for (int axis = 0; axis < NDIM; axis++) {
    97     Repeater[axis] = floor(Repeater[axis]);
    98     if (Repeater[axis] < 1) {
     71    params.Repeater[axis] = floor(params.Repeater[axis]);
     72    if (params.Repeater[axis] < 1) {
    9973      DoeLog(1) && (eLog()<< Verbose(1) << "Repetition factor must be greater than 1!" << endl);
    100       Repeater[axis] = 1;
     74      params.Repeater[axis] = 1;
    10175    }
    102     repMat.at(axis,axis) = Repeater[axis];
     76    repMat.at(axis,axis) = params.Repeater[axis];
    10377  }
    10478  newM *= repMat;
     
    10781  molecule *newmol = NULL;
    10882  std::vector<Vector> vectors;
    109   for (n[0] = 0; n[0] < Repeater[0]; n[0]++) {
     83  for (n[0] = 0; n[0] < params.Repeater[0]; n[0]++) {
    11084    y[0] = n[0];
    111     for (n[1] = 0; n[1] < Repeater[1]; n[1]++) {
     85    for (n[1] = 0; n[1] < params.Repeater[1]; n[1]++) {
    11286      y[1] = n[1];
    113       for (n[2] = 0; n[2] < Repeater[2]; n[2]++) {
     87      for (n[2] = 0; n[2] < params.Repeater[2]; n[2]++) {
    11488        y[2] = n[2];
    11589        if ((n[0] == 0) && (n[1] == 0) && (n[2] == 0))
     
    178152  return NAME;
    179153}
     154/** =========== end of function ====================== */
Note: See TracChangeset for help on using the changeset viewer.