22 #include "../gpu/gpu_task.h"
A very basic class for any image.
Makes sure the bitmap content is accessible within an image processing task.
A key-value pair set storing pieces of arbitrary data (chunks) under string keys.
Template of a task using GPU.
Internal low-level GPU control API.
Abstract neural net operation (layer).
Task running inference of a Model.
void connect(AbstractBitmap &image, const std::string &operation, int inputIndex=0)
std::map< std::pair< AbstractOperation *, int >, AbstractBitmap * > inputImages
ThreadIndex getMaxThreads() const override
Gives the upper limint on the number of threads the task may be performed by.
void connect(AbstractBitmap &image, AbstractOperation &operation, int inputIndex=0)
Connects an image to a specific operation input.
void afterProcessing(ThreadIndex threadCount, GraphicPipeline *gpu, bool aborted) override
Instruction called after the task is executed.
bool process(TaskThread &thread) override
Executes the task on CPU within a given thread.
void beforeProcessing(ThreadIndex threadCount, ProcessingTarget target, GraphicPipeline *gpu) override
Instruction called before the task is executed.
InferenceTask(Model &model, ChunkCollection &data)
bool processOnGPU(GraphicPipeline &gpu, TaskThread &thread) override
Executes the task on GPU.
OperationClass & getOperation(const std::string &operationName)
Retrieves an operation by its name.
unsigned char ThreadIndex
number of threads / thread index
static const ThreadIndex MAX_THREAD_INDEX
maximum possible thread index value