Beatmup
Beatmup Namespace Reference

Namespaces

 Android
 Android-specific API.
 
 Audio
 Sound I/O and processing API.
 
 BitmapProcessing
 Contains templates calling elementary image processing routines depending on pixel formats of their arguments.
 
 BitmapTools
 Set of handy operations with images.
 
 Color
 Color representation and conversion tools
 
 DRM
 Low-level DRM/GBM primitives.
 
 Filters
 Image filtering operations.
 
 Fragments
 Abstract fragmented signals representation.
 
 GL
 Low-level API providing access to GPU.
 
 NNets
 Neural nets inference on GPU using OpenGL.
 
 Python
 Python binding utilities
 
 StringUtils
 Handy utilities for strings.
 

Classes

struct  color3i
 
struct  color4i
 
struct  color3f
 
struct  color4f
 
class  Object
 Beatmup object base class More...
 
class  Context
 Basic class: task and memory management, any kind of static data. More...
 
class  Exception
 Base class for all exceptions. More...
 
class  RuntimeError
 
class  InvalidArgument
 
class  OutOfRange
 
class  IOError
 
class  NullTaskInput
 Exception thrown when a required input of an AbstractTask was not assigned prior to the task execution. More...
 
class  ImplementationUnsupported
 Exception thrown when an implementation restriction is encountered. More...
 
class  Insanity
 Exception thrown when something happens that should never do. More...
 
class  CustomPoint
 2D point class More...
 
class  CustomRectangle
 2D rectangle class All the utilities assume that the rectangle is normalized, e.g. More...
 
class  CustomMatrix2
 2D affine transformation. More...
 
class  AffineMapping
 2x3 affine mapping containing a 2x2 matrix and a 2D point More...
 
class  AlignedMemory
 Aligned memory buffer. More...
 
class  AbstractTask
 Task: an operation that can be executed by multiple threads in parallel. More...
 
class  TaskThread
 Thread executing tasks. More...
 
class  ThreadPool
 A pool of threads running tasks ThreadPool runs AbstractTasks, possibly in multiple threads. More...
 
struct  sample8
 
struct  sample16
 
struct  sample32
 
struct  sample32f
 
class  AbstractBitmap
 A very basic class for any image. More...
 
class  BitmapContentModifier
 
class  CustomBitmapScanner
 A generic to access bitmap data. More...
 
class  SingleByteBitmapReader
 Single byte bitmap reader. More...
 
class  TripleByteBitmapReader
 Triple byte bitmap reader. More...
 
class  QuadByteBitmapReader
 Quad byte bitmap reader. More...
 
class  SingleFloatBitmapReader
 Single float bitmap reader. More...
 
class  TripleFloatBitmapReader
 Triple float bitmap reader. More...
 
class  QuadFloatBitmapReader
 Quad float bitmap reader. More...
 
class  SingleByteBitmapWriter
 Single byte bitmap writer. More...
 
class  TripleByteBitmapWriter
 Triple byte bitmap writer. More...
 
class  QuadByteBitmapWriter
 Quad byte bitmap writer. More...
 
class  SingleFloatBitmapWriter
 Single float bitmap writer. More...
 
class  TripleFloatBitmapWriter
 Triple float bitmap writer. More...
 
class  QuadFloatBitmapWriter
 Quad float bitmap writer. More...
 
class  UnsupportedPixelFormat
 An exception to throw if a pixel format is not supported. More...
 
class  BitmapContentLock
 Makes sure the bitmap content is accessible within an image processing task. More...
 
class  FormatConverter
 Converts bitmap content from one pixel format to another one. More...
 
class  Crop
 A task to clip images on CPU. More...
 
class  InternalBitmap
 Bitmap whose memory is managed by the Beatmup engine. More...
 
class  NearestNeighborInterpolator
 Nearest neighbour bitmap interpolation. More...
 
class  SingleByteBilinearInterpolator
 Single byte bitmap bilinear interpolation. More...
 
class  TripleByteBilinearInterpolator
 Triple byte bitmap bilinear interpolation. More...
 
class  QuadByteBilinearInterpolator
 Quad byte bitmap bilinear interpolation. More...
 
class  FloatBilinearInterpolator
 Floating point bitmap bilinear interpolation, implemented using pixel arithmetics. More...
 
class  MaskScanner
 A generic to access mask bitmap data. More...
 
class  LookupMaskScanner
 A generic to access sub-byte mask bitmap data. More...
 
class  LookupMaskWriter
 A generic to write mask bitmap data lookup tables for masks values. More...
 
class  SingleByteMaskReader
 Mask reqding interface to single byte bitmap. More...
 
class  SingleByteMaskWriter
 
class  Metric
 Measures the difference between two bitmaps. More...
 
class  BitmapBinaryOperation
 A binary pixelwise operation on images. More...
 
struct  pixint1
 Monochromatic integer arithmetic. More...
 
struct  pixfloat1
 Monochromatic floating point arithmetic. More...
 
struct  pixint3
 Trichromatic integer arithmetic. More...
 
struct  pixfloat3
 Trichromatic floating point arithmetic. More...
 
struct  pixint4
 4-channel integer arithmetic More...
 
struct  pixfloat4
 4-channel floating point arithmetic More...
 
class  BitmapResampler
 Resamples an image to a given resolution. More...
 
class  GDIBitmap
 A simple wrapper of GDI bitmap. More...
 
class  X2UpsamplingNetwork
 Interface of x2 image upsampling using a convolutional neural network on GPU. More...
 
class  GLES20X2UpsamplingNetwork
 x2 image upsampler using a convolutional neural network. More...
 
class  GLES31X2UpsamplingNetwork
 x2 image upsampler using a convolutional neural network. More...
 
class  IntegerContour2D
 A sequence of integer-valued 2D points. More...
 
class  DisplaySwitch
 
class  GpuTask
 Template of a task using GPU. More...
 
class  GpuOperationError
 
class  GraphicPipeline
 Internal low-level GPU control API. More...
 
class  Swapper
 
class  UnsupportedTextureFormat
 Exception thrown when texture format does not match any supported format. More...
 
class  FloodFill
 Flood fill algorithm implementation. More...
 
class  CustomPipeline
 Custom pipeline: a sequence of tasks to be executed as a whole. More...
 
class  TaskRouter
 Interface managing the execution of a sequence of tasks. More...
 
class  Multitask
 Conditional multiple tasks execution. More...
 
class  SceneRenderer
 AbstractTask rendering a Scene. More...
 
class  RenderingContext
 Stores the rendering context: current program, current mapping in the scene space, common rendering properties, locked bitmaps, etc. More...
 
class  Scene
 An ordered set of layers representing a renderable content. More...
 
class  ImageShader
 A GLSL program to process images. More...
 
class  ShaderApplicator
 A task applying an image shader to a bitmap. More...
 
class  Array
 Multidimensional array container with data access facilities The number of dimensions is compile time-known. More...
 
class  BitmapFromChunk
 Loads a bitmap content from chunk. More...
 
class  Bitset
 A set of boolean flags. More...
 
class  BmpFile
 Toolset to load and store images in BMP format. More...
 
class  ChunkIdTooLong
 
class  ChunkCollection
 A key-value pair set storing pieces of arbitrary data (chunks) under string keys. More...
 
class  ChunkStream
 Stream of chunks. More...
 
class  ChunkFile
 File containing chunks. More...
 
class  ChunkFileWriter
 Writes chunks to a file. More...
 
class  Chunk
 Simply a piece of binary data of a specific size. More...
 
struct  Fixed
 Fixed-point number. More...
 
class  ImageResolution
 Represents image size in pixels. More...
 
class  InputStream
 Minimal input stream interface. More...
 
class  FileInputStream
 InputStream reading from a file. More...
 
class  MemoryInputStream
 InputStream reading from memory. More...
 
class  Listing
 Parser of simple YAML-like listings. More...
 
class  LockableObject
 
class  Profiler
 Collects running time statistics of multiple tracks. More...
 
class  MovingAverage
 Computes moving average over a given number of samples. More...
 
class  ProgressTracking
 Progress tracking utility. More...
 
class  StringBuilder
 Toolset to build a string content. More...
 
class  String
 StringBuilder including a string container. More...
 
class  CallbackTask
 Task calling method of a Java object. More...
 
class  ContextEventListener
 Needed for correct functioning of JNI. More...
 
class  TextureHandleFactory
 Task generating a valid OpenGL texture handle. More...
 

Typedefs

typedef uint32_t msize
 memory size More...
 
typedef uint32_t pixint_platform
 
typedef uint8_t pixbyte
 
typedef float pixfloat
 
typedef int dtime
 discrete time More...
 
using Point = CustomPoint< float >
 
using Rectangle = CustomRectangle< float >
 
using Matrix2 = CustomMatrix2< float >
 
using IntPoint = CustomPoint< int >
 
using IntRectangle = CustomRectangle< int >
 
typedef unsigned char PoolIndex
 number of tread pools or a pool index More...
 
typedef unsigned char ThreadIndex
 number of threads / thread index More...
 
typedef int Job
 
typedef NearestNeighborInterpolator< SingleByteBitmapReader, pixint1SingleByteNearestNeighborInterpolator
 
typedef NearestNeighborInterpolator< TripleByteBitmapReader, pixint3TripleByteNearestNeighborInterpolator
 
typedef NearestNeighborInterpolator< QuadByteBitmapReader, pixint4QuadByteNearestNeighborInterpolator
 
typedef NearestNeighborInterpolator< SingleFloatBitmapReader, pixfloat1SingleFloatNearestNeighborInterpolator
 
typedef NearestNeighborInterpolator< TripleFloatBitmapReader, pixfloat3TripleFloatNearestNeighborInterpolator
 
typedef NearestNeighborInterpolator< QuadFloatBitmapReader, pixfloat4QuadFloatNearestNeighborInterpolator
 
typedef FloatBilinearInterpolator< SingleFloatBitmapReader, pixfloat1SingleFloatBilinearInterpolator
 
typedef FloatBilinearInterpolator< TripleFloatBitmapReader, pixfloat3TripleFloatBilinearInterpolator
 
typedef FloatBilinearInterpolator< QuadFloatBitmapReader, pixfloat4QuadFloatBilinearInterpolator
 
typedef LookupMaskScanner< 1, MASK_LUT_1_BITBinaryMaskReader
 
typedef LookupMaskScanner< 2, MASK_LUT_2_BITSQuaternaryMaskReader
 
typedef LookupMaskScanner< 4, MASK_LUT_4_BITSHexMaskReader
 
typedef LookupMaskWriter< 1, MASK_LUT_1_BITBinaryMaskWriter
 
typedef LookupMaskWriter< 2, MASK_LUT_2_BITSQuaternaryMaskWriter
 
typedef LookupMaskWriter< 4, MASK_LUT_4_BITSHexMaskWriter
 
typedef uint32_t chunksize_t
 
template<const int precision = 15>
using Fixed16 = Fixed< int16_t, precision, int32_t >
 Signed 16-bit fixed point With default precision represents [-1, 1) range. More...
 

Enumerations

enum  ProcessingTarget { CPU = 0 , GPU }
 
enum  AudioSampleFormat { Int8 , Int16 , Int32 , Float32 }
 Format of audio samples. More...
 
enum  PixelFormat {
  SingleByte = 0 , TripleByte , QuadByte , SingleFloat ,
  TripleFloat , QuadFloat , BinaryMask , QuaternaryMask ,
  HexMask
}
 
enum  TextureParam { INTERP_NEAREST = 0 , INTERP_LINEAR = 1 , REPEAT = 2 }
 Parameters of binding a texture to a texture unit on GPU. More...
 

Functions

template<typename T >
void order (T &a, T &b)
 
template<typename numeric >
CustomPoint< numeric > operator- (const CustomPoint< numeric > &point)
 Point with negative coordinates. More...
 
template<typename numeric >
CustomPoint< numeric > operator* (numeric val, const CustomPoint< numeric > &point)
 Product of a scalar and a point. More...
 
template<typename numeric >
CustomMatrix2< numeric > operator* (numeric val, const CustomMatrix2< numeric > &matrix)
 Product of a scalar and a matrix. More...
 
template<typename numeric >
bool operator&& (const CustomRectangle< numeric > &lhs, const CustomRectangle< numeric > &rhs)
 Checks whether two rectangles are of the same size. More...
 
template<typename numeric >
bool operator== (const CustomRectangle< numeric > &lhs, const CustomRectangle< numeric > &rhs)
 Checks whether two rectangles are actually the same. More...
 
bool operator!= (const sample16 &A, const sample16 &B)
 
template<typename in , typename out >
void convertSamples (in *const input, void *output, msize count)
 
pixbyte pixfloat2pixbyte (pixfloat x)
 Converts a floating point pixel value to a 0..255 integer. More...
 
pixfloat int2pixfloat (int x)
 Converts an integer value to 0..1 floating point pixel value. More...
 
pixfloat clipPixfloat (pixfloat x)
 Clips a floating point pixel value to 0..1 range. More...
 
pixbyte clipPixint (int x)
 Clips an integer pixel value to 0..255 range. More...
 
pixint1 operator- (int x, pixint1 P)
 
color4i fromPackedInt (int32_t _)
 
bool operator== (const CustomPipeline::TaskHolder &, const CustomPipeline::TaskHolder &)
 

Variables

const float pi = 3.141592653589793238462643383279502884f
 
static const ThreadIndex MAX_THREAD_INDEX = 255
 maximum possible thread index value More...
 
const int AUDIO_SAMPLE_SIZE [] = { 1, 2, 3, 4 }
 
const char *const AUDIO_FORMAT_NAME [] = { "8 bit", "16 bit", "32 bit", "32 bit float" }
 
struct {
   const int   Beatmup::A
 
   const int   Beatmup::R
 
   const int   Beatmup::G
 
   const int   Beatmup::B
 
CHANNELS_4
 
struct {
   const int   Beatmup::R
 
   const int   Beatmup::G
 
   const int   Beatmup::B
 
CHANNELS_3
 
const int MASK_LUT_1_BIT [2] = { 0, 255 }
 
const int MASK_LUT_2_BITS [4] = { 0, 85, 170, 255 }
 
const int MASK_LUT_4_BITS [16] = { 0, 17, 34, 51, 68, 85, 102, 119, 136, 153, 170, 187, 204, 221, 238, 255 }
 

Typedef Documentation

◆ msize

typedef uint32_t Beatmup::msize

memory size

Definition at line 30 of file basic_types.h.

◆ pixint_platform

typedef uint32_t Beatmup::pixint_platform

Definition at line 31 of file basic_types.h.

◆ pixbyte

typedef uint8_t Beatmup::pixbyte

Definition at line 34 of file basic_types.h.

◆ pixfloat

typedef float Beatmup::pixfloat

Definition at line 35 of file basic_types.h.

◆ dtime

typedef int Beatmup::dtime

discrete time

Definition at line 37 of file basic_types.h.

◆ Point

Definition at line 626 of file geometry.h.

◆ Rectangle

using Beatmup::Rectangle = typedef CustomRectangle<float>

Definition at line 627 of file geometry.h.

◆ Matrix2

using Beatmup::Matrix2 = typedef CustomMatrix2<float>

Definition at line 628 of file geometry.h.

◆ IntPoint

using Beatmup::IntPoint = typedef CustomPoint<int>

Definition at line 629 of file geometry.h.

◆ IntRectangle

using Beatmup::IntRectangle = typedef CustomRectangle<int>

Definition at line 630 of file geometry.h.

◆ PoolIndex

typedef unsigned char Beatmup::PoolIndex

number of tread pools or a pool index

Definition at line 67 of file parallelism.h.

◆ ThreadIndex

typedef unsigned char Beatmup::ThreadIndex

number of threads / thread index

Definition at line 68 of file parallelism.h.

◆ Job

typedef int Beatmup::Job

Definition at line 69 of file parallelism.h.

◆ SingleByteNearestNeighborInterpolator

◆ TripleByteNearestNeighborInterpolator

◆ QuadByteNearestNeighborInterpolator

◆ SingleFloatNearestNeighborInterpolator

◆ TripleFloatNearestNeighborInterpolator

◆ QuadFloatNearestNeighborInterpolator

◆ SingleFloatBilinearInterpolator

◆ TripleFloatBilinearInterpolator

◆ QuadFloatBilinearInterpolator

◆ BinaryMaskReader

◆ QuaternaryMaskReader

◆ HexMaskReader

◆ BinaryMaskWriter

◆ QuaternaryMaskWriter

◆ HexMaskWriter

◆ chunksize_t

typedef uint32_t Beatmup::chunksize_t

Definition at line 29 of file chunkfile.h.

◆ Fixed16

template<const int precision = 15>
using Beatmup::Fixed16 = typedef Fixed<int16_t, precision, int32_t>

Signed 16-bit fixed point With default precision represents [-1, 1) range.

Definition at line 121 of file fixed_point.h.

Enumeration Type Documentation

◆ ProcessingTarget

Enumerator
CPU 
GPU 

Definition at line 55 of file basic_types.h.

55 {CPU = 0, GPU}; //!< Where to process the stuff

◆ AudioSampleFormat

Format of audio samples.

Enumerator
Int8 

signed integer, 8 bit per sample

Int16 

signed integer, 16 bit per sample

Int32 

signed integer, 32 bit per sample

Float32 

floating point, 32 bit per sample

Definition at line 28 of file sample_arithmetic.h.

28  {
29  Int8, //!< signed integer, 8 bit per sample
30  Int16, //!< signed integer, 16 bit per sample
31  Int32, //!< signed integer, 32 bit per sample
32  Float32 //!< floating point, 32 bit per sample
33  };
@ Int8
signed integer, 8 bit per sample
@ Int32
signed integer, 32 bit per sample
@ Float32
floating point, 32 bit per sample
@ Int16
signed integer, 16 bit per sample

◆ PixelFormat

Enumerator
SingleByte 

single channel of 8 bits per pixel (like grayscale), unsigned integer values

TripleByte 

3 channels of 8 bits per pixel (like RGB), unsigned integer values

QuadByte 

4 channels of 8 bits per pixel (like RGBA), unsigned integer values

SingleFloat 

single channel of 32 bits per pixel (like grayscale), single precision floating point values

TripleFloat 

3 channels of 32 bits per pixel, single precision floating point values

QuadFloat 

4 channels of 32 bits per pixel, single precision floating point values,

BinaryMask 

1 bit per pixel

QuaternaryMask 

2 bits per pixel

HexMask 

4 bits per pixel

Definition at line 70 of file abstract_bitmap.h.

70  {
71  SingleByte = 0, //!< single channel of 8 bits per pixel (like grayscale), unsigned integer values
72  TripleByte, //!< 3 channels of 8 bits per pixel (like RGB), unsigned integer values
73  QuadByte, //!< 4 channels of 8 bits per pixel (like RGBA), unsigned integer values
74  SingleFloat, //!< single channel of 32 bits per pixel (like grayscale), single precision floating point values
75  TripleFloat, //!< 3 channels of 32 bits per pixel, single precision floating point values
76  QuadFloat, //!< 4 channels of 32 bits per pixel, single precision floating point values,
77  BinaryMask, //!< 1 bit per pixel
78  QuaternaryMask, //!< 2 bits per pixel
79  HexMask //!< 4 bits per pixel
80  };
@ SingleByte
single channel of 8 bits per pixel (like grayscale), unsigned integer values
@ SingleFloat
single channel of 32 bits per pixel (like grayscale), single precision floating point values
@ QuaternaryMask
2 bits per pixel
@ QuadFloat
4 channels of 32 bits per pixel, single precision floating point values,
@ TripleFloat
3 channels of 32 bits per pixel, single precision floating point values
@ QuadByte
4 channels of 8 bits per pixel (like RGBA), unsigned integer values
@ TripleByte
3 channels of 8 bits per pixel (like RGB), unsigned integer values
@ BinaryMask
1 bit per pixel
@ HexMask
4 bits per pixel

◆ TextureParam

Parameters of binding a texture to a texture unit on GPU.

Enumerator
INTERP_NEAREST 

nearest neighbor pixel interpolation

INTERP_LINEAR 

bilinear pixel interpolation

REPEAT 

wrapping the texture by repeating instead of clamping to edge

Definition at line 30 of file texture_handler.h.

30  {
31  INTERP_NEAREST = 0, //!< nearest neighbor pixel interpolation
32  INTERP_LINEAR = 1, //!< bilinear pixel interpolation
33  REPEAT = 2 //!< wrapping the texture by repeating instead of clamping to edge
34  };
@ INTERP_LINEAR
bilinear pixel interpolation
@ INTERP_NEAREST
nearest neighbor pixel interpolation
@ REPEAT
wrapping the texture by repeating instead of clamping to edge

Function Documentation

◆ order()

template<typename T >
void Beatmup::order ( T &  a,
T &  b 
)
inline

Definition at line 28 of file geometry.h.

28  {
29  if (a > b) {
30  T _;
31  _ = a; a = b; b = _;
32  }
33  }
jobject jlong jint jint jint jint jint b
jobject jlong jint jint jint jint jint jint a

◆ operator-() [1/2]

template<typename numeric >
CustomPoint<numeric> Beatmup::operator- ( const CustomPoint< numeric > &  point)
inline

Point with negative coordinates.

Definition at line 594 of file geometry.h.

594  {
595  return CustomPoint<numeric>(-point.x, -point.y);
596  }
2D point class
Definition: geometry.h:38

◆ operator*() [1/2]

template<typename numeric >
CustomPoint<numeric> Beatmup::operator* ( numeric  val,
const CustomPoint< numeric > &  point 
)
inline

Product of a scalar and a point.

Definition at line 601 of file geometry.h.

601  {
602  return point * val;
603  }
return(jlong) new Beatmup jlong jstring jint val

◆ operator*() [2/2]

template<typename numeric >
CustomMatrix2<numeric> Beatmup::operator* ( numeric  val,
const CustomMatrix2< numeric > &  matrix 
)
inline

Product of a scalar and a matrix.

Definition at line 608 of file geometry.h.

608  {
609  return matrix * val;
610  }

◆ operator&&()

template<typename numeric >
bool Beatmup::operator&& ( const CustomRectangle< numeric > &  lhs,
const CustomRectangle< numeric > &  rhs 
)
inline

Checks whether two rectangles are of the same size.

Definition at line 615 of file geometry.h.

615  {
616  return lhs.width() == rhs.width() && lhs.height() == rhs.height();
617  }
numeric height() const
Definition: geometry.h:178
numeric width() const
Definition: geometry.h:174

◆ operator==() [1/2]

template<typename numeric >
bool Beatmup::operator== ( const CustomRectangle< numeric > &  lhs,
const CustomRectangle< numeric > &  rhs 
)
inline

Checks whether two rectangles are actually the same.

Definition at line 622 of file geometry.h.

622  {
623  return lhs.a == rhs.a && lhs.b == rhs.b;
624  }
CustomPoint< numeric > b
Definition: geometry.h:131
CustomPoint< numeric > a
Definition: geometry.h:131

◆ operator!=()

bool Beatmup::operator!= ( const sample16 A,
const sample16 B 
)
inline

Definition at line 216 of file sample_arithmetic.h.

216  {
217  return A.x != B.x;
218  }
const int B
Definition: bitmap_access.h:31
const int A
Definition: bitmap_access.h:31

◆ convertSamples()

template<typename in , typename out >
void Beatmup::convertSamples ( in *const  input,
void *  output,
msize  count 
)

Definition at line 221 of file sample_arithmetic.h.

221  {
222  const in* stop = input + count;
223  out* po = (out*)output;
224  for (const in* pi = input; pi < stop; pi++, po++)
225  *po = *pi;
226  }
const float pi
Definition: basic_types.h:29
JNIEnv jlong jint jint count
JNIEnv jlong jint out

◆ pixfloat2pixbyte()

pixbyte Beatmup::pixfloat2pixbyte ( pixfloat  x)
inline

Converts a floating point pixel value to a 0..255 integer.

Definition at line 390 of file pixel_arithmetic.h.

390  {
391  int i = (int)roundf_fast(x * 255.0f);
392  return i > 0 ? (i < 255 ? i : 255) : 0;
393  }
#define roundf_fast(X)
rounding (nearest integer)
Definition: utils.hpp:22
jobject jlong jint x

◆ int2pixfloat()

pixfloat Beatmup::int2pixfloat ( int  x)
inline

Converts an integer value to 0..1 floating point pixel value.

Definition at line 398 of file pixel_arithmetic.h.

398  {
399  return x > 0 ? (x < 255 ? x / 255.0f : 1.0f) : 0.0f;
400  }

◆ clipPixfloat()

pixfloat Beatmup::clipPixfloat ( pixfloat  x)
inline

Clips a floating point pixel value to 0..1 range.

Definition at line 405 of file pixel_arithmetic.h.

405  {
406  return x > 0.0f ? (x < 1.0f ? x : 1.0f) : 0.0f;
407  }

◆ clipPixint()

pixbyte Beatmup::clipPixint ( int  x)
inline

Clips an integer pixel value to 0..255 range.

Definition at line 412 of file pixel_arithmetic.h.

412  {
413  return x > 0 ? (x < 255 ? x : 255) : 0;
414  }

◆ operator-() [2/2]

pixint1 Beatmup::operator- ( int  x,
pixint1  P 
)
inline

Definition at line 1447 of file pixel_arithmetic.h.

1447  {
1448  return pixint1{ x - P.x };
1449  }

◆ fromPackedInt()

color4i Beatmup::fromPackedInt ( int32_t  _)

Definition at line 23 of file packing.h.

23  {
24  return color4i{ (uint8_t)(_ & 0xff), (uint8_t)((_ >> 8) & 0xff), (uint8_t)(_ >> 16), (uint8_t)((_ >> 24) & 0xff) };
25  }

◆ operator==() [2/2]

bool Beatmup::operator== ( const CustomPipeline::TaskHolder left,
const CustomPipeline::TaskHolder right 
)

Definition at line 291 of file custom_pipeline.cpp.

291  {
292  return &left == &right;
293 }
jlong jlong jint jint jint jint jint left

Variable Documentation

◆ pi

const float Beatmup::pi = 3.141592653589793238462643383279502884f

Definition at line 29 of file basic_types.h.

◆ MAX_THREAD_INDEX

const ThreadIndex Beatmup::MAX_THREAD_INDEX = 255
static

maximum possible thread index value

Definition at line 71 of file parallelism.h.

◆ AUDIO_SAMPLE_SIZE

const int Beatmup::AUDIO_SAMPLE_SIZE[] = { 1, 2, 3, 4 }

Definition at line 35 of file sample_arithmetic.h.

◆ AUDIO_FORMAT_NAME

const char* const Beatmup::AUDIO_FORMAT_NAME[] = { "8 bit", "16 bit", "32 bit", "32 bit float" }

Definition at line 36 of file sample_arithmetic.h.

◆ A

const int Beatmup::A

Definition at line 31 of file bitmap_access.h.

◆ R

const int Beatmup::R

Definition at line 31 of file bitmap_access.h.

◆ G

const int Beatmup::G

Definition at line 31 of file bitmap_access.h.

◆ B

const int Beatmup::B

Definition at line 31 of file bitmap_access.h.

◆ 

const { ... } Beatmup::CHANNELS_4
Initial value:
= {
3, 0, 1, 2
}

◆ 

const { ... } Beatmup::CHANNELS_3
Initial value:
= {
0, 1, 2
}

◆ MASK_LUT_1_BIT

const int Beatmup::MASK_LUT_1_BIT = { 0, 255 }
extern

Definition at line 23 of file bitmap_access.cpp.

◆ MASK_LUT_2_BITS

const int Beatmup::MASK_LUT_2_BITS = { 0, 85, 170, 255 }

Definition at line 275 of file mask_bitmap_access.h.

◆ MASK_LUT_4_BITS

const int Beatmup::MASK_LUT_4_BITS = { 0, 17, 34, 51, 68, 85, 102, 119, 136, 153, 170, 187, 204, 221, 238, 255 }

Definition at line 275 of file mask_bitmap_access.h.