Changeset 0c8056 for src/Actions
- Timestamp:
- Sep 19, 2013, 8:23:52 PM (12 years ago)
- 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, 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:
- 40ec38
- Parents:
- a6ceab
- git-author:
- Frederik Heber <heber@…> (08/16/13 12:56:15)
- git-committer:
- Frederik Heber <heber@…> (09/19/13 20:23:52)
- Location:
- src/Actions
- Files:
-
- 23 edited
Legend:
- Unmodified
- Added
- Removed
-
src/Actions/Action.cpp
ra6ceab r0c8056 41 41 #include "Actions/Action.hpp" 42 42 #include "Actions/ActionExceptions.hpp" 43 #include "Actions/ActionQueue.hpp"44 43 #include "Actions/ActionHistory.hpp" 44 #include "Actions/ActionRegistry.hpp" 45 45 #include "Actions/OptionRegistry.hpp" 46 46 #include "Actions/OptionTrait.hpp" … … 75 75 Action::state_ptr Action::failure; 76 76 77 Action::Action(const ActionTrait &_Traits, bool _doRegister) : 78 Traits(_Traits) 77 Action::Action(const ActionTrait &_Traits, ActionRegistry * const _AR) : 78 Traits(_Traits), 79 AR(_AR) 79 80 { 80 81 // register with ActionRegistry 81 if( _doRegister){82 A ctionQueue::getInstance().getActionRegistry().registerInstance(this);82 if(AR != NULL) { 83 AR->registerInstance(this); 83 84 } 84 85 … … 128 129 { 129 130 // unregister us if still registered 130 if(ActionQueue::getInstance().isActionKnownByName(getName())) 131 if (ActionQueue::getInstance().getActionByName(getName()) == this) 132 ActionQueue::getInstance().getActionRegistry().unregisterInstance(this); 131 if (AR != NULL) 132 AR->unregisterInstance(this); 133 133 134 134 for (ActionTrait::options_const_iterator optioniter = Traits.getBeginIter(); -
src/Actions/Action.hpp
ra6ceab r0c8056 28 28 29 29 namespace MoleCuilder { 30 class ActionRegistry; 30 31 class ActionState; 31 32 class ActionSequence; … … 101 102 * 102 103 * \param Traits information class to this action 103 * \param _ doRegister whether to register with ActionRegistry104 */ 105 Action(const ActionTrait &_Traits, bool _doRegister=true);104 * \param _AR pointer to ActionRegistry to register, NULL - do not register 105 */ 106 Action(const ActionTrait &_Traits, ActionRegistry * const _AR = NULL); 106 107 virtual ~Action(); 107 108 … … 167 168 const ActionTrait Traits; 168 169 170 /** Action is registered with an ActionRegistry and stores its pointer internally. 171 * 172 */ 173 ActionRegistry* const AR; 174 169 175 protected: 170 176 /** Removes the static entities Action::success and Action::failure. -
src/Actions/Action_impl_pre.hpp
ra6ceab r0c8056 187 187 188 188 189 #include "Actions/ActionRegistry.hpp"190 189 //#include "Actions/ActionTraits.hpp" 191 190 #include "UIElements/Dialog.hpp" … … 235 234 // =========== constructor =========== 236 235 ACTION::ACTION () : 237 Action(ActionTraits< ACTION >(), false)236 Action(ActionTraits< ACTION >(), NULL) 238 237 {} 239 238 -
src/Actions/Action_impl_python.hpp
ra6ceab r0c8056 101 101 102 102 #include "Actions/Action.hpp" 103 #include "Actions/ActionRegistry.hpp"104 103 105 104 namespace MoleCuilder { -
src/Actions/AtomsCalculation_impl.hpp
ra6ceab r0c8056 22 22 template<typename T> 23 23 AtomsCalculation<T>::AtomsCalculation(boost::function<T(atom*)> _op,const ActionTrait &_trait,AtomDescriptor _descr) : 24 Calculation<std::vector<T> >(0,_trait, false),24 Calculation<std::vector<T> >(0,_trait,NULL), 25 25 descr(_descr), 26 26 op(_op) -
src/Actions/Calculation.hpp
ra6ceab r0c8056 14 14 #endif 15 15 16 17 16 #include "Actions/Process.hpp" 18 17 19 18 namespace MoleCuilder { 19 20 class ActionRegistry; 20 21 21 22 /** … … 29 30 { 30 31 public: 31 Calculation(int _maxSteps, const ActionTrait &_trait, bool _doRegister=true);32 Calculation(int _maxSteps, const ActionTrait &_trait, ActionRegistry * const _AR); 32 33 virtual ~Calculation(); 33 34 -
src/Actions/Calculation_impl.hpp
ra6ceab r0c8056 22 22 23 23 template<typename T> 24 Calculation<T>::Calculation(int _maxSteps, const ActionTrait &_trait, bool _doRegister) :25 Process(_maxSteps,_trait,_ doRegister),24 Calculation<T>::Calculation(int _maxSteps, const ActionTrait &_trait, ActionRegistry * const _AR) : 25 Process(_maxSteps,_trait,_AR), 26 26 result(0), 27 27 done(false) -
src/Actions/CommandAction/HelpRedistributeAction.cpp
ra6ceab r0c8056 38 38 #include <string> 39 39 40 #include "Actions/ActionRegistry.hpp"41 40 #include "Actions/ActionTrait.hpp" 42 #include "Actions/OptionRegistry.hpp"43 41 #include "Actions/OptionTrait.hpp" 44 42 #include "CodePatterns/Log.hpp" -
src/Actions/ErrorAction.cpp
ra6ceab r0c8056 44 44 using namespace MoleCuilder; 45 45 46 ErrorAction::ErrorAction(const ActionTrait &_trait,const char * _errorMsg, bool _doRegister) :47 Action(_trait,_ doRegister),46 ErrorAction::ErrorAction(const ActionTrait &_trait,const char * _errorMsg, ActionRegistry * const _AR) : 47 Action(_trait,_AR), 48 48 errorMsg(_errorMsg) 49 49 { -
src/Actions/ErrorAction.hpp
ra6ceab r0c8056 23 23 { 24 24 public: 25 ErrorAction(const ActionTrait &_trait,const char * _errorMsg, bool _doRegister=true);25 ErrorAction(const ActionTrait &_trait,const char * _errorMsg, ActionRegistry * const _AR); 26 26 virtual ~ErrorAction(); 27 27 -
src/Actions/MakroAction.cpp
ra6ceab r0c8056 41 41 #include "Actions/Action.hpp" 42 42 #include "Actions/ActionExceptions.hpp" 43 #include "Actions/ActionRegistry.hpp" 43 44 #include "Actions/ActionSequence.hpp" 44 45 #include "CodePatterns/Assert.hpp" … … 60 61 }; 61 62 62 MakroAction::MakroAction(const ActionTrait &_trait,ActionSequence& _actions, bool _doRegister) :63 Action(_trait,_ doRegister),63 MakroAction::MakroAction(const ActionTrait &_trait,ActionSequence& _actions, ActionRegistry * const _AR) : 64 Action(_trait,_AR), 64 65 actions(_actions) 65 66 { -
src/Actions/MakroAction.hpp
ra6ceab r0c8056 31 31 { 32 32 public: 33 MakroAction(const ActionTrait &_trait,ActionSequence& _actions, bool _doRegister=true);33 MakroAction(const ActionTrait &_trait,ActionSequence& _actions, ActionRegistry * const _AR=NULL); 34 34 virtual ~MakroAction(); 35 35 -
src/Actions/MakroAction_impl_pre.hpp
ra6ceab r0c8056 235 235 // =========== constructor =========== 236 236 ACTION::ACTION () : 237 MakroAction(ActionTraits< ACTION >(), actions, false)237 MakroAction(ActionTraits< ACTION >(), actions, NULL) 238 238 {} 239 239 -
src/Actions/ManipulateAtomsProcess.cpp
ra6ceab r0c8056 48 48 AtomDescriptor _descr, 49 49 const ActionTrait &_trait, 50 bool _doRegister) :51 Process(0,_trait,_ doRegister),50 ActionRegistry * const _AR) : 51 Process(0,_trait,_AR), 52 52 descr(_descr), 53 53 operation(_operation) -
src/Actions/ManipulateAtomsProcess.hpp
ra6ceab r0c8056 25 25 namespace MoleCuilder { 26 26 27 class ActionRegistry; 28 27 29 class ManipulateAtomsProcess : public Process 28 30 { 29 31 public: 30 ManipulateAtomsProcess(boost::function<void(atom*)> _operation, AtomDescriptor descr,const ActionTrait &_trait, bool _doRegister=true);32 ManipulateAtomsProcess(boost::function<void(atom*)> _operation, AtomDescriptor descr,const ActionTrait &_trait,ActionRegistry * const _AR); 31 33 virtual ~ManipulateAtomsProcess(); 32 34 -
src/Actions/MethodAction.cpp
ra6ceab r0c8056 44 44 using namespace MoleCuilder; 45 45 46 MethodAction::MethodAction(const ActionTrait &_trait,boost::function<void()> _executeMethod, bool _doRegister) :47 Action(_trait,_ doRegister),46 MethodAction::MethodAction(const ActionTrait &_trait,boost::function<void()> _executeMethod,ActionRegistry * const _AR) : 47 Action(_trait,_AR), 48 48 executeMethod(_executeMethod) 49 49 { -
src/Actions/MethodAction.hpp
ra6ceab r0c8056 21 21 namespace MoleCuilder { 22 22 23 class ActionRegistry; 24 23 25 /** 24 26 * Wrapper class that allows the construction of Actions from any kind of Method … … 27 29 { 28 30 public: 29 MethodAction(const ActionTrait &_trait,boost::function<void()> _executeMethod, bool _doRegister=true);31 MethodAction(const ActionTrait &_trait,boost::function<void()> _executeMethod,ActionRegistry * const _AR); 30 32 virtual ~MethodAction(); 31 33 virtual bool canUndo(); -
src/Actions/Process.cpp
ra6ceab r0c8056 41 41 using namespace MoleCuilder; 42 42 43 Process::Process(int _maxSteps, const ActionTrait &_trait, bool _doRegister) :44 Action(_trait,_ doRegister),43 Process::Process(int _maxSteps, const ActionTrait &_trait, ActionRegistry * const _AR) : 44 Action(_trait,_AR), 45 45 Observable("Process"), 46 46 maxSteps(_maxSteps), -
src/Actions/Process.hpp
ra6ceab r0c8056 28 28 namespace MoleCuilder { 29 29 30 class ActionRegistry; 31 30 32 /** 31 33 * A Process is an Action that might take some time and therefore has special … … 49 51 { 50 52 public: 51 Process(int _maxSteps, const ActionTrait &_trait, bool _doRegister=true);53 Process(int _maxSteps, const ActionTrait &_trait, ActionRegistry * const _AR); 52 54 virtual ~Process(); 53 55 -
src/Actions/Reaction.hpp
ra6ceab r0c8056 30 30 { 31 31 public: 32 Reaction(const ActionTrait &_trait, bool _doRegister=true);32 Reaction(const ActionTrait &_trait, ActionRegistry * const _AR=NULL); 33 33 virtual ~Reaction(); 34 34 -
src/Actions/Reaction_impl.hpp
ra6ceab r0c8056 23 23 24 24 template<typename T> 25 Reaction<T>::Reaction(const ActionTrait &_trait, bool _doRegister) :26 Action(_trait,_ doRegister),25 Reaction<T>::Reaction(const ActionTrait &_trait, ActionRegistry * const _AR) : 26 Action(_trait,_AR), 27 27 result(0), 28 28 done(false) -
src/Actions/Reaction_impl_pre.hpp
ra6ceab r0c8056 163 163 // =========== constructor =========== 164 164 REACTION::REACTION () : 165 Reaction< RETURNTYPE >(ActionTraits< REACTION >(), false)165 Reaction< RETURNTYPE >(ActionTraits< REACTION >(), NULL) 166 166 {} 167 167 -
src/Actions/unittests/ActionSequenceUnitTest.cpp
ra6ceab r0c8056 63 63 public: 64 64 canUndoActionStub(const ActionTrait &_trait): 65 Action(_trait, false){}65 Action(_trait,NULL){} 66 66 virtual ~canUndoActionStub(){} 67 67 … … 92 92 public: 93 93 cannotUndoActionStub(const ActionTrait &_trait) : 94 Action(_trait, false){}94 Action(_trait,NULL){} 95 95 virtual ~cannotUndoActionStub(){} 96 96 … … 121 121 public: 122 122 wasCalledActionStub(const ActionTrait &_trait) : 123 Action(_trait, false),123 Action(_trait,NULL), 124 124 called(false) 125 125 {} … … 278 278 279 279 ActionTrait MakroTrait("Test MakroAction"); 280 MakroAction act(MakroTrait,*sequence, false);280 MakroAction act(MakroTrait,*sequence,NULL); 281 281 282 282 act.call();
Note:
See TracChangeset
for help on using the changeset viewer.