- 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:
- 690741
- Parents:
- 628577
- git-author:
- Frederik Heber <heber@…> (08/16/13 11:15:29)
- git-committer:
- Frederik Heber <heber@…> (09/19/13 20:23:52)
- Location:
- src
- Files:
-
- 16 edited
Legend:
- Unmodified
- Added
- Removed
-
src/Actions/Action.cpp
r628577 r1d3563 128 128 { 129 129 // unregister us if still registered 130 if(ActionQueue::getInstance(). getActionRegistry().isActionPresentByName(getName()))131 if (ActionQueue::getInstance().getAction Registry().getActionByName(getName()) == this)130 if(ActionQueue::getInstance().isActionKnownByName(getName())) 131 if (ActionQueue::getInstance().getActionByName(getName()) == this) 132 132 ActionQueue::getInstance().getActionRegistry().unregisterInstance(this); 133 133 -
src/Actions/ActionQueue.cpp
r628577 r1d3563 35 35 #include "CodePatterns/MemDebug.hpp" 36 36 37 #include "Action Queue.hpp"37 #include "Actions/ActionQueue.hpp" 38 38 39 39 #include "CodePatterns/Singleton_impl.hpp" … … 47 47 {} 48 48 49 Action* ActionQueue::getActionByName(const std::string name) 50 { 51 return AR.getActionByName(name); 52 } 53 54 bool ActionQueue::isActionKnownByName(const std::string name) const 55 { 56 return AR.isActionPresentByName(name); 57 } 58 59 int ActionQueue::getLastPosition(const std::string &MenuName) const 60 { 61 return AR.getLastPosition(MenuName); 62 } 63 49 64 CONSTRUCT_SINGLETON(ActionQueue) -
src/Actions/ActionQueue.hpp
r628577 r1d3563 16 16 #include "CodePatterns/Singleton.hpp" 17 17 18 #include <list> 19 18 20 #include "Actions/ActionRegistry.hpp" 19 21 … … 24 26 /** This class combines the whole handling of Actions into a single class. 25 27 * 26 * It spawns new Actions by its internal ActionRegistry. 28 * It spawns new Actions by its internal ActionRegistry. Spawned Actions are 29 * automatically queued and placed into a History after execution. 27 30 */ 28 31 class ActionQueue : public Singleton<ActionQueue> … … 30 33 friend class Singleton<ActionQueue>; 31 34 public: 35 typedef std::list<Action *> ActionQueue_t; 36 37 /** Returns the spawned action by token \a name. 38 * 39 * Action is checked into internal queue. 40 * 41 * \return pointer to newly spawned action 42 */ 43 Action* getActionByName(const std::string name); 44 45 /** Checks whether the Action is known by the given \a name. 46 * 47 * \param name token of action to check 48 * \return true - token is known, false - else 49 */ 50 bool isActionKnownByName(const std::string name) const; 51 52 /** Returns the last taken position for the Menu with \a MenuName. 53 * 54 * \param MenuName name of menu to check for last position 55 * \return index of last position 56 */ 57 int getLastPosition(const std::string &MenuName) const; 58 32 59 /** Getter function for the ActionRegistry for transitional purpose. 33 60 * … … 38 65 } 39 66 67 40 68 private: 69 /** Private cstor for ActionQueue. 70 * 71 * Must be private as is singleton. 72 * 73 */ 41 74 ActionQueue(); 75 76 /** Dstor for ActionQueue. 77 * 78 */ 42 79 ~ActionQueue(); 43 80 44 81 //!> ActionRegistry to spawn new actions 45 82 ActionRegistry AR; 83 84 //!> internal queue of actions 85 ActionQueue_t queue; 46 86 }; 47 87 -
src/Actions/Action_impl_pre.hpp
r628577 r1d3563 290 290 ) 291 291 { 292 ACTION *ToCall = dynamic_cast<ACTION*>(ActionQueue::getInstance().getAction Registry().getActionByName( TOKEN )); //->clone(params);292 ACTION *ToCall = dynamic_cast<ACTION*>(ActionQueue::getInstance().getActionByName( TOKEN )); //->clone(params); 293 293 //ACTION::PARAMS params; 294 294 #if defined paramreferences && BOOST_PP_NOT_EQUAL(MAXPARAMTYPES,0) … … 307 307 #endif 308 308 ) { 309 ACTION *ToCall = dynamic_cast<ACTION*>(ActionQueue::getInstance().getAction Registry().getActionByName( TOKEN )); //->clone(params);309 ACTION *ToCall = dynamic_cast<ACTION*>(ActionQueue::getInstance().getActionByName( TOKEN )); //->clone(params); 310 310 //ACTION::PARAMS params; 311 311 #if defined paramtypes && defined paramtypes && BOOST_PP_NOT_EQUAL(MAXPARAMTYPES,0) -
src/Actions/CommandAction/HelpAction.cpp
r628577 r1d3563 78 78 std::cout << std::endl; 79 79 // print list of actions or its options 80 ActionRegistry &AR = ActionQueue::getInstance().getActionRegistry(); 80 ActionQueue &AQ = ActionQueue::getInstance(); 81 ActionRegistry &AR = AQ.getActionRegistry(); 81 82 if (params.actionname.get() == std::string("none")) { 82 83 // print list of all Actions … … 91 92 } else { 92 93 // retrieve command from Registry and print its help 93 if (A R.isActionPresentByName(params.actionname.get())) {94 const Action *instance = A R.getActionByName(params.actionname.get());94 if (AQ.isActionKnownByName(params.actionname.get())) { 95 const Action *instance = AQ.getActionByName(params.actionname.get()); 95 96 // else give description of Action and its option value if present 96 97 std::cout << instance->help(); -
src/Actions/FragmentationAction/MolecularDynamicsAction.cpp
r628577 r1d3563 71 71 Action::state_ptr FragmentationMolecularDynamicsAction::performCall(){ 72 72 // now we can truely prepare 73 Action Registry &AR = ActionQueue::getInstance().getActionRegistry();73 ActionQueue &AQ = ActionQueue::getInstance(); 74 74 // perform a verlet-integration first, if there are already forces or velocities 75 75 // present. If not, we still copy the position cleanly into a new step where then 76 76 // forces are set according to summed fragmentary contributions. This is much cleaner. 77 actions.addAction(A R.getActionByName(std::string("verlet-integration")));77 actions.addAction(AQ.getActionByName(std::string("verlet-integration"))); 78 78 if (params.DoOutput.get()) 79 actions.addAction(A R.getActionByName(std::string("output")));80 actions.addAction(A R.getActionByName(std::string("fragment-molecule")));81 actions.addAction(A R.getActionByName(std::string("fragment-automation")));82 actions.addAction(A R.getActionByName(std::string("analyse-fragment-results")));79 actions.addAction(AQ.getActionByName(std::string("output"))); 80 actions.addAction(AQ.getActionByName(std::string("fragment-molecule"))); 81 actions.addAction(AQ.getActionByName(std::string("fragment-automation"))); 82 actions.addAction(AQ.getActionByName(std::string("analyse-fragment-results"))); 83 83 setLoop(params.steps.get()); 84 84 isPrepared = true; -
src/Actions/GraphAction/SubgraphDissectionAction.cpp
r628577 r1d3563 151 151 ) 152 152 { 153 ACTION *ToCall = dynamic_cast<ACTION*>(ActionQueue::getInstance().getAction Registry().getActionByName( TOKEN )); //->clone(params);153 ACTION *ToCall = dynamic_cast<ACTION*>(ActionQueue::getInstance().getActionByName( TOKEN )); //->clone(params); 154 154 //ACTION::PARAMS params; 155 155 #if defined paramreferences && BOOST_PP_NOT_EQUAL(MAXPARAMTYPES,0) … … 168 168 #endif 169 169 ) { 170 ACTION *ToCall = dynamic_cast<ACTION*>(ActionQueue::getInstance().getAction Registry().getActionByName( TOKEN )); //->clone(params);170 ACTION *ToCall = dynamic_cast<ACTION*>(ActionQueue::getInstance().getActionByName( TOKEN )); //->clone(params); 171 171 //ACTION::PARAMS params; 172 172 #if defined paramtypes && defined paramtypes && BOOST_PP_NOT_EQUAL(MAXPARAMTYPES,0) -
src/Actions/MakroAction_impl_pre.hpp
r628577 r1d3563 290 290 ) 291 291 { 292 ACTION *ToCall = dynamic_cast<ACTION*>(ActionQueue::getInstance().getAction Registry().getActionByName( TOKEN )); //->clone(params);292 ACTION *ToCall = dynamic_cast<ACTION*>(ActionQueue::getInstance().getActionByName( TOKEN )); //->clone(params); 293 293 //ACTION::PARAMS params; 294 294 #if defined paramreferences && BOOST_PP_NOT_EQUAL(MAXPARAMTYPES,0) … … 307 307 #endif 308 308 ) { 309 ACTION *ToCall = dynamic_cast<ACTION*>(ActionQueue::getInstance().getAction Registry().getActionByName( TOKEN )); //->clone(params);309 ACTION *ToCall = dynamic_cast<ACTION*>(ActionQueue::getInstance().getActionByName( TOKEN )); //->clone(params); 310 310 //ACTION::PARAMS params; 311 311 #if defined paramtypes && defined paramtypes && BOOST_PP_NOT_EQUAL(MAXPARAMTYPES,0) -
src/Actions/Reaction_impl_pre.hpp
r628577 r1d3563 194 194 ) 195 195 { 196 Action *ToCall = ActionQueue::getInstance().getAction Registry().getActionByName( TOKEN ); //->clone(params);196 Action *ToCall = ActionQueue::getInstance().getActionByName( TOKEN ); //->clone(params); 197 197 //REACTION::PARAMS params; 198 198 #if BOOST_PP_NOT_EQUAL(MAXPARAMTYPES,0) … … 213 213 #endif 214 214 ) { 215 Action *ToCall = ActionQueue::getInstance().getAction Registry().getActionByName( TOKEN ); //->clone(params);215 Action *ToCall = ActionQueue::getInstance().getActionByName( TOKEN ); //->clone(params); 216 216 //REACTION::PARAMS params; 217 217 #if BOOST_PP_NOT_EQUAL(MAXPARAMTYPES,0) -
src/Parameters/Validators/Specific/ActionNameValidator.cpp
r628577 r1d3563 43 43 { 44 44 if (MoleCuilder::ActionRegistry::getCompletely_instatiated()) 45 return MoleCuilder::ActionQueue::getInstance(). getActionRegistry().isActionPresentByName(_value);45 return MoleCuilder::ActionQueue::getInstance().isActionKnownByName(_value); 46 46 else 47 47 return false; -
src/UIElements/CommandLineUI/CommandLineWindow.cpp
r628577 r1d3563 65 65 66 66 void CommandLineWindow::display() { 67 Action Registry &AR = ActionQueue::getInstance().getActionRegistry();67 ActionQueue &AQ = ActionQueue::getInstance(); 68 68 //cout << AR; 69 69 … … 71 71 LOG(0, "Calling Actions ... "); 72 72 for (std::list<std::string>::iterator CommandRunner = CommandLineParser::getInstance().SequenceOfActions.begin(); CommandRunner != CommandLineParser::getInstance().SequenceOfActions.end(); ++CommandRunner) { 73 if (A R.isActionPresentByName(*CommandRunner)) {73 if (AQ.isActionKnownByName(*CommandRunner)) { 74 74 // LOG1, "INFO: Checking presence of " << *CommandRunner << ": " << "calling " << *CommandRunner); 75 A R.getActionByName(*CommandRunner)->call();75 AQ.getActionByName(*CommandRunner)->call(); 76 76 } else { 77 77 // LOG(1, "INFO: Checking presence of " << *CommandRunner << ": " << "absent."); -
src/UIElements/Menu/Qt4/QtMenuPipe.cpp
r628577 r1d3563 55 55 56 56 void QtMenuPipe::called() { 57 Action* action = ActionQueue::getInstance().getAction Registry().getActionByName(ActionName);57 Action* action = ActionQueue::getInstance().getActionByName(ActionName); 58 58 try{ 59 59 action->call(); -
src/UIElements/Menu/TextMenu/ActionMenuItem.cpp
r628577 r1d3563 53 53 54 54 void ActionMenuItem::doTrigger() { 55 Action* action = ActionQueue::getInstance().getAction Registry().getActionByName(ActionName);55 Action* action = ActionQueue::getInstance().getActionByName(ActionName); 56 56 action->call(); 57 57 } 58 58 59 59 bool ActionMenuItem::isActive() { 60 Action* action = ActionQueue::getInstance().getAction Registry().getActionByName(ActionName);60 Action* action = ActionQueue::getInstance().getActionByName(ActionName); 61 61 return action->isActive(); 62 62 } -
src/UIElements/Menu/TextMenu/TextMenu.hpp
r628577 r1d3563 148 148 MoleCuilder::OptionTrait("leave"+token, &typeid(void), "leave menu "+token), 149 149 token, 150 MoleCuilder::ActionQueue::getInstance().get ActionRegistry().getLastPosition(token)+2); // have a separator in between150 MoleCuilder::ActionQueue::getInstance().getLastPosition(token)+2); // have a separator in between 151 151 new TxMenu::LeaveAction(NewMenu->getMenuInstance(), leaveTrait); 152 152 NewMenu->init(); -
src/UIElements/Qt4/QtMainWindow.cpp
r628577 r1d3563 172 172 MoleCuilder::WorldOutput(); 173 173 else{ 174 Action* action = ActionQueue::getInstance().getAction Registry().getActionByName("output-as");174 Action* action = ActionQueue::getInstance().getActionByName("output-as"); 175 175 try{ 176 176 action->call(); -
src/UIElements/TextUI/TextWindow.cpp
r628577 r1d3563 86 86 87 87 // save has reserved key 's' 88 // Action *saveConfigAction = ActionQueue::getInstance().getAction Registry().getActionByName("output");88 // Action *saveConfigAction = ActionQueue::getInstance().getActionByName("output"); 89 89 new ActionMenuItem('s',"save current setup to config files",main_menu->getMenuInstance(),"output"); 90 90
Note:
See TracChangeset
for help on using the changeset viewer.