Changeset b73545 for src/Actions/ActionQueue.cpp
- Timestamp:
- Sep 15, 2014, 2:28:50 PM (10 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:
- 7f1b51
- Parents:
- 55736b (diff), 5524ae9 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)
links above to see all the changes relative to each parent. - File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/Actions/ActionQueue.cpp
r55736b rb73545 74 74 #endif 75 75 76 // free all actions contained in actionqueue 77 for (ActionQueue_t::iterator iter = actionqueue.begin(); !actionqueue.empty(); iter = actionqueue.begin()) { 78 delete *iter; 79 actionqueue.erase(iter); 80 } 76 clearQueue(); 81 77 82 78 delete history; … … 86 82 void ActionQueue::queueAction(const std::string &name, enum Action::QueryOptions state) 87 83 { 88 queueAction(AR->getActionByName(name), state); 89 } 90 91 void ActionQueue::queueAction(Action *_action, enum Action::QueryOptions state) 84 const Action * const registryaction = AR->getActionByName(name); 85 queueAction(registryaction, state); 86 } 87 88 void ActionQueue::queueAction(const Action * const _action, enum Action::QueryOptions state) 92 89 { 93 90 Action *newaction = _action->clone(state); … … 104 101 std::cerr << "Action " << *boost::get_error_info<ActionNameString>(e) << " has failed." << std::endl; 105 102 World::getInstance().setExitFlag(5); 106 actionqueue.clear(); 107 tempqueue.clear(); 103 clearQueue(); 104 lastActionOk = false; 105 std::cerr << "ActionQueue cleared." << std::endl; 106 } catch (std::exception &e) { 107 pushStatus("FAIL: General exception caught, aborting."); 108 World::getInstance().setExitFlag(134); 109 clearQueue(); 108 110 lastActionOk = false; 109 111 std::cerr << "ActionQueue cleared." << std::endl; … … 167 169 pushStatus("FAIL: Action "+*boost::get_error_info<ActionNameString>(e)+" has failed."); 168 170 World::getInstance().setExitFlag(5); 169 actionqueue.clear(); 170 tempqueue.clear(); 171 clearQueue(); 171 172 lastActionOk = false; 173 std::cerr << "ActionQueue cleared." << std::endl; 174 CurrentAction = (size_t)-1; 175 } catch (std::exception &e) { 176 pushStatus("FAIL: General exception caught, aborting."); 177 World::getInstance().setExitFlag(134); 178 clearQueue(); 172 179 std::cerr << "ActionQueue cleared." << std::endl; 173 180 CurrentAction = (size_t)-1; … … 289 296 } 290 297 298 void ActionQueue::clearQueue() 299 { 300 // free all actions contained in actionqueue 301 for (ActionQueue_t::iterator iter = actionqueue.begin(); 302 !actionqueue.empty(); iter = actionqueue.begin()) { 303 delete *iter; 304 actionqueue.erase(iter); 305 } 306 // free all actions contained in tempqueue 307 for (ActionQueue_t::iterator iter = tempqueue.begin(); 308 !tempqueue.empty(); iter = tempqueue.begin()) { 309 delete *iter; 310 tempqueue.erase(iter); 311 } 312 } 291 313 292 314 const ActionQueue::ActionTokens_t ActionQueue::getListOfActions() const
Note:
See TracChangeset
for help on using the changeset viewer.