Go to the documentation of this file.
12 #include <boost/thread.hpp>
26 using Ptr = boost::shared_ptr<ProgressStateInterface>;
27 using WeakPtr = boost::weak_ptr<ProgressStateInterface>;
48 void setWaiting(
double progress = 0.0)
override;
56 using Ptr = boost::shared_ptr<ProgressInterfaceFromProgressStateInterfaceForwarder>;
83 using Ptr = boost::shared_ptr<ProgressStateInterfaceFromProgressInterfaceForwarder>;
96 void setWaiting(
double progress = 0.0)
override;
106 using Ptr = boost::shared_ptr<ProgressStore>;
127 :
virtual public Base
131 using Ptr = boost::shared_ptr<ProgressInterfaceBroadcaster>;
137 using Ptr = boost::shared_ptr<Unsubscriber>;
176 void setWaiting(
double progress = 0.0)
override;
184 using Ptr = boost::shared_ptr<ProgressInterfaceMultiplexer>;
190 using Ptr = boost::shared_ptr<ChildData>;
212 using Ptr = boost::shared_ptr<Child>;
void setWaiting(double progress=0.0) override
Definition: progressinterfacehelpers.cc:21
~Child() override
Definition: progressinterfacehelpers.cc:227
Definition: assertions.hh:14
boost::shared_ptr< ProgressStateInterface > Ptr
Definition: progressinterfacehelpers.hh:26
static Ptr create(ProgressInterface::Ptr child)
Definition: progressinterfacehelpers.cc:76
static Ptr create()
Definition: progressinterfacehelpers.cc:200
boost::mutex mut
Definition: progressinterfacehelpers.hh:193
static Ptr create(ProgressInterfaceBroadcaster::Ptr const &parent, ProgressInterface::Ptr const &child)
Definition: progressinterfacehelpers.cc:183
void setWorking(double progress) override
Definition: progressinterfacehelpers.cc:23
void unsubscribe(const ChildData::Ptr &data)
Definition: progressinterfacehelpers.cc:268
double progress
Definition: progressinterfacehelpers.hh:110
ProgressInterfaceMultiplexer::Ptr parent
Definition: progressinterfacehelpers.hh:215
Definition: progressinterfacehelpers.hh:134
void setIdle() override
Definition: progressinterfacehelpers.cc:19
void setFinished() override
Definition: progressinterfacehelpers.cc:87
@ FINISHED
Definition: progressinterfacehelpers.hh:34
Definition: progressinterfacehelpers.hh:187
ProgressInterfaceMultiplexer(ProgressInterface::Ptr parent)
Definition: progressinterfacehelpers.cc:247
boost::shared_ptr< ProgressInterface > Ptr
Definition: progressinterface.hh:20
std::set< ProgressInterface::Ptr > children
Definition: progressinterfacehelpers.hh:159
Definition: progressinterfacehelpers.hh:72
Definition: progressinterface.hh:17
Unsubscriber & operator=(const Unsubscriber &)=delete
boost::shared_ptr< ProgressInterfaceMultiplexer > Ptr
Definition: progressinterfacehelpers.hh:184
boost::shared_ptr< ProgressStore > Ptr
Definition: progressinterfacehelpers.hh:106
void setProgress(State s, double progress=0.0) override
Definition: progressinterfacehelpers.cc:239
Definition: progressinterfacehelpers.hh:40
void setFinished() override
Definition: progressinterfacehelpers.cc:171
void setProgress(State s, double progress=0.0) override
Definition: progressinterfacehelpers.cc:202
Stuff subscribe(ProgressInterface::Ptr const &child)
Definition: progressinterfacehelpers.cc:130
void setProgress(State s, double progress=0.0) override
Definition: progressinterfacehelpers.cc:114
ProgressInterfaceBroadcaster()
Definition: progressinterfacehelpers.cc:124
static Ptr create()
Definition: progressinterfacehelpers.cc:122
boost::shared_ptr< Unsubscriber > Ptr
Definition: progressinterfacehelpers.hh:137
void setWaiting(double progress=0.0) override
Definition: progressinterfacehelpers.cc:83
void setFinished() override
Definition: progressinterfacehelpers.cc:25
@ WAITING
Definition: progressinterfacehelpers.hh:32
std::set< ChildData::Ptr > children
Definition: progressinterfacehelpers.hh:239
boost::mutex mut
Definition: progressinterfacehelpers.hh:237
void init(ProgressInterface::Ptr const &i)
Definition: progressinterfacehelpers.cc:95
ProgressStateInterface::Ptr parent
Definition: progressinterfacehelpers.hh:238
Definition: progressinterfacehelpers.hh:181
boost::mutex mut
Definition: progressinterfacehelpers.hh:158
State
Definition: progressinterfacehelpers.hh:29
void unsubscribe(ProgressInterface::Ptr const &child)
Definition: progressinterfacehelpers.cc:138
void setWorking(double progress) override
Definition: progressinterfacehelpers.cc:162
ProgressStateInterfaceFromProgressInterfaceForwarder(ProgressInterface::Ptr child)
Definition: progressinterfacehelpers.cc:69
ProgressStateInterface::State state
Definition: progressinterfacehelpers.hh:194
virtual void setProgress(State s, double progress=0.0)=0
void setProgress(State s, double progress=0.0) override
Definition: progressinterfacehelpers.cc:48
void setWorking(double progress) override
Definition: progressinterfacehelpers.cc:85
Definition: utilities.hh:30
void setIdle() override
Definition: progressinterfacehelpers.cc:144
Child & operator=(const Child &)=delete
void setProgress(State s, double progress=0.0) override
Definition: progressinterfacehelpers.cc:41
boost::shared_ptr< void > Stuff
Definition: stuff.hh:18
Definition: progressinterfacehelpers.hh:209
ProgressInterface::Ptr child
Definition: progressinterfacehelpers.hh:86
State state
Definition: progressinterfacehelpers.hh:109
~Unsubscriber()
Definition: progressinterfacehelpers.cc:196
Definition: interface.hh:10
Definition: progressinterfacehelpers.hh:80
boost::weak_ptr< ProgressStateInterface > WeakPtr
Definition: progressinterfacehelpers.hh:27
Detail::ProgressStore::Ptr store
Definition: progressinterfacehelpers.hh:160
Definition: progressinterfacehelpers.hh:103
void clearFinished()
Definition: progressinterfacehelpers.cc:209
ProgressInterfaceBroadcaster::Ptr parent
Definition: progressinterfacehelpers.hh:140
ProgressInterfaceFromProgressStateInterfaceForwarder(ProgressStateInterface::Ptr child)
Definition: progressinterfacehelpers.cc:29
double progress
Definition: progressinterfacehelpers.hh:195
static Ptr create(ProgressInterfaceMultiplexer::Ptr parent, ChildData::Ptr data)
Definition: progressinterfacehelpers.cc:233
void setWaiting(double progress=0.0) override
Definition: progressinterfacehelpers.cc:153
Definition: progressinterfacehelpers.hh:53
Definition: async-deleter.hh:12
@ IDLE
Definition: progressinterfacehelpers.hh:31
ChildData::Ptr data
Definition: progressinterfacehelpers.hh:216
static Ptr create()
Definition: progressinterfacehelpers.cc:93
ProgressInterface::Ptr createProgressInterface()
Definition: progressinterfacehelpers.cc:257
boost::shared_ptr< ProgressInterfaceBroadcaster > Ptr
Definition: progressinterfacehelpers.hh:131
boost::shared_ptr< ChildData > Ptr
Definition: progressinterfacehelpers.hh:190
Definition: progressinterfacehelpers.hh:126
ProgressStateInterface::Ptr child
Definition: progressinterfacehelpers.hh:59
Definition: progressinterfacehelpers.hh:23
Child(ProgressInterfaceMultiplexer::Ptr parent, ChildData::Ptr data)
Definition: progressinterfacehelpers.cc:221
Unsubscriber(ProgressInterfaceBroadcaster::Ptr parent, ProgressInterface::Ptr child)
Definition: progressinterfacehelpers.cc:189
void updateProgressState()
Definition: progressinterfacehelpers.cc:274
static Ptr create(ProgressInterface::Ptr parent)
Definition: progressinterfacehelpers.cc:252
static Ptr create(ProgressStateInterface::Ptr child)
Definition: progressinterfacehelpers.cc:36
@ WORKING
Definition: progressinterfacehelpers.hh:33
void setIdle() override
Definition: progressinterfacehelpers.cc:81
ProgressInterface::Ptr child
Definition: progressinterfacehelpers.hh:141