namespace ffw

Class List > ffw

Classes

Type Name
struct BitDepth
struct Color
class GLBuffer
class GLCanvas
class GLElementBuffer
class GLException
class GLFramebuffer
class GLProgram
class GLRenderbuffer
class GLRenderbuffer2D
class GLRenderbuffer2DMS
class GLRenderWindow
class GLShader
class GLTexture
class GLTexture1D
class GLTexture1DArray
class GLTexture2D
class GLTexture2DArray
class GLTexture2DArrayMS
class GLTexture2DMS
class GLTexture3D
class GLTextureCubemap
class GLVertexArray
class GLVertexBuffer
struct Mat3x3
struct Mat4x4
struct Monitor
struct Quaternion
class RenderWindow
struct RenderWindowArgs
struct Resolution
class Vec
struct Vec2
struct Vec3
struct Vec4
class WindowException

Enums

Type Name
enum MouseButton { LEFT = 0, RIGHT = 1, MIDDLE = 2, EXTRA1 = 3, EXTRA2 = 4 }
enum MouseMode { RELEASED = 0, PRESSED = 1, NONE = -1 }
enum KeyMode { RELEASED = 0, PRESSED = 1, REPEAT = 2, NONE = -1 }
enum Key { UNKNOWN = -1, SPACE = 32, APOSTROPHE = 39, COMMA = 44, MINUS = 45, PERIOD = 46, SLASH = 47, NUM_0 = 48, NUM_1 = 49, NUM_2 = 50, NUM_3 = 51, NUM_4 = 52, NUM_5 = 53, NUM_6 = 54, NUM_7 = 55, NUM_8 = 56, NUM_9 = 57, SEMICOLON = 59, EQUAL = 61, LETTER_A = 65, LETTER_B = 66, LETTER_C = 67, LETTER_D = 68, LETTER_E = 69, LETTER_F = 70, LETTER_G = 71, LETTER_H = 72, LETTER_I = 73, LETTER_J = 74, LETTER_K = 75, LETTER_L = 76, LETTER_M = 77, LETTER_N = 78, LETTER_O = 79, LETTER_P = 80, LETTER_Q = 81, LETTER_R = 82, LETTER_S = 83, LETTER_T = 84, LETTER_U = 85, LETTER_V = 86, LETTER_W = 87, LETTER_X = 88, LETTER_Y = 89, LETTER_Z = 90, BRACKETLEFT = 91, BACKSLASH = 92, BRACKETRIGHT = 93, GRAVEACCENT = 96, WORLD_1 = 161, WORLD_2 = 162, ESCAPE = 256, ENTER = 257, TAB = 258, BACKSPACE = 259, FUNCTION_INSERT = 260, FUNCTION_DELETE = 261, ARROW_RIGHT = 262, ARROW_LEFT = 263, ARROW_DOWN = 264, ARROW_UP = 265, FUNCTION_PAGEUP = 266, FUNCTION_PAGEDOWN = 267, FUNCTION_HOME = 268, FUNCTION_END = 269, FUNCTION_CAPSLOCK = 280, FUNCTION_SCROLLLOCK = 281, FUNCTION_NUMLOCK = 282, FUNCTION_PRINTSCREEN = 283, FUNCTION_PAUSE = 284, FUNCTION_F1 = 290, FUNCTION_F2 = 291, FUNCTION_F3 = 292, FUNCTION_F4 = 293, FUNCTION_F5 = 294, FUNCTION_F6 = 295, FUNCTION_F7 = 296, FUNCTION_F8 = 297, FUNCTION_F9 = 298, FUNCTION_F10 = 299, FUNCTION_F11 = 300, FUNCTION_F12 = 301, FUNCTION_F13 = 302, FUNCTION_F14 = 303, FUNCTION_F15 = 304, FUNCTION_F16 = 305, FUNCTION_F17 = 306, FUNCTION_F18 = 307, FUNCTION_F19 = 308, FUNCTION_F20 = 309, FUNCTION_F21 = 310, FUNCTION_F22 = 311, FUNCTION_F23 = 312, FUNCTION_F24 = 313, FUNCTION_F25 = 314, NUMPAD_0 = 320, NUMPAD_1 = 321, NUMPAD_2 = 322, NUMPAD_3 = 323, NUMPAD_4 = 324, NUMPAD_5 = 325, NUMPAD_6 = 326, NUMPAD_7 = 327, NUMPAD_8 = 328, NUMPAD_9 = 329, NUMPAD_DECIMAL = 330, NUMPAD_DIVIDE = 331, NUMPAD_MULTIPLY = 332, NUMPAD_SUBSTRACT = 333, NUMPAD_ADD = 334, NUMPAD_ENTER = 335, NUMPAD_EQUAL = 336, SHIFT_LEFT = 340, CONTROL_LEFT = 341, ALT_LEFT = 342, SUPER_LEFT = 343, SHIFT_RIGHT = 344, CONTROL_RIGHT = 345, ALT_RIGHT = 346, SUPER_RIGHT = 347, FUNCTION_MENU = 348, FUNCTION_LAST = 348, FUNCTION_CLEAR = 348, FUNCTION_SEPARATOR = 349, FUNCTION_SELECT = 350, FUNCTION_ZOOM = 351, BROWSER_BACK = 352, BROWSER_FAVORITES = 353, BROWSER_FORWARD = 354, BROWSER_HOME = 353, BROWSER_REFRESH = 354, BROWSER_SEARCH = 355, BROWSER_STOP = 356, MEDIA_MUTE = 357, MEDIA_VOLUMEDOWN = 358, MEDIA_VOLUMEUP = 359, MEDIA_NEXT = 360, MEDIA_PREV = 361, MEDIA_STOP = 362, MEDIA_PLAY = 363, MEDIA_MAIL = 364, MEDIA_SELECT = 365, MEDIA_APP1 = 366, MEDIA_APP2 = 367 }
enum ClientGLAPI { NONE, OPENGL, OPENGL_ES, ANY }
enum ClientGLProfile { ANY, CORE, COMPAT }

Typedefs

Type Name
typedef Mat3x3< float > Mat3x3f
typedef Mat3x3< double > Mat3x3d
typedef Mat3x3< int > Mat3x3i
typedef Mat4x4< float > Mat4x4f
typedef Mat4x4< double > Mat4x4d
typedef Mat4x4< int > Mat4x4i
typedef Quaternion< float > Quaternionf
typedef Quaternion< double > Quaterniond
typedef Vec2< float > Vec2f
typedef Vec2< int > Vec2i
typedef Vec2< short > Vec2s
typedef Vec2< long long > Vec2ll
typedef Vec2< double > Vec2d
typedef Vec3< float > Vec3f
typedef Vec3< int > Vec3i
typedef Vec3< short > Vec3s
typedef Vec3< long long > Vec3ll
typedef Vec3< double > Vec3d
typedef Vec4< float > Vec4f
typedef Vec4< int > Vec4i
typedef Vec4< short > Vec4s
typedef Vec4< long long > Vec4ll
typedef Vec4< double > Vec4d

Functions

Type Name
Color rgb (unsigned long hex)
Constructs ffw::Color from a hexadecimal value.
Color rgb (unsigned char r, unsigned char g, unsigned char b)
Constructs ffw::Color from three 8-bit balues.
Color rgba (unsigned long hex)
Constructs ffw::Color from a hexadecimal value with alpha.
Color rgba (unsigned char r, unsigned char g, unsigned char b, unsigned char a)
Constructs ffw::Color from three 8-bit balues with alpha.
Color hsl (const float h, const float s, const float l, const float a = 1.0f)
Constructs ffw::Color from HSL values.
Color hsv (const float h, const float s, const float v, const float a = 1.0f)
Constructs ffw::Color from HSV values.
ffw::Color normalize (const Color & col)
Normalizes a color returning a copy (won't modify the original)
ffw::Color clamp (const ffw::Color & color)
Clamps a color between 0.0 and 1.0 values returning a copy (won't modify the original)
std::ostream & operator<< (std::ostream & os, const ffw::Color & color)
void loadGlCoreArb (void *(*)(const char *) glextLoader)
T clamp (const T val, const T min, const T max)
T lerp (const T & a, const T & b, float w)
T radians (const T val)
T degrees (const T val)
T remap (const T value, const T inMin, const T inMax, const T outMin, const T outMax)
unsigned long nextPowOfTwo (const unsigned long value)
unsigned short byteSwap16 (const unsigned short value)
unsigned long byteSwap32 (const unsigned long value)
unsigned long long byteSwap64 (const unsigned long long value)
ffw::Mat4x4< T > makeRotationMatrix (const ffw::Quaternion< T > & q)
Mat4x4< T > makeProjectionMatrix (T fieldOfView, T aspect, T near, T far)
Mat4x4< T > makeLookAtMatrix (const Vec3< T > & eyes, const Vec3< T > & target, const Vec3< T > & upVector)
Mat4x4< T > makeFpsCameraMatrix (const Vec3< T > & eyes, float pitch, float yaw)
Mat4x4< T > makeOrthoMatrix (T left, T right, T bottom, T top, T znear, T zfar)
ffw::Quaternion< T > normalize (const Quaternion< T > & q)
std::ostream & operator<< (std::ostream & os, const ffw::Quaternion< T > & quat)
T dot (const ffw::Vec2< T > & v1, const ffw::Vec2< T > & v2)
T distance (const Vec2< T > & v1, const Vec2< T > & v2)
Vec2< T > middle (const Vec2< T > & v1, const Vec2< T > & v2)
ffw::Vec2< T > normalize (const Vec2< T > & vec)
double angle (const ffw::Vec2< T > & v1, const ffw::Vec2< T > & v2)
double angleRad (const ffw::Vec2< T > & v1, const ffw::Vec2< T > & v2)
std::ostream & operator<< (std::ostream & os, const ffw::Vec2< T > & vec)
T dot (const ffw::Vec3< T > & v1, const ffw::Vec3< T > & v2)
ffw::Vec3< T > cross (const ffw::Vec3< T > & v1, const ffw::Vec3< T > & v2)
T distance (const Vec3< T > & v1, const Vec3< T > & v2)
Vec3< T > middle (const Vec3< T > & v1, const Vec3< T > & v2)
ffw::Vec3< T > normalize (const Vec3< T > & vec)
double angle (const ffw::Vec3< T > & v1, const ffw::Vec3< T > & v2)
double angleRad (const ffw::Vec3< T > & v1, const ffw::Vec3< T > & v2)
std::ostream & operator<< (std::ostream & os, const ffw::Vec3< T > & vec)
T dot (const ffw::Vec4< T > & V1, const ffw::Vec4< T > & V2)
T distance (const Vec4< T > & v1, const Vec4< T > & v2)
Vec4< T > middle (const Vec4< T > & v1, const Vec4< T > & v2)
ffw::Vec4< T > normalize (const Vec4< T > & vec)
std::ostream & operator<< (std::ostream & os, const ffw::Vec4< T > & vec)
T dot (const ffw::Vec< T, S > & V1, const ffw::Vec< T, S > & V2)
T distance (const Vec< T, S > & v1, const Vec< T, S > & v2)
Vec< T, S > middle (const Vec< T, S > & v1, const Vec< T, S > & v2)
ffw::Vec< T, S > normalize (const Vec< T, S > & vec)
std::ostream & operator<< (std::ostream & os, const ffw::Vec< T, S > & vec)

Enums Documentation

enum MouseButton

enum ffw::MouseButton {
    LEFT = 0,
    RIGHT = 1,
    MIDDLE = 2,
    EXTRA1 = 3,
    EXTRA2 = 4,
};

enum MouseMode

enum ffw::MouseMode {
    RELEASED = 0,
    PRESSED = 1,
    NONE = -1,
};

enum KeyMode

enum ffw::KeyMode {
    RELEASED = 0,
    PRESSED = 1,
    REPEAT = 2,
    NONE = -1,
};

enum Key

enum ffw::Key {
    UNKNOWN = -1,
    SPACE = 32,
    APOSTROPHE = 39,
    COMMA = 44,
    MINUS = 45,
    PERIOD = 46,
    SLASH = 47,
    NUM_0 = 48,
    NUM_1 = 49,
    NUM_2 = 50,
    NUM_3 = 51,
    NUM_4 = 52,
    NUM_5 = 53,
    NUM_6 = 54,
    NUM_7 = 55,
    NUM_8 = 56,
    NUM_9 = 57,
    SEMICOLON = 59,
    EQUAL = 61,
    LETTER_A = 65,
    LETTER_B = 66,
    LETTER_C = 67,
    LETTER_D = 68,
    LETTER_E = 69,
    LETTER_F = 70,
    LETTER_G = 71,
    LETTER_H = 72,
    LETTER_I = 73,
    LETTER_J = 74,
    LETTER_K = 75,
    LETTER_L = 76,
    LETTER_M = 77,
    LETTER_N = 78,
    LETTER_O = 79,
    LETTER_P = 80,
    LETTER_Q = 81,
    LETTER_R = 82,
    LETTER_S = 83,
    LETTER_T = 84,
    LETTER_U = 85,
    LETTER_V = 86,
    LETTER_W = 87,
    LETTER_X = 88,
    LETTER_Y = 89,
    LETTER_Z = 90,
    BRACKETLEFT = 91,
    BACKSLASH = 92,
    BRACKETRIGHT = 93,
    GRAVEACCENT = 96,
    WORLD_1 = 161,
    WORLD_2 = 162,
    ESCAPE = 256,
    ENTER = 257,
    TAB = 258,
    BACKSPACE = 259,
    FUNCTION_INSERT = 260,
    FUNCTION_DELETE = 261,
    ARROW_RIGHT = 262,
    ARROW_LEFT = 263,
    ARROW_DOWN = 264,
    ARROW_UP = 265,
    FUNCTION_PAGEUP = 266,
    FUNCTION_PAGEDOWN = 267,
    FUNCTION_HOME = 268,
    FUNCTION_END = 269,
    FUNCTION_CAPSLOCK = 280,
    FUNCTION_SCROLLLOCK = 281,
    FUNCTION_NUMLOCK = 282,
    FUNCTION_PRINTSCREEN = 283,
    FUNCTION_PAUSE = 284,
    FUNCTION_F1 = 290,
    FUNCTION_F2 = 291,
    FUNCTION_F3 = 292,
    FUNCTION_F4 = 293,
    FUNCTION_F5 = 294,
    FUNCTION_F6 = 295,
    FUNCTION_F7 = 296,
    FUNCTION_F8 = 297,
    FUNCTION_F9 = 298,
    FUNCTION_F10 = 299,
    FUNCTION_F11 = 300,
    FUNCTION_F12 = 301,
    FUNCTION_F13 = 302,
    FUNCTION_F14 = 303,
    FUNCTION_F15 = 304,
    FUNCTION_F16 = 305,
    FUNCTION_F17 = 306,
    FUNCTION_F18 = 307,
    FUNCTION_F19 = 308,
    FUNCTION_F20 = 309,
    FUNCTION_F21 = 310,
    FUNCTION_F22 = 311,
    FUNCTION_F23 = 312,
    FUNCTION_F24 = 313,
    FUNCTION_F25 = 314,
    NUMPAD_0 = 320,
    NUMPAD_1 = 321,
    NUMPAD_2 = 322,
    NUMPAD_3 = 323,
    NUMPAD_4 = 324,
    NUMPAD_5 = 325,
    NUMPAD_6 = 326,
    NUMPAD_7 = 327,
    NUMPAD_8 = 328,
    NUMPAD_9 = 329,
    NUMPAD_DECIMAL = 330,
    NUMPAD_DIVIDE = 331,
    NUMPAD_MULTIPLY = 332,
    NUMPAD_SUBSTRACT = 333,
    NUMPAD_ADD = 334,
    NUMPAD_ENTER = 335,
    NUMPAD_EQUAL = 336,
    SHIFT_LEFT = 340,
    CONTROL_LEFT = 341,
    ALT_LEFT = 342,
    SUPER_LEFT = 343,
    SHIFT_RIGHT = 344,
    CONTROL_RIGHT = 345,
    ALT_RIGHT = 346,
    SUPER_RIGHT = 347,
    FUNCTION_MENU = 348,
    FUNCTION_LAST = 348,
    FUNCTION_CLEAR = 348,
    FUNCTION_SEPARATOR = 349,
    FUNCTION_SELECT = 350,
    FUNCTION_ZOOM = 351,
    BROWSER_BACK = 352,
    BROWSER_FAVORITES = 353,
    BROWSER_FORWARD = 354,
    BROWSER_HOME = 353,
    BROWSER_REFRESH = 354,
    BROWSER_SEARCH = 355,
    BROWSER_STOP = 356,
    MEDIA_MUTE = 357,
    MEDIA_VOLUMEDOWN = 358,
    MEDIA_VOLUMEUP = 359,
    MEDIA_NEXT = 360,
    MEDIA_PREV = 361,
    MEDIA_STOP = 362,
    MEDIA_PLAY = 363,
    MEDIA_MAIL = 364,
    MEDIA_SELECT = 365,
    MEDIA_APP1 = 366,
    MEDIA_APP2 = 367,
};

enum ClientGLAPI

enum ffw::ClientGLAPI {
    NONE,
    OPENGL,
    OPENGL_ES,
    ANY,
};

enum ClientGLProfile

enum ffw::ClientGLProfile {
    ANY,
    CORE,
    COMPAT,
};

Typedefs Documentation

typedef Mat3x3f

typedef Mat3x3<float> ffw::Mat3x3f;

typedef Mat3x3d

typedef Mat3x3<double> ffw::Mat3x3d;

typedef Mat3x3i

typedef Mat3x3<int> ffw::Mat3x3i;

typedef Mat4x4f

typedef Mat4x4<float> ffw::Mat4x4f;

typedef Mat4x4d

typedef Mat4x4<double> ffw::Mat4x4d;

typedef Mat4x4i

typedef Mat4x4<int> ffw::Mat4x4i;

typedef Quaternionf

typedef Quaternion<float> ffw::Quaternionf;

typedef Quaterniond

typedef Quaternion<double> ffw::Quaterniond;

typedef Vec2f

typedef Vec2<float> ffw::Vec2f;

typedef Vec2i

typedef Vec2<int> ffw::Vec2i;

typedef Vec2s

typedef Vec2<short> ffw::Vec2s;

typedef Vec2ll

typedef Vec2<long long> ffw::Vec2ll;

typedef Vec2d

typedef Vec2<double> ffw::Vec2d;

typedef Vec3f

typedef Vec3<float> ffw::Vec3f;

typedef Vec3i

typedef Vec3<int> ffw::Vec3i;

typedef Vec3s

typedef Vec3<short> ffw::Vec3s;

typedef Vec3ll

typedef Vec3<long long> ffw::Vec3ll;

typedef Vec3d

typedef Vec3<double> ffw::Vec3d;

typedef Vec4f

typedef Vec4<float> ffw::Vec4f;

typedef Vec4i

typedef Vec4<int> ffw::Vec4i;

typedef Vec4s

typedef Vec4<short> ffw::Vec4s;

typedef Vec4ll

typedef Vec4<long long> ffw::Vec4ll;

typedef Vec4d

typedef Vec4<double> ffw::Vec4d;

Functions Documentation

function rgb

Color ffw::rgb (
    unsigned long hex
)

Constructs ffw::Color from a hexadecimal value.

For example, ffw::rgb(0xFF0080) returns 100% red and 50% blue. Alpha is set to 100%.

Warning:

Make sure to use 0xRRGGBB formula. For example, using 0xFF00 in this function would result of color with 0% red, 100% green, and 0% blue. Also, using 0xFF would result in complete blue color.

function rgb

Color ffw::rgb (
    unsigned char r,
    unsigned char g,
    unsigned char b
)

Constructs ffw::Color from three 8-bit balues.

For example, ffw::rgb(255, 0, 128) returns 100% red and 50% blue. Alpha is set to 100%.

function rgba

Color ffw::rgba (
    unsigned long hex
)

Constructs ffw::Color from a hexadecimal value with alpha.

For example, ffw::rgba(0xFF0080BF) returns 100% red, 50% blue, and 80% alpha.

Warning:

Make sure to use 0xRRGGBBAA formula. For example, using 0xFF0080 in this function would result of color with 0% red, 100% green, 0% blue, and 50% alpha. Also, using 0xFF would result in complete black color with 100% alpha.

function rgba

Color ffw::rgba (
    unsigned char r,
    unsigned char g,
    unsigned char b,
    unsigned char a
)

Constructs ffw::Color from three 8-bit balues with alpha.

For example, ffw::rgba(255, 0, 128, 191) returns 100% red, 50% blue, and 80% alpha.

function hsl

Color ffw::hsl (
    const float h,
    const float s,
    const float l,
    const float a = 1.0f
)

Constructs ffw::Color from HSL values.

Parameters:

  • h The hue component in range [0, 1]
  • s The saturation component in range [0, 1]
  • l The luminance component in range [0, 1]
  • a The alpha component in range [0, 1]

For example, ffw::hsl(0.8f, 0.5f, 0.5f) returns purple color with 50% saturation and 50% luminance.

function hsv

Color ffw::hsv (
    const float h,
    const float s,
    const float v,
    const float a = 1.0f
)

Constructs ffw::Color from HSV values.

Parameters:

  • h The hue component in range [0, 1]
  • s The saturation component in range [0, 1]
  • v The value component in range [0, 1]
  • a The alpha component in range [0, 1]

function normalize

ffw::Color ffw::normalize (
    const Color & col
)

Normalizes a color returning a copy (won't modify the original)

function clamp

ffw::Color ffw::clamp (
    const ffw::Color & color
)

Clamps a color between 0.0 and 1.0 values returning a copy (won't modify the original)

function operator<<

std::ostream & ffw::operator<< (
    std::ostream & os,
    const ffw::Color & color
)

function loadGlCoreArb

void ffw::loadGlCoreArb (
    void *(*)(const char *) glextLoader
)

function clamp

T ffw::clamp (
    const T val,
    const T min,
    const T max
)

function lerp

T ffw::lerp (
    const T & a,
    const T & b,
    float w
)

function radians

T ffw::radians (
    const T val
)

function degrees

T ffw::degrees (
    const T val
)

function remap

T ffw::remap (
    const T value,
    const T inMin,
    const T inMax,
    const T outMin,
    const T outMax
)

function nextPowOfTwo

unsigned long ffw::nextPowOfTwo (
    const unsigned long value
)

function byteSwap16

unsigned short ffw::byteSwap16 (
    const unsigned short value
)

function byteSwap32

unsigned long ffw::byteSwap32 (
    const unsigned long value
)

function byteSwap64

unsigned long long ffw::byteSwap64 (
    const unsigned long long value
)

function makeRotationMatrix

ffw::Mat4x4< T > ffw::makeRotationMatrix (
    const ffw::Quaternion< T > & q
)

function makeProjectionMatrix

Mat4x4< T > ffw::makeProjectionMatrix (
    T fieldOfView,
    T aspect,
    T near,
    T far
)

function makeLookAtMatrix

Mat4x4< T > ffw::makeLookAtMatrix (
    const Vec3< T > & eyes,
    const Vec3< T > & target,
    const Vec3< T > & upVector
)

function makeFpsCameraMatrix

Mat4x4< T > ffw::makeFpsCameraMatrix (
    const Vec3< T > & eyes,
    float pitch,
    float yaw
)

function makeOrthoMatrix

Mat4x4< T > ffw::makeOrthoMatrix (
    T left,
    T right,
    T bottom,
    T top,
    T znear,
    T zfar
)

function normalize

ffw::Quaternion< T > ffw::normalize (
    const Quaternion< T > & q
)

function operator<<

std::ostream & ffw::operator<< (
    std::ostream & os,
    const ffw::Quaternion< T > & quat
)

function dot

T ffw::dot (
    const ffw::Vec2< T > & v1,
    const ffw::Vec2< T > & v2
)

function distance

T ffw::distance (
    const Vec2< T > & v1,
    const Vec2< T > & v2
)

function middle

Vec2< T > ffw::middle (
    const Vec2< T > & v1,
    const Vec2< T > & v2
)

function normalize

ffw::Vec2< T > ffw::normalize (
    const Vec2< T > & vec
)

function angle

double ffw::angle (
    const ffw::Vec2< T > & v1,
    const ffw::Vec2< T > & v2
)

function angleRad

double ffw::angleRad (
    const ffw::Vec2< T > & v1,
    const ffw::Vec2< T > & v2
)

function operator<<

std::ostream & ffw::operator<< (
    std::ostream & os,
    const ffw::Vec2< T > & vec
)

function dot

T ffw::dot (
    const ffw::Vec3< T > & v1,
    const ffw::Vec3< T > & v2
)

function cross

ffw::Vec3< T > ffw::cross (
    const ffw::Vec3< T > & v1,
    const ffw::Vec3< T > & v2
)

function distance

T ffw::distance (
    const Vec3< T > & v1,
    const Vec3< T > & v2
)

function middle

Vec3< T > ffw::middle (
    const Vec3< T > & v1,
    const Vec3< T > & v2
)

function normalize

ffw::Vec3< T > ffw::normalize (
    const Vec3< T > & vec
)

function angle

double ffw::angle (
    const ffw::Vec3< T > & v1,
    const ffw::Vec3< T > & v2
)

function angleRad

double ffw::angleRad (
    const ffw::Vec3< T > & v1,
    const ffw::Vec3< T > & v2
)

function operator<<

std::ostream & ffw::operator<< (
    std::ostream & os,
    const ffw::Vec3< T > & vec
)

function dot

T ffw::dot (
    const ffw::Vec4< T > & V1,
    const ffw::Vec4< T > & V2
)

function distance

T ffw::distance (
    const Vec4< T > & v1,
    const Vec4< T > & v2
)

function middle

Vec4< T > ffw::middle (
    const Vec4< T > & v1,
    const Vec4< T > & v2
)

function normalize

ffw::Vec4< T > ffw::normalize (
    const Vec4< T > & vec
)

function operator<<

std::ostream & ffw::operator<< (
    std::ostream & os,
    const ffw::Vec4< T > & vec
)

function dot

T ffw::dot (
    const ffw::Vec< T, S > & V1,
    const ffw::Vec< T, S > & V2
)

function distance

T ffw::distance (
    const Vec< T, S > & v1,
    const Vec< T, S > & v2
)

function middle

Vec< T, S > ffw::middle (
    const Vec< T, S > & v1,
    const Vec< T, S > & v2
)

function normalize

ffw::Vec< T, S > ffw::normalize (
    const Vec< T, S > & vec
)

function operator<<

std::ostream & ffw::operator<< (
    std::ostream & os,
    const ffw::Vec< T, S > & vec
)

The documentation for this class was generated from the following file: include/ffw/graphics/color.h