comparison Core/JobsEngine/Operations/SequenceOfOperationsJob.h @ 2608:25225f0b4f33 jobs

simplification wrt. dicom connection manager
author Sebastien Jodogne <s.jodogne@gmail.com>
date Sat, 19 May 2018 15:50:09 +0200
parents 988936118354
children 2f3007bf0708
comparison
equal deleted inserted replaced
2607:44e268605478 2608:25225f0b4f33
34 #pragma once 34 #pragma once
35 35
36 #include "../IJob.h" 36 #include "../IJob.h"
37 #include "IJobOperation.h" 37 #include "IJobOperation.h"
38 38
39 #include "../../DicomNetworking/TimeoutDicomConnectionManager.h"
40
39 #include <boost/thread/mutex.hpp> 41 #include <boost/thread/mutex.hpp>
40 #include <boost/thread/condition_variable.hpp> 42 #include <boost/thread/condition_variable.hpp>
41 43
42 #include <list> 44 #include <list>
43 45
65 std::vector<Operation*> operations_; 67 std::vector<Operation*> operations_;
66 size_t current_; 68 size_t current_;
67 boost::condition_variable operationAdded_; 69 boost::condition_variable operationAdded_;
68 boost::posix_time::time_duration trailingTimeout_; 70 boost::posix_time::time_duration trailingTimeout_;
69 std::list<IObserver*> observers_; 71 std::list<IObserver*> observers_;
72 TimeoutDicomConnectionManager connectionManager_;
70 73
71 void Setup(); 74 void Setup();
72 75
73 public: 76 public:
74 SequenceOfOperationsJob() : 77 SequenceOfOperationsJob() :
108 return that_.done_; 111 return that_.done_;
109 } 112 }
110 113
111 void SetTrailingOperationTimeout(unsigned int timeout); 114 void SetTrailingOperationTimeout(unsigned int timeout);
112 115
116 void SetDicomConnectionTimeout(unsigned int timeout);
117
113 size_t AddOperation(IJobOperation* operation); 118 size_t AddOperation(IJobOperation* operation);
114 119
115 size_t GetOperationsCount() const 120 size_t GetOperationsCount() const
116 { 121 {
117 return that_.operations_.size(); 122 return that_.operations_.size();
130 135
131 virtual JobStepResult ExecuteStep(); 136 virtual JobStepResult ExecuteStep();
132 137
133 virtual void SignalResubmit(); 138 virtual void SignalResubmit();
134 139
135 virtual void ReleaseResources() 140 virtual void ReleaseResources();
136 {
137 }
138 141
139 virtual float GetProgress(); 142 virtual float GetProgress();
140 143
141 virtual void GetJobType(std::string& target) 144 virtual void GetJobType(std::string& target)
142 { 145 {