Changeset d8821e for src/Fragmentation/Automation
- Timestamp:
- Jul 14, 2014, 11:16:23 AM (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, Candidate_v1.7.0, Candidate_v1.7.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:
- 2a03b0
- Parents:
- c73e35 (diff), a61dbb (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. - Location:
- src/Fragmentation/Automation
- Files:
-
- 5 added
- 1 deleted
- 6 edited
-
MPQCCommandFragmentController.cpp (added)
-
MPQCCommandFragmentController.hpp (added)
-
MPQCFragmentController.cpp (modified) (2 diffs)
-
MPQCFragmentController.hpp (modified) (1 diff)
-
Makefile.am (modified) (3 diffs)
-
ResultContainer.hpp (added)
-
ResultContainer_impl.hpp (added)
-
SpecificFragmentController.hpp (modified) (4 diffs)
-
SpecificFragmentController_ReceiveResultContainer_impl.hpp (added)
-
SpecificFragmentController_ResultContainer_impl.hpp (deleted)
-
VMGDebugGridFragmentController.hpp (modified) (1 diff)
-
VMGFragmentController.hpp (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
src/Fragmentation/Automation/MPQCFragmentController.cpp
rc73e35 rd8821e 57 57 ) 58 58 { 59 bool status = true; 59 60 // give them all valid ids 60 61 std::vector<FragmentJob::ptr> newjobs = FragmentJobQueue::getInstance().getJobs(); … … 65 66 job->DoLongrange = _DoLongrange; 66 67 job->DoValenceOnly = _DoValenceOnly; 67 changeJobId((*jobiter), getAvailableId()); 68 JobId_t id = getAvailableId(); 69 if (id == FragmentJob::IllegalJob) { 70 status = false; 71 break; 72 } 73 changeJobId((*jobiter), id); 68 74 } 69 75 // add the jobs 70 76 addJobs(newjobs); 77 status &= (newjobs.size() != 0); 71 78 72 return (newjobs.size() != 0);79 return status; 73 80 } 74 81 -
src/Fragmentation/Automation/MPQCFragmentController.hpp
rc73e35 rd8821e 70 70 private: 71 71 //!> type-specific result container 72 SpecificFragmentController::Re sultContainer<MPQCData> results;72 SpecificFragmentController::ReceiveResultContainer<MPQCData> results; 73 73 }; 74 74 -
src/Fragmentation/Automation/Makefile.am
rc73e35 rd8821e 4 4 FRAGMENTATIONAUTOMATIONSOURCE = \ 5 5 Fragmentation/Automation/FragmentJobQueue.cpp \ 6 Fragmentation/Automation/MPQCCommandFragmentController.cpp 7 8 if CONDJOBMARKET 9 FRAGMENTATIONAUTOMATIONSOURCE += \ 6 10 Fragmentation/Automation/MPQCFragmentController.cpp \ 7 11 Fragmentation/Automation/SpecificFragmentController.cpp … … 13 17 endif 14 18 19 endif 20 15 21 FRAGMENTATIONAUTOMATIONHEADER = \ 16 22 Fragmentation/Automation/FragmentJobQueue.hpp \ 23 Fragmentation/Automation/MPQCCommandFragmentController.hpp \ 24 Fragmentation/Automation/ResultContainer.hpp \ 25 Fragmentation/Automation/ResultContainer_impl.hpp 26 27 if CONDJOBMARKET 28 FRAGMENTATIONAUTOMATIONHEADER += \ 17 29 Fragmentation/Automation/MPQCFragmentController.hpp \ 18 30 Fragmentation/Automation/SpecificFragmentController.hpp \ 19 Fragmentation/Automation/SpecificFragmentController_Re sultContainer_impl.hpp31 Fragmentation/Automation/SpecificFragmentController_ReceiveResultContainer_impl.hpp 20 32 21 33 if CONDVMG … … 23 35 Fragmentation/Automation/VMGDebugGridFragmentController.hpp \ 24 36 Fragmentation/Automation/VMGFragmentController.hpp 37 endif 25 38 endif 26 39 -
src/Fragmentation/Automation/SpecificFragmentController.hpp
rc73e35 rd8821e 23 23 #include <string> 24 24 #include <vector> 25 26 #include "Fragmentation/Automation/ResultContainer.hpp" 25 27 26 28 /** This class extends FragmentController by some commodity functions used … … 58 60 * This struct takes of the waiting. 59 61 * 62 * We extend ResultContainer by functions to receive results from a 63 * JobMarket server. 64 * 60 65 */ 61 66 template <typename T> 62 struct Re sultContainer{67 struct ReceiveResultContainer : public ResultContainer<T> { 63 68 /** cycle to wait for results 64 69 * … … 78 83 */ 79 84 size_t receiveResults(SpecificFragmentController &callback); 80 81 /** Extracts specific Data type from received vector of FragmentResults.82 *83 * @param results results to extract specific Data type from84 * @param fragmentData on return array filled with extracted specific Data type85 */86 void ConvertFragmentResultTo(87 const std::vector<FragmentResult::ptr> &results,88 std::vector<T> &fragmentData);89 90 /** Clears all internally stored results.91 *92 */93 void clear()94 { IdData.clear(); }95 96 //!> internal container for the received data97 std::map<JobId_t, T> IdData;98 85 }; 99 86 … … 109 96 }; 110 97 111 #include "SpecificFragmentController_Re sultContainer_impl.hpp"98 #include "SpecificFragmentController_ReceiveResultContainer_impl.hpp" 112 99 113 100 #endif /* SPECIFICFRAGMENTCONTROLLER_HPP_ */ -
src/Fragmentation/Automation/VMGDebugGridFragmentController.hpp
rc73e35 rd8821e 55 55 private: 56 56 //!> type-specific result container 57 SpecificFragmentController::Re sultContainer<std::string> results;57 SpecificFragmentController::ReceiveResultContainer<std::string> results; 58 58 }; 59 59 -
src/Fragmentation/Automation/VMGFragmentController.hpp
rc73e35 rd8821e 89 89 private: 90 90 //!> type-specific result container 91 SpecificFragmentController::Re sultContainer<VMGData> results;91 SpecificFragmentController::ReceiveResultContainer<VMGData> results; 92 92 }; 93 93
Note:
See TracChangeset
for help on using the changeset viewer.
