OpenCPN Partial API docs
Loading...
Searching...
No Matches
SENCThreadManager Class Reference

Manager for S57 chart SENC creation threads. More...

#include <senc_manager.h>

Inheritance diagram for SENCThreadManager:

Public Member Functions

void OnEvtThread (OCPN_BUILDSENC_ThreadEvent &event)
 
SENCThreadStatus ScheduleJob (SENCJobTicket *ticket)
 
void FinishJob (SENCJobTicket *ticket)
 
void StartTopJob ()
 
bool IsChartInTicketlist (s57chart *chart)
 
bool SetChartPointer (s57chart *chart, void *new_ptr)
 
void InvalidateChartPointer (s57chart *chart)
 
void ReleaseCompletedTicket (SENCJobTicket *ticket)
 
void ClearJobList ()
 
int GetJobCount ()
 
int GetRunningJobCount ()
 
bool IsShuttingDown () const
 

Public Attributes

int m_max_jobs
 
std::vector< SENCJobTicket * > ticket_list
 

Detailed Description

Manager for S57 chart SENC creation threads.

Manages the creation of SENC (Simplified Electronic Navigational Chart) files from S57 charts using background threads. Handles scheduling and executing SENC build jobs.

Worker threads post exactly one completion event to this manager via QueueEvent(). OnEvtThread() performs queue bookkeeping and forwards a single copy to the main frame for UI work. The frame deletes the ticket.

Definition at line 104 of file senc_manager.h.

Constructor & Destructor Documentation

◆ SENCThreadManager()

SENCThreadManager::SENCThreadManager ( )

Definition at line 83 of file senc_manager.cpp.

◆ ~SENCThreadManager()

SENCThreadManager::~SENCThreadManager ( )

Definition at line 98 of file senc_manager.cpp.

Member Function Documentation

◆ ClearJobList()

void SENCThreadManager::ClearJobList ( )

Definition at line 133 of file senc_manager.cpp.

◆ FinishJob()

void SENCThreadManager::FinishJob ( SENCJobTicket ticket)

Definition at line 220 of file senc_manager.cpp.

◆ GetJobCount()

int SENCThreadManager::GetJobCount ( )

Definition at line 237 of file senc_manager.cpp.

◆ GetRunningJobCount()

int SENCThreadManager::GetRunningJobCount ( )

Definition at line 102 of file senc_manager.cpp.

◆ InvalidateChartPointer()

void SENCThreadManager::InvalidateChartPointer ( s57chart chart)

Definition at line 269 of file senc_manager.cpp.

◆ IsChartInTicketlist()

bool SENCThreadManager::IsChartInTicketlist ( s57chart chart)

Definition at line 242 of file senc_manager.cpp.

◆ IsShuttingDown()

bool SENCThreadManager::IsShuttingDown ( ) const

Definition at line 100 of file senc_manager.cpp.

◆ OnEvtThread()

void SENCThreadManager::OnEvtThread ( OCPN_BUILDSENC_ThreadEvent event)

Definition at line 293 of file senc_manager.cpp.

◆ ReleaseCompletedTicket()

void SENCThreadManager::ReleaseCompletedTicket ( SENCJobTicket ticket)

Definition at line 273 of file senc_manager.cpp.

◆ ScheduleJob()

SENCThreadStatus SENCThreadManager::ScheduleJob ( SENCJobTicket ticket)

Definition at line 158 of file senc_manager.cpp.

◆ SetChartPointer()

bool SENCThreadManager::SetChartPointer ( s57chart chart,
void *  new_ptr 
)

Definition at line 253 of file senc_manager.cpp.

◆ StartTopJob()

void SENCThreadManager::StartTopJob ( )

Definition at line 177 of file senc_manager.cpp.

Member Data Documentation

◆ m_max_jobs

int SENCThreadManager::m_max_jobs

Definition at line 123 of file senc_manager.h.

◆ ticket_list

std::vector<SENCJobTicket *> SENCThreadManager::ticket_list

Definition at line 125 of file senc_manager.h.


The documentation for this class was generated from the following files: