| IOLink 1.11.0

Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Static Public Attributes | List of all members
iolink::ParallelAccessExtension Class Referenceabstract

ImageView extension to give information about how to efficiently access it in a multi-threaded environment. More...

`#include <iolink/view/ParallelAccessExtension.h>`

Inheritance diagram for iolink::ParallelAccessExtension:

## Public Member Functions
virtual ParallelAccessCapabilitySet | capabilities () const =0
| Return the parallel-access capabilities of this view.
bool | support (ParallelAccessCapabilitySet flags)
| Checks if the view supports the given capabilities.
std::string | toString () const
| String representation of the extension.

## Static Public Member Functions
static std::shared_ptr< ParallelAccessExtension > | cast (const std::shared_ptr< Extension > &extension)
| Upcast a generic extension to this specific type.

## Static Public Attributes
static constexpr size_t | EXTENSION_ID = 0x2
| Identifier used to load the extension using the View::extension method.

## Detailed Description

ImageView extension to give information about how to efficiently access it in a multi-threaded environment.

ImageView content can be accessed with following features:

- thread-safe: no race conditions when accessing with multiple threads
- parallel-access by tile: hints benefits when tiles are accessed in parallel
- parallel-access: hints benefits when regions are accessed in parallel

In any case, parallel reading and writing into the same part of an image is not advised, as there is no control over the ordering of operations.

## Member Function Documentation

## ◆ cast()

static std::shared_ptr< ParallelAccessExtension > iolink::ParallelAccessExtension::cast | ( | const std::shared_ptr< Extension > & | extension | ) |
| inline static

Upcast a generic extension to this specific type.

Parameters

  extension | The extension to cast.

Returns
  The upcasted extension. This will be null if no upcasting is possible.

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

- iolink/public/include/iolink/view/ParallelAccessExtension.h