source: src/Jobs/JobMarket/JobId.hpp

Candidate_v1.6.1
Last change on this file was c3de51, checked in by Frederik Heber <heber@…>, 11 years ago

Added FragmentJob, ..Result, JobId, SystemCommandJob, and types from JobMarket.

  • taken over from version v1.1.4 with disclaimer adapted.
  • changed include paths to JobMarket -> Jobs/JobMarket.
  • these files are only used when no HAVE_JOBMARKET is defined.
  • SystemCommandJob had Info, causing extra Chronos entry.
  • Property mode set to 100644
File size: 977 bytes
Line 
1/*
2 * JobId.hpp
3 *
4 * Originally taken from my JobMarket project at 1.1.4.
5 *
6 * Created on: Oct 23, 2011
7 * Author: heber
8 */
9
10#ifndef JOBID_HPP_
11#define JOBID_HPP_
12
13// include config.h
14#ifdef HAVE_CONFIG_H
15#include <config.h>
16#endif
17
18#include "boost/serialization/access.hpp"
19
20#ifdef HAVE_JOBMARKET
21#include "JobMarket/types.hpp"
22#else
23#include "Jobs/JobMarket/types.hpp"
24#endif
25
26
27/** Class simply contains an Id along with getter and setter,
28 *
29 */
30class JobId
31{
32public:
33 JobId();
34 JobId(const JobId_t id);
35 ~JobId();
36
37 enum {
38 NoJob = 0,
39 IllegalJob = -1
40 };
41
42 const JobId_t getId() const;
43
44protected:
45 void setId(const JobId_t id);
46
47private:
48 friend class boost::serialization::access;
49 // serialization
50 template <typename Archive>
51 void serialize(Archive& ar, const unsigned int version)
52 {
53 ar & id;
54 }
55
56private:
57 //!> unique id of this job (used for the temporary filename) and associating result
58 JobId_t id;
59};
60
61#endif /* JOBID_HPP_ */
Note: See TracBrowser for help on using the repository browser.