Forge
defines.h File Reference
#include <stdbool.h>
#include <fg/version.h>
#include <cstdlib>

Go to the source code of this file.

Namespaces

 forge
 

Macros

#define FGAPI   __attribute__((visibility("default")))
 
#define FG_STATIC_
 
#define FG_API_VERSION   FG_API_VERSION_CURRENT
 

Typedefs

typedef void * fg_window
 
typedef void * fg_font
 
typedef void * fg_chart
 
typedef void * fg_image
 
typedef void * fg_histogram
 
typedef void * fg_plot
 
typedef void * fg_surface
 
typedef void * fg_vector_field
 
typedef fg_err ErrorCode
 
typedef fg_channel_format ChannelFormat
 
typedef fg_chart_type ChartType
 
typedef fg_color_map ColorMap
 
typedef fg_color Color
 
typedef fg_plot_type PlotType
 
typedef fg_marker_type MarkerType
 

Enumerations

enum  fg_err {
  FG_ERR_NONE = 0, FG_ERR_SIZE = 1001, FG_ERR_INVALID_TYPE = 1002, FG_ERR_INVALID_ARG = 1003,
  FG_ERR_GL_ERROR = 2001, FG_ERR_FREETYPE_ERROR = 3001, FG_ERR_FILE_NOT_FOUND = 4001, FG_ERR_NOT_SUPPORTED = 5001,
  FG_ERR_NOT_CONFIGURED = 5002, FG_ERR_FONTCONFIG_ERROR = 6001, FG_ERR_FREEIMAGE_UNKNOWN_FORMAT = 7001, FG_ERR_FREEIMAGE_BAD_ALLOC = 7002,
  FG_ERR_FREEIMAGE_SAVE_FAILED = 7003, FG_ERR_INTERNAL = 9001, FG_ERR_RUNTIME = 9002, FG_ERR_UNKNOWN = 9003
}
 
enum  fg_channel_format {
  FG_GRAYSCALE = 100, FG_RG = 200, FG_RGB = 300, FG_BGR = 301,
  FG_RGBA = 400, FG_BGRA = 401
}
 
enum  fg_chart_type { FG_CHART_2D = 2, FG_CHART_3D = 3 }
 
enum  fg_color_map {
  FG_COLOR_MAP_DEFAULT = 0, FG_COLOR_MAP_SPECTRUM = 1, FG_COLOR_MAP_RAINBOW = 2, FG_COLOR_MAP_RED = 3,
  FG_COLOR_MAP_MOOD = 4, FG_COLOR_MAP_HEAT = 5, FG_COLOR_MAP_BLUE = 6, FG_COLOR_MAP_INFERNO = 7,
  FG_COLOR_MAP_MAGMA = 8, FG_COLOR_MAP_PLASMA = 9, FG_COLOR_MAP_VIRIDIS = 10
}
 Color maps. More...
 
enum  fg_color {
  FG_RED = 0xFF0000FF, FG_GREEN = 0x00FF00FF, FG_BLUE = 0x0000FFFF, FG_YELLOW = 0xFFFF00FF,
  FG_CYAN = 0x00FFFFFF, FG_MAGENTA = 0xFF00FFFF, FG_WHITE = 0xFFFFFFFF, FG_BLACK = 0x000000FF
}
 
enum  fg_dtype {
  FG_INT8 = 0, FG_UINT8 = 1, FG_INT32 = 2, FG_UINT32 = 3,
  FG_FLOAT32 = 4, FG_INT16 = 5, FG_UINT16 = 6
}
 
enum  fg_plot_type { FG_PLOT_LINE = 0, FG_PLOT_SCATTER = 1, FG_PLOT_SURFACE = 2 }
 
enum  fg_marker_type {
  FG_MARKER_NONE = 0, FG_MARKER_POINT = 1, FG_MARKER_CIRCLE = 2, FG_MARKER_SQUARE = 3,
  FG_MARKER_TRIANGLE = 4, FG_MARKER_CROSS = 5, FG_MARKER_PLUS = 6, FG_MARKER_STAR = 7
}
 
enum  dtype {
  s8 = FG_INT8, u8 = FG_UINT8, s32 = FG_INT32, u32 = FG_UINT32,
  f32 = FG_FLOAT32, s16 = FG_INT16, u16 = FG_UINT16
}
 

Macro Definition Documentation

◆ FG_API_VERSION

#define FG_API_VERSION   FG_API_VERSION_CURRENT

◆ FG_STATIC_

#define FG_STATIC_

◆ FGAPI

#define FGAPI   __attribute__((visibility("default")))

Typedef Documentation

◆ fg_chart

typedef void* fg_chart

◆ fg_font

typedef void* fg_font

◆ fg_histogram

typedef void* fg_histogram

◆ fg_image

typedef void* fg_image

◆ fg_plot

typedef void* fg_plot

◆ fg_surface

typedef void* fg_surface

◆ fg_vector_field

typedef void* fg_vector_field

◆ fg_window

typedef void* fg_window

Enumeration Type Documentation

◆ fg_channel_format

Enumerator
FG_GRAYSCALE 

Single channel.

FG_RG 

Three(Red, Green & Blue) channels.

FG_RGB 

Three(Red, Green & Blue) channels.

FG_BGR 

Three(Red, Green & Blue) channels.

FG_RGBA 

Four(Red, Green, Blue & Alpha) channels.

FG_BGRA 

Four(Red, Green, Blue & Alpha) channels.

◆ fg_chart_type

Enumerator
FG_CHART_2D 

Two dimensional charts.

FG_CHART_3D 

Three dimensional charts.

◆ fg_color

enum fg_color
Enumerator
FG_RED 
FG_GREEN 
FG_BLUE 
FG_YELLOW 
FG_CYAN 
FG_MAGENTA 
FG_WHITE 
FG_BLACK 

◆ fg_color_map

Color maps.

Enumerator
FG_COLOR_MAP_DEFAULT 

Default [0-255] grayscale colormap.

FG_COLOR_MAP_SPECTRUM 

Visual spectrum (390nm-830nm) in sRGB colorspace.

FG_COLOR_MAP_RAINBOW 

Rainbow color map.

FG_COLOR_MAP_RED 

Red color map.

FG_COLOR_MAP_MOOD 

Mood color map.

FG_COLOR_MAP_HEAT 

Heat color map.

FG_COLOR_MAP_BLUE 

Blue color map.

FG_COLOR_MAP_INFERNO 

perceptually uniform shades of black-red-yellow

FG_COLOR_MAP_MAGMA 

perceptually uniform shades of black-red-white

FG_COLOR_MAP_PLASMA 

perceptually uniform shades of blue-red-yellow

FG_COLOR_MAP_VIRIDIS 

perceptually uniform shades of blue-green-yellow

◆ fg_dtype

enum fg_dtype
Enumerator
FG_INT8 

Signed byte (8-bits)

FG_UINT8 

Unsigned byte (8-bits)

FG_INT32 

Signed integer (32-bits)

FG_UINT32 

Unsigned integer (32-bits)

FG_FLOAT32 

Float (32-bits)

FG_INT16 

Signed integer (16-bits)

FG_UINT16 

Unsigned integer (16-bits)

◆ fg_err

enum fg_err
Enumerator
FG_ERR_NONE 

Fuction returned successfully.

FG_ERR_SIZE 

Invalid size argument.

FG_ERR_INVALID_TYPE 

Invalid type argument.

FG_ERR_INVALID_ARG 

Invalid argument.

FG_ERR_GL_ERROR 

OpenGL error.

FG_ERR_FREETYPE_ERROR 

Freetype library error.

FG_ERR_FILE_NOT_FOUND 

File IO errors.

FG_ERR_NOT_SUPPORTED 

Feature not supported.

FG_ERR_NOT_CONFIGURED 

Library configuration mismatch.

FG_ERR_FONTCONFIG_ERROR 

Fontconfig related error.

FG_ERR_FREEIMAGE_UNKNOWN_FORMAT 

Unknown format, not supported by freeimage.

FG_ERR_FREEIMAGE_BAD_ALLOC 

freeimage memory allocation failed

FG_ERR_FREEIMAGE_SAVE_FAILED 

freeimage file save failed

FG_ERR_INTERNAL 

Internal error.

FG_ERR_RUNTIME 

Runtime error.

FG_ERR_UNKNOWN 

Unkown error.

◆ fg_marker_type

Enumerator
FG_MARKER_NONE 

No marker.

FG_MARKER_POINT 

Point marker.

FG_MARKER_CIRCLE 

Circle marker.

FG_MARKER_SQUARE 

Square marker.

FG_MARKER_TRIANGLE 

Triangle marker.

FG_MARKER_CROSS 

Cross-hair marker.

FG_MARKER_PLUS 

Plus symbol marker.

FG_MARKER_STAR 

Star symbol marker.

◆ fg_plot_type

Enumerator
FG_PLOT_LINE 

Line plot.

FG_PLOT_SCATTER 

Scatter plot.

FG_PLOT_SURFACE 

Surface plot.