Skip to content

sgns::sgprocessing::ImageSplitter

#include <ImageSplitter.hpp>

Public Functions

Name
ImageSplitter() =default
ImageSplitter(const char * filename, uint64_t blockstride, uint64_t blocklinestride, uint64_t blocklen, int channels)
ImageSplitter(const std::vector< char > & buffer, uint64_t blockstride, uint64_t blocklinestride, uint64_t blocklen, int channels)
ImageSplitter(const std::vector< uint8_t > & buffer, uint64_t blockstride, uint64_t blocklinestride, uint64_t blocklen, int channels)
~ImageSplitter()
std::vector< uint8_t > GetPart(int part)
size_t GetPartByCid(const std::vector< uint8_t > & cid) const
uint32_t GetPartSize(int part) const
uint32_t GetPartStride(int part) const
int GetPartWidthActual(int part) const
int GetPartHeightActual(int part) const
size_t GetPartCount() const
size_t GetImageSize() const
std::vector< uint8_t > GetPartCID(int part) const

Public Functions Documentation

function ImageSplitter

ImageSplitter() =default

function ImageSplitter

ImageSplitter(
    const char * filename,
    uint64_t blockstride,
    uint64_t blocklinestride,
    uint64_t blocklen,
    int channels
)

Parameters:

  • filename - path/to/file.ext
  • blockstride - Stride to use for access pattern
  • blocklinestride - Line stride in bytes to get to next block start
  • blocklen - Block Length in bytes

Split an image loaded from file

function ImageSplitter

ImageSplitter(
    const std::vector< char > & buffer,
    uint64_t blockstride,
    uint64_t blocklinestride,
    uint64_t blocklen,
    int channels
)

Parameters:

  • buffer - Raw data of image file
  • blockstride - Stride to use for access pattern
  • blocklinestride - Line stride in bytes to get to next block start
  • blocklen - Block Length in bytes

Split an image loaded from raw data of a file loaded elsewhere, i.e. asynciomanager

function ImageSplitter

ImageSplitter(
    const std::vector< uint8_t > & buffer,
    uint64_t blockstride,
    uint64_t blocklinestride,
    uint64_t blocklen,
    int channels
)

Parameters:

  • buffer - Raw RGBA
  • blockstride - Stride to use for access pattern
  • blocklinestride - Line stride in bytes to get to next block start
  • blocklen - Block Length in bytes

Split an image loaded from raw RGBA bytes

function ~ImageSplitter

inline ~ImageSplitter()

function GetPart

std::vector< uint8_t > GetPart(
    int part
)

Parameters:

  • part - index

Get data of part

function GetPartByCid

size_t GetPartByCid(
    const std::vector< uint8_t > & cid
) const

Parameters:

  • cid - CID of part

Get index of a part by CID

function GetPartSize

uint32_t GetPartSize(
    int part
) const

Parameters:

  • part - index

Get size of part in bytes

function GetPartStride

uint32_t GetPartStride(
    int part
) const

Parameters:

  • part - index

Get stride of part

function GetPartWidthActual

int GetPartWidthActual(
    int part
) const

Parameters:

  • part - index

Get Width of part

function GetPartHeightActual

int GetPartHeightActual(
    int part
) const

Parameters:

  • part - index

Get Height of part

function GetPartCount

size_t GetPartCount() const

Get total number of parts

function GetImageSize

size_t GetImageSize() const

Get image size

function GetPartCID

std::vector< uint8_t > GetPartCID(
    int part
) const

Updated on 2026-03-04 at 13:10:43 -0800