source: ThirdParty/JobMarket/src/JobMarket/Results/FragmentResult.hpp@ 363f28

Action_Thermostats Add_AtomRandomPerturbation Add_RotateAroundBondAction Add_SelectAtomByNameAction Adding_Graph_to_ChangeBondActions Adding_MD_integration_tests Adding_StructOpt_integration_tests Automaking_mpqc_open AutomationFragmentation_failures Candidate_v1.6.0 Candidate_v1.6.1 ChangeBugEmailaddress ChangingTestPorts ChemicalSpaceEvaluator Combining_Subpackages Debian_Package_split Debian_package_split_molecuildergui_only Disabling_MemDebug Docu_Python_wait EmpiricalPotential_contain_HomologyGraph_documentation Enable_parallel_make_install Enhance_userguide Enhanced_StructuralOptimization Enhanced_StructuralOptimization_continued Example_ManyWaysToTranslateAtom Exclude_Hydrogens_annealWithBondGraph FitPartialCharges_GlobalError Fix_ChronosMutex Fix_StatusMsg Fix_StepWorldTime_single_argument Fix_Verbose_Codepatterns ForceAnnealing_goodresults ForceAnnealing_oldresults ForceAnnealing_tocheck ForceAnnealing_with_BondGraph ForceAnnealing_with_BondGraph_continued ForceAnnealing_with_BondGraph_continued_betteresults ForceAnnealing_with_BondGraph_contraction-expansion GeometryObjects Gui_displays_atomic_force_velocity IndependentFragmentGrids_IntegrationTest JobMarket_RobustOnKillsSegFaults JobMarket_StableWorkerPool JobMarket_unresolvable_hostname_fix ODR_violation_mpqc_open PartialCharges_OrthogonalSummation PythonUI_with_named_parameters QtGui_reactivate_TimeChanged_changes Recreated_GuiChecks RotateToPrincipalAxisSystem_UndoRedo StoppableMakroAction Subpackage_JobMarket Subpackage_levmar Subpackage_mpqc_open Subpackage_vmg ThirdParty_MPQC_rebuilt_buildsystem TremoloParser_IncreasedPrecision TremoloParser_MultipleTimesteps Ubuntu_1604_changes stable
Last change on this file since 363f28 was 363f28, checked in by Frederik Heber <heber@…>, 8 years ago

Merge commit '404d2be35f6544290132fcbe8f79a4ff9c6584ad' as 'ThirdParty/JobMarket'

  • Property mode set to 100644
File size: 1.6 KB
Line 
1/*
2 * FragmentResult.hpp
3 *
4 * Created on: Oct 19, 2011
5 * Author: heber
6 */
7
8#ifndef FRAGMENTRESULT_HPP_
9#define FRAGMENTRESULT_HPP_
10
11// include config.h
12#ifdef HAVE_CONFIG_H
13#include <config.h>
14#endif
15
16
17#include <string>
18
19#include <boost/shared_ptr.hpp>
20#include <boost/serialization/array.hpp>
21#include <boost/serialization/shared_ptr.hpp>
22
23#include "JobMarket/JobId.hpp"
24#include "JobMarket/types.hpp"
25
26class FragmentQueueTest;
27class FragmentResultTest;
28
29/** This class contains the result to a specific FragmentJob.
30 *
31 */
32class FragmentResult : public JobId
33{
34 //!> allow FragmentQueue unit test access
35 friend class FragmentQueueTest;
36 //!> allow own unit test access
37 friend class FragmentResultTest;
38public:
39 typedef boost::shared_ptr<FragmentResult> ptr;
40
41 FragmentResult(const JobId_t id);
42 FragmentResult(const JobId_t id, const std::string &_result);
43 FragmentResult(const FragmentResult &other);
44 ~FragmentResult();
45
46 FragmentResult& operator=(const FragmentResult &other);
47 bool operator==(const FragmentResult &other) const;
48 bool operator!=(const FragmentResult &other) const
49 { return !(*this == other); }
50
51 //!> result
52 std::string result;
53
54 //!> exit flag
55 int exitflag;
56
57 //!> time needed for Work()
58 double time_Work;
59
60private:
61 friend class boost::serialization::access;
62
63 /// private default constructor for serialization only.
64 FragmentResult();
65
66 // serialization
67 template <typename Archive>
68 void serialize(Archive& ar, const unsigned int version)
69 {
70 ar & boost::serialization::base_object<JobId>(*this);
71 ar & result;
72 ar & exitflag;
73 ar & time_Work;
74 }
75};
76
77
78#endif /* FRAGMENTRESULT_HPP_ */
Note: See TracBrowser for help on using the repository browser.