uvgVPCCenc 1.1.0
uvgVPCCenc is an open-source real-time V-PCC encoder library written in C++ from scratch.
Loading...
Searching...
No Matches
Static Public Member Functions | Static Public Attributes | List of all members
uvgvpcc_enc::JobManager Struct Reference

#include <jobManagement.hpp>

Collaboration diagram for uvgvpcc_enc::JobManager:

Static Public Member Functions

template<typename Func , typename... Args>
static std::shared_ptr< Jobmake_job (const size_t &gofId, const size_t &frameId, std::size_t priority, std::string funcName, Func &&func, Args &&... args)
 
template<typename Func , typename... Args>
static std::shared_ptr< Jobmake_job (const size_t &gofId, std::size_t priority, std::string funcName, Func &&func, Args &&... args)
 
static std::shared_ptr< JobgetJob (size_t gofId, size_t frameId, const std::string &funcName)
 
static std::shared_ptr< JobgetJob (size_t gofId, const std::string &funcName)
 
static void initThreadQueue (uint16_t numThreads)
 
static void submitCurrentFrameJobs ()
 
static void submitCurrentGOFJobs ()
 

Static Public Attributes

static std::unique_ptr< ThreadQueuethreadQueue = nullptr
 
static std::unique_ptr< std::unordered_map< jobKey, std::shared_ptr< Job > > > previousGOFJobMap = nullptr
 
static std::unique_ptr< std::unordered_map< jobKey, std::shared_ptr< Job > > > previousFrameJobMap = nullptr
 
static std::unique_ptr< std::unordered_map< jobKey, std::shared_ptr< Job > > > currentGOFJobMap = nullptr
 
static std::unique_ptr< std::unordered_map< jobKey, std::shared_ptr< Job > > > currentFrameJobMap = nullptr
 

Member Function Documentation

◆ getJob() [1/2]

std::shared_ptr< Job > uvgvpcc_enc::JobManager::getJob ( size_t  gofId,
const std::string &  funcName 
)
static

◆ getJob() [2/2]

std::shared_ptr< Job > uvgvpcc_enc::JobManager::getJob ( size_t  gofId,
size_t  frameId,
const std::string &  funcName 
)
static
Here is the caller graph for this function:

◆ initThreadQueue()

void uvgvpcc_enc::JobManager::initThreadQueue ( uint16_t  numThreads)
static

◆ make_job() [1/2]

template<typename Func , typename... Args>
static std::shared_ptr< Job > uvgvpcc_enc::JobManager::make_job ( const size_t &  gofId,
const size_t &  frameId,
std::size_t  priority,
std::string  funcName,
Func &&  func,
Args &&...  args 
)
static

◆ make_job() [2/2]

template<typename Func , typename... Args>
static std::shared_ptr< Job > uvgvpcc_enc::JobManager::make_job ( const size_t &  gofId,
std::size_t  priority,
std::string  funcName,
Func &&  func,
Args &&...  args 
)
static

◆ submitCurrentFrameJobs()

void uvgvpcc_enc::JobManager::submitCurrentFrameJobs ( )
static
Here is the caller graph for this function:

◆ submitCurrentGOFJobs()

void uvgvpcc_enc::JobManager::submitCurrentGOFJobs ( )
static
Here is the caller graph for this function:

Member Data Documentation

◆ currentFrameJobMap

std::unique_ptr< std::unordered_map< jobKey, std::shared_ptr< Job > > > uvgvpcc_enc::JobManager::currentFrameJobMap = nullptr
static

◆ currentGOFJobMap

std::unique_ptr< std::unordered_map< jobKey, std::shared_ptr< Job > > > uvgvpcc_enc::JobManager::currentGOFJobMap = nullptr
static

◆ previousFrameJobMap

std::unique_ptr< std::unordered_map< jobKey, std::shared_ptr< Job > > > uvgvpcc_enc::JobManager::previousFrameJobMap = nullptr
static

◆ previousGOFJobMap

std::unique_ptr< std::unordered_map< jobKey, std::shared_ptr< Job > > > uvgvpcc_enc::JobManager::previousGOFJobMap = nullptr
static

◆ threadQueue

std::unique_ptr< ThreadQueue > uvgvpcc_enc::JobManager::threadQueue = nullptr
static

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