OSSIM - Open Source Software Image Map
Version 1.9.0 (20180803)
|
For support of multithreading. More...
#include <ossimViewshedTool.h>
Public Member Functions | |
SectorProcessorJob (ossimViewshedTool *vs_util, ossim_uint32 sector, ossim_uint32 numRadials) | |
![]() | |
ossimJob () | |
virtual void | start () |
Main entry point to the job. More... | |
std::shared_ptr< ossimJob > | getSharedFromThis () |
This is a convenience method to get the shared representation of this pointer. More... | |
std::shared_ptr< const ossimJob > | getSharedFromThis () const |
This is a convenience method to get the shared representation of this pointer. More... | |
void | setPercentComplete (double value) |
When the pernet complete is set for the job it will call any callbacks and nofity percentCompleteChanged. More... | |
void | setPriority (double value) |
sets the priority of the job More... | |
double | priority () const |
virtual void | release () |
If derived interfaces implement a block this will allow one to release. More... | |
State | state () const |
virtual void | resetState (int value) |
Will clear out the state and the call setState. More... | |
virtual void | setState (int value, bool on=true) |
Will allow you to set the state of the job. More... | |
bool | isCanceled () const |
virtual void | cancel () |
Sets the state if the object as cancelled. More... | |
virtual void | ready () |
Sets the state if the object as ready. More... | |
virtual void | running () |
Sets the state if the object as running. More... | |
virtual void | finished () |
Sets the state if the object as finished. More... | |
bool | isReady () const |
bool | isStopped () const |
bool | isFinished () const |
bool | isRunning () const |
void | setCallback (std::shared_ptr< ossimJobCallback > callback) |
void | setName (const ossimString &value) |
Sets the name of a job. More... | |
const ossimString & | name () const |
void | setId (const ossimString &value) |
const ossimString & | id () const |
void | setDescription (const ossimString &value) |
const ossimString & | description () const |
std::shared_ptr< ossimJobCallback > | callback () |
Protected Member Functions | |
virtual void | run () |
Abstract method and must be overriden by the base class. More... | |
Private Attributes | |
ossimViewshedTool * | m_vsUtil |
ossim_uint32 | m_sector |
ossim_uint32 | m_numRadials |
Friends | |
class | ossimViewshedTool |
Additional Inherited Members | |
![]() | |
enum | State { ossimJob_NONE = 0, ossimJob_READY = 1, ossimJob_RUNNING = 2, ossimJob_CANCEL = 4, ossimJob_FINISHED = 8, ossimJob_ALL = (ossimJob_READY|ossimJob_RUNNING|ossimJob_CANCEL|ossimJob_FINISHED) } |
This is a Bit vector. More... | |
typedef std::list< std::shared_ptr< ossimJob > > | List |
![]() | |
std::mutex | m_jobMutex |
ossimString | m_name |
ossimString | m_description |
ossimString | m_id |
State | m_state |
double | m_priority |
std::shared_ptr< ossimJobCallback > | m_callback |
For support of multithreading.
The –tbs option directs ossimViewshedUtil to create a thread for each sector (using the SectorProcessorJob). Otherwise, the threads are mapped to a single radial. There are 8 sectors total (45 deg each) so a max of 8 threads are launched. Thus it may be faster to use the RadialProcessorJob scheme (default) when the number of available cores > 8.
Definition at line 122 of file ossimViewshedTool.h.
|
inline |
Definition at line 126 of file ossimViewshedTool.h.
|
protectedvirtual |
Abstract method and must be overriden by the base class.
The base ossimJob will call run from the start method after setting some variables.
Implements ossimJob.
Definition at line 890 of file ossimViewshedTool.cpp.
References RadialProcessor::doRadial(), m_numRadials, m_sector, and m_vsUtil.
|
friend |
Definition at line 124 of file ossimViewshedTool.h.
|
private |
Definition at line 135 of file ossimViewshedTool.h.
Referenced by run().
|
private |
Definition at line 134 of file ossimViewshedTool.h.
Referenced by run().
|
private |
Definition at line 133 of file ossimViewshedTool.h.
Referenced by run().