Scroom  0.14
Scroom::Utils::ProgressInterfaceMultiplexer::Child Class Reference
Inheritance diagram for Scroom::Utils::ProgressInterfaceMultiplexer::Child:
Inheritance graph
Collaboration diagram for Scroom::Utils::ProgressInterfaceMultiplexer::Child:
Collaboration graph

Public Types

using Ptr = boost::shared_ptr< Child >
 
- Public Types inherited from ProgressInterface
using Ptr = boost::shared_ptr< ProgressInterface >
 
using WeakPtr = boost::weak_ptr< ProgressInterface >
 

Public Member Functions

 Child (const Child &)=delete
 
 Child (Child &&)=delete
 
Childoperator= (const Child &)=delete
 
Childoperator= (Child &&)=delete
 
 ~Child () override
 
void setProgress (State s, double progress=0.0) override
 
- Public Member Functions inherited from Scroom::Utils::ProgressInterfaceFromProgressStateInterface
void setIdle () override
 
void setWaiting (double progress=0.0) override
 
void setWorking (double progress) override
 
void setFinished () override
 

Static Public Member Functions

static Ptr create (ProgressInterfaceMultiplexer::Ptr parent, ChildData::Ptr data)
 

Private Member Functions

 Child (ProgressInterfaceMultiplexer::Ptr parent, ChildData::Ptr data)
 

Private Attributes

ProgressInterfaceMultiplexer::Ptr parent
 
ChildData::Ptr data
 

Additional Inherited Members

- Protected Types inherited from Scroom::Utils::ProgressStateInterface
enum  State { IDLE, WAITING, WORKING, FINISHED }
 
using Ptr = boost::shared_ptr< ProgressStateInterface >
 
using WeakPtr = boost::weak_ptr< ProgressStateInterface >
 

Member Typedef Documentation

◆ Ptr

Constructor & Destructor Documentation

◆ Child() [1/3]

Scroom::Utils::ProgressInterfaceMultiplexer::Child::Child ( ProgressInterfaceMultiplexer::Ptr  parent,
ChildData::Ptr  data 
)
private
222  : parent(std::move(parent_))
223  , data(std::move(data_))
224  {
225  }

◆ Child() [2/3]

Scroom::Utils::ProgressInterfaceMultiplexer::Child::Child ( const Child )
delete

◆ Child() [3/3]

Scroom::Utils::ProgressInterfaceMultiplexer::Child::Child ( Child &&  )
delete

◆ ~Child()

Scroom::Utils::ProgressInterfaceMultiplexer::Child::~Child ( )
override
228  {
229  parent->unsubscribe(data);
230  parent->updateProgressState();
231  }

Member Function Documentation

◆ create()

ProgressInterfaceMultiplexer::Child::Ptr Scroom::Utils::ProgressInterfaceMultiplexer::Child::create ( ProgressInterfaceMultiplexer::Ptr  parent,
ChildData::Ptr  data 
)
static
235  {
236  return Ptr(new Child(std::move(parent), std::move(data)));
237  }

Referenced by Scroom::Utils::ProgressInterfaceMultiplexer::createProgressInterface().

Here is the caller graph for this function:

◆ operator=() [1/2]

Child& Scroom::Utils::ProgressInterfaceMultiplexer::Child::operator= ( Child &&  )
delete

◆ operator=() [2/2]

Child& Scroom::Utils::ProgressInterfaceMultiplexer::Child::operator= ( const Child )
delete

◆ setProgress()

void Scroom::Utils::ProgressInterfaceMultiplexer::Child::setProgress ( State  s,
double  progress = 0.0 
)
overridevirtual

Implements Scroom::Utils::ProgressStateInterface.

240  {
241  data->setProgress(state, progress);
242  parent->updateProgressState();
243  }

Member Data Documentation

◆ data

ChildData::Ptr Scroom::Utils::ProgressInterfaceMultiplexer::Child::data
private

◆ parent

ProgressInterfaceMultiplexer::Ptr Scroom::Utils::ProgressInterfaceMultiplexer::Child::parent
private

The documentation for this class was generated from the following files:
Scroom::Utils::ProgressInterfaceMultiplexer::Child::parent
ProgressInterfaceMultiplexer::Ptr parent
Definition: progressinterfacehelpers.hh:215
Scroom::Utils::ProgressInterfaceMultiplexer::Child::Ptr
boost::shared_ptr< Child > Ptr
Definition: progressinterfacehelpers.hh:212
Scroom::Utils::ProgressInterfaceMultiplexer::Child::data
ChildData::Ptr data
Definition: progressinterfacehelpers.hh:216
Scroom::Utils::ProgressInterfaceMultiplexer::Child::Child
Child(ProgressInterfaceMultiplexer::Ptr parent, ChildData::Ptr data)
Definition: progressinterfacehelpers.cc:221