Scroom  0.14
Scroom::Utils::Detail::ProgressStore Class Reference

#include <progressinterfacehelpers.hh>

Inheritance diagram for Scroom::Utils::Detail::ProgressStore:
Inheritance graph
Collaboration diagram for Scroom::Utils::Detail::ProgressStore:
Collaboration graph

Public Types

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

Public Member Functions

void init (ProgressInterface::Ptr const &i)
 
- 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 ()
 

Protected Member Functions

void setProgress (State s, double progress=0.0) override
 
- Protected Member Functions inherited from Scroom::Utils::ProgressStateInterface
virtual void setProgress (State s, double progress=0.0)=0
 

Private Member Functions

 ProgressStore ()=default
 

Private Attributes

State state {IDLE}
 
double progress {0.0}
 

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

◆ ProgressStore()

Scroom::Utils::Detail::ProgressStore::ProgressStore ( )
privatedefault

Referenced by create().

Here is the caller graph for this function:

Member Function Documentation

◆ create()

ProgressStore::Ptr Scroom::Utils::Detail::ProgressStore::create ( )
static
93 { return Ptr(new ProgressStore()); }

Referenced by Scroom::Utils::ProgressInterfaceBroadcaster::ProgressInterfaceBroadcaster().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ init()

void Scroom::Utils::Detail::ProgressStore::init ( ProgressInterface::Ptr const &  i)
96  {
97  switch(state)
98  {
99  case IDLE:
100  i->setIdle();
101  break;
102  case WAITING:
103  i->setWaiting(progress);
104  break;
105  case WORKING:
106  i->setWorking(progress);
107  break;
108  case FINISHED:
109  i->setFinished();
110  break;
111  }
112  }

◆ setProgress()

void Scroom::Utils::Detail::ProgressStore::setProgress ( State  s,
double  progress = 0.0 
)
overrideprotected
115  {
116  state = s;
117  progress = p;
118  }

Member Data Documentation

◆ progress

double Scroom::Utils::Detail::ProgressStore::progress {0.0}
private

Referenced by init(), and setProgress().

◆ state

State Scroom::Utils::Detail::ProgressStore::state {IDLE}
private

Referenced by init(), and setProgress().


The documentation for this class was generated from the following files:
Scroom::Utils::Detail::ProgressStore::progress
double progress
Definition: progressinterfacehelpers.hh:110
Scroom::Utils::ProgressStateInterface::FINISHED
@ FINISHED
Definition: progressinterfacehelpers.hh:34
Scroom::Utils::Detail::ProgressStore::Ptr
boost::shared_ptr< ProgressStore > Ptr
Definition: progressinterfacehelpers.hh:106
Scroom::Utils::Detail::ProgressStore::ProgressStore
ProgressStore()=default
Scroom::Utils::ProgressStateInterface::WAITING
@ WAITING
Definition: progressinterfacehelpers.hh:32
Scroom::Utils::Detail::ProgressStore::state
State state
Definition: progressinterfacehelpers.hh:109
Scroom::Utils::ProgressStateInterface::IDLE
@ IDLE
Definition: progressinterfacehelpers.hh:31
Scroom::Utils::ProgressStateInterface::WORKING
@ WORKING
Definition: progressinterfacehelpers.hh:33