betray_Betray_.html

BETRAY_H

betray_On_Windows,_we_also_need_the_mai.html

BETRAY_CONTEXT_OPENGL

extern extern __declspec(dllexport)

betray_We_need_OpenGL,_which_is_a_bit_h.html

BETRAY_CONTEXT_OPENGL

main betray_internal_main

betray_--------------------------------.html

B_POINTER_BUTTONS_COUNT

B_POINTER_BUTTONS_COUNT 16

Description: Maximum number of buttons ona pointing device

B_MAX_EVENT_COUNT

B_MAX_EVENT_COUNT 64

Description: maximum number of simultanius events per frame

B_BUTTONS_COUNT

B_BUTTONS_COUNT (256 + 16)

Description: /

betray_Pointer_Structure_.html

Struct:

BInputPointerState

float pointer_x

Description: Current X position of the pointer ranging form -1 to +1

float pointer_y

Description: Current Y position of the pointer ranging form -Aspect ratio to + aspect ratio

float pointer_z

Description: Current Z position of the pointer ranging form -Aspect ratio to + aspect ratio

float click_pointer_x[B_POINTER_BUTTONS_COUNT]

Description: X Position of last click event for each button on the device

float click_pointer_y[B_POINTER_BUTTONS_COUNT]

float click_pointer_z[B_POINTER_BUTTONS_COUNT]

float delta_pointer_x

Description: X Delta movement

float delta_pointer_y

Description: Y Delta movement

float delta_pointer_z

Description: Z Delta movement

float origin[3]

Description: Origin of pointer

boolean button[B_POINTER_BUTTONS_COUNT]

Description: Current button state

boolean last_button[B_POINTER_BUTTONS_COUNT]

Description: Button state of previous frame. Use full in combination with the button parameter. Example: if(input->button[0] && !input->last_button) equals a click.

uint button_count

Description: number of buttons on the device

char name[32]

Description: name of the device Example "Mouse"

uint user_id

Description: The id of the user operating the pointer

uint device_id

Description: Device id of the pointer

boolean draw

Description: Should applications draw this pointer to make it visible to the user

BInputPointerState

Description: ------ Axis Enum ------- This enum describes the type of decice that is outputing a axis value

typedef enum{ B_AXIS_UNDEFINED

Description: Any axis that doesnt fit any pre definds description

B_AXIS_STICK

Description: Joystick

B_AXIS_SUBSTICK

Description: Thumb joystiq on top of joystick

B_AXIS_BUMPER_LEFT

Description: Left analog bumper top to bottom

B_AXIS_BUMPER_RIGHT

Description: Right analog bumper top to bottom

B_AXIS_PEDAL

Description: Pedals left to right ranging form 0 to 1

B_AXIS_WHEEL

Description: Stearing Wheels

B_AXIS_CONTROLER_FORWARD

Description: Gyroscopc or other input defining forward vector of controler

B_AXIS_CONTROLER_UP

Description: Gyroscopc or other input defining up vector of controler

B_AXIS_CONTROLER_ACCELEROMETER

Description: Accelerometer of controler

B_AXIS_CONTROLER_POS

Description: Pos of controler

B_AXIS_SCREEN_FORWARD

Description: gyroscopc or other input defining forward vector of screen

B_AXIS_SCREEN_UP

Description: gyroscopc or other input defining up vector of screen

B_AXIS_SCREEN_ACCELEROMETER

Description: Accelerometer of screen

B_AXIS_SCREEN_POS

Description: Pos of screen

B_AXIS_OBJECT_FORWARD

Description: gyroscopc or other input defining forward vector of object beeing manipulated on screen

B_AXIS_OBJECT_UP

Description: gyroscopc or other input defining up vector of object beeing manipulated on screen

B_AXIS_OBJECT_ACCELEROMETER

Description: Accelerometer of object beeing manipulated on screen

B_AXIS_OBJECT_POS

Description: Pos of object of object beeing manipulated on screen

B_AXIS_ZOOM

Description: ZOOM

B_AXIS_SCORLL

Description: SCROLL

B_AXIS_SLIDER

* SLIDER *

betray_Axis_Enum_.html

Enum:

BAxisType

B_AXIS_UNDEFINED

Description: Any axis that doesnt fit any pre definds description

B_AXIS_STICK

Description: Joystick

B_AXIS_SUBSTICK

Description: Thumb joystiq on top of joystick

B_AXIS_BUMPER_LEFT

Description: Left analog bumper top to bottom

B_AXIS_BUMPER_RIGHT

Description: Right analog bumper top to bottom

B_AXIS_PEDAL

Description: Pedals left to right ranging form 0 to 1

B_AXIS_WHEEL

Description: Stearing Wheels

B_AXIS_CONTROLER_FORWARD

Description: Gyroscopc or other input defining forward vector of controler

B_AXIS_CONTROLER_UP

Description: Gyroscopc or other input defining up vector of controler

B_AXIS_CONTROLER_ACCELEROMETER

Description: Accelerometer of controler

B_AXIS_CONTROLER_POS

Description: Pos of controler

B_AXIS_SCREEN_FORWARD

Description: gyroscopc or other input defining forward vector of screen

B_AXIS_SCREEN_UP

Description: gyroscopc or other input defining up vector of screen

B_AXIS_SCREEN_ACCELEROMETER

Description: Accelerometer of screen

B_AXIS_SCREEN_POS

Description: Pos of screen

B_AXIS_OBJECT_FORWARD

Description: gyroscopc or other input defining forward vector of object beeing manipulated on screen

B_AXIS_OBJECT_UP

Description: gyroscopc or other input defining up vector of object beeing manipulated on screen

B_AXIS_OBJECT_ACCELEROMETER

Description: Accelerometer of object beeing manipulated on screen

B_AXIS_OBJECT_POS

Description: Pos of object of object beeing manipulated on screen

B_AXIS_ZOOM

Description: ZOOM

B_AXIS_SCORLL

Description: SCROLL

B_AXIS_SLIDER

Description: SLIDER

betray_Axis_state_.html

Struct:

BInputAxisState

float axis[3]

Description: position of axis ranged -1.0 to 1.0

uint axis_count

Description: Number of axis in use (1-3)

BAxisType axis_type

Description: Axis description, see lis above for pre defined axis types

char name[32]

Description: Name of axis input

uint user_id

Description: User id of the Axis, Typicaly different if you have multiple contorllers

uint device_id

Description: Device id of the Axis, Typicaly different if you have multiple contorllers

BInputAxisState

Description: ----- Button state ----- The current state of a button

typedef struct{ uint button

Description: the name of the button coresponding to the BETRAY_BUTTO_... defines.

uint character

Description: the unicode character this button corresponds to. -1 if not applicable

boolean state

Description: is the button going up or down. If yo want both its curent and previous state use the betray_button_get_up_down function

uint user_id

Description: User id of the button.

uint device_id

Description: Device id of the button

BButtonEvent

Description: ------ Action Mode ------- For each frame the main loop is usualy called at least 3 times, once for udating the screen (BAM_DRAW) once for input events (MAM_EVENT) and once for computation (BAM_MAIN).

typedef enum{ BAM_DRAW

Description: re draw the frame but do not advance time. can be called multiple times for multi display or sterioscopic systems

BAM_EVENT

Description: manage input, can be called multiple times if hardware has multipl separate input devices for multiple users, like more them one joypad

BAM_MAIN

* main idle loop

called even if the program is iconized and doesnt redraw or has input focus. Useful for keeping things like network conecctions alive.*

betray_Button_state_.html

Struct:

BButtonEvent

uint button

Description: the name of the button coresponding to the BETRAY_BUTTO_... defines.

uint character

Description: the unicode character this button corresponds to. -1 if not applicable

boolean state

Description: is the button going up or down. If yo want both its curent and previous state use the betray_button_get_up_down function

uint user_id

Description: User id of the button.

uint device_id

Description: Device id of the button

BButtonEvent

Description: ------ Action Mode ------- For each frame the main loop is usualy called at least 3 times, once for udating the screen (BAM_DRAW) once for input events (MAM_EVENT) and once for computation (BAM_MAIN).

typedef enum{ BAM_DRAW

Description: re draw the frame but do not advance time. can be called multiple times for multi display or sterioscopic systems

BAM_EVENT

Description: manage input, can be called multiple times if hardware has multipl separate input devices for multiple users, like more them one joypad

BAM_MAIN

* main idle loop

called even if the program is iconized and doesnt redraw or has input focus. Useful for keeping things like network conecctions alive.*

betray_Action_Mode_.html

Enum:

BActionMode

BAM_DRAW

Description: re draw the frame but do not advance time. can be called multiple times for multi display or sterioscopic systems

BAM_EVENT

Description: manage input, can be called multiple times if hardware has multipl separate input devices for multiple users, like more them one joypad

BAM_MAIN

Description: main idle loop, called even if the program is iconized and doesnt redraw or has input focus. Useful for keeping things like network conecctions alive.

betray_Input_structure_.html

Struct:

BInputState

BInputPointerState *pointers

Description: description of state of pointers (first is mouse pointer if availabel)

uint pointer_count

Description: number of pointers currently active

BInputAxisState *axis

Description: Analog input, joysticks, wheels, pedals, tracking....

uint axis_count

Description: Number of axis curerently available

BButtonEvent button_event[B_MAX_EVENT_COUNT]

Description: Button events

uint button_event_count

Description: Button Event count

double delta_time

Description: delta time for update

double minute_time

Description: timer in fractions of minutes that loops every minute, not syncronized with clock

uint draw_id

Description: current id if we have a multi dispalay output. By default zero. Useful in order to only have to render shadowmaps once for multiple displays

uint draw_count

Description: The number of displays we will render

uint user_count

Description: the number of users

uint frame_number

Description: increments by one each renderd frame on all draw_ids

BActionMode mode

Description: what is the purpouse of execution

BInputState

Description: ------- Button defines ----- Defines for all buttons. Note that they are variables, and are different on different platforms!

#ifdef BETRAY_BUTTON_BEGIN #define BETRAY_BUTTON_CANCEL

#define BETRAY_BUTTON_BACK

#define BETRAY_BUTTON_TAB

#define BETRAY_BUTTON_CLEAR

#define BETRAY_BUTTON_RETURN

#define BETRAY_BUTTON_SHIFT

#define BETRAY_BUTTON_MENU

#define BETRAY_BUTTON_PAUSE

#define BETRAY_BUTTON_CAPS_LOCK

#define BETRAY_BUTTON_ESCAPE

#define BETRAY_BUTTON_SPACE

#define BETRAY_BUTTON_PREV

#define BETRAY_BUTTON_NEXT

#define BETRAY_BUTTON_END

#define BETRAY_BUTTON_HOME

#define BETRAY_BUTTON_LEFT

#define BETRAY_BUTTON_UP

#define BETRAY_BUTTON_RIGHT

#define BETRAY_BUTTON_DOWN

#define BETRAY_BUTTON_SELECT

#define BETRAY_BUTTON_PRINT

#define BETRAY_BUTTON_EXECUTE

#define BETRAY_BUTTON_SCREENSHOT

#define BETRAY_BUTTON_INSERT

#define BETRAY_BUTTON_DELETE

#define BETRAY_BUTTON_BACKSPACE

#define BETRAY_BUTTON_HELP

#define BETRAY_BUTTON_0

#define BETRAY_BUTTON_1

#define BETRAY_BUTTON_2

#define BETRAY_BUTTON_3

#define BETRAY_BUTTON_4

#define BETRAY_BUTTON_5

#define BETRAY_BUTTON_6

#define BETRAY_BUTTON_7

#define BETRAY_BUTTON_8

#define BETRAY_BUTTON_9

#define BETRAY_BUTTON_A

#define BETRAY_BUTTON_B

#define BETRAY_BUTTON_C

#define BETRAY_BUTTON_D

#define BETRAY_BUTTON_E

#define BETRAY_BUTTON_F

#define BETRAY_BUTTON_G

#define BETRAY_BUTTON_H

#define BETRAY_BUTTON_I

#define BETRAY_BUTTON_J

#define BETRAY_BUTTON_K

#define BETRAY_BUTTON_L

#define BETRAY_BUTTON_M

#define BETRAY_BUTTON_N

#define BETRAY_BUTTON_O

#define BETRAY_BUTTON_P

#define BETRAY_BUTTON_Q

#define BETRAY_BUTTON_R

#define BETRAY_BUTTON_S

#define BETRAY_BUTTON_T

#define BETRAY_BUTTON_U

#define BETRAY_BUTTON_V

#define BETRAY_BUTTON_W

#define BETRAY_BUTTON_X

#define BETRAY_BUTTON_Y

#define BETRAY_BUTTON_Z

#define BETRAY_BUTTON_NUM_0

#define BETRAY_BUTTON_NUM_1

#define BETRAY_BUTTON_NUM_2

#define BETRAY_BUTTON_NUM_3

#define BETRAY_BUTTON_NUM_4

#define BETRAY_BUTTON_NUM_5

#define BETRAY_BUTTON_NUM_6

#define BETRAY_BUTTON_NUM_7

#define BETRAY_BUTTON_NUM_8

#define BETRAY_BUTTON_NUM_9

#define BETRAY_BUTTON_MULTIPLY

#define BETRAY_BUTTON_ADD

#define BETRAY_BUTTON_SUBTRACT

#define BETRAY_BUTTON_DIVIDED

#define BETRAY_BUTTON_PERIOD

#define BETRAY_BUTTON_COMMA

#define BETRAY_BUTTON_F1

#define BETRAY_BUTTON_F2

#define BETRAY_BUTTON_F3

#define BETRAY_BUTTON_F4

#define BETRAY_BUTTON_F5

#define BETRAY_BUTTON_F6

#define BETRAY_BUTTON_F7

#define BETRAY_BUTTON_F8

#define BETRAY_BUTTON_F9

#define BETRAY_BUTTON_F10

#define BETRAY_BUTTON_F11

#define BETRAY_BUTTON_F12

#define BETRAY_BUTTON_F13

#define BETRAY_BUTTON_F14

#define BETRAY_BUTTON_F15

#define BETRAY_BUTTON_F16

#define BETRAY_BUTTON_F17

#define BETRAY_BUTTON_F18

#define BETRAY_BUTTON_F19

#define BETRAY_BUTTON_F20

#define BETRAY_BUTTON_F21

#define BETRAY_BUTTON_F22

#define BETRAY_BUTTON_F23

#define BETRAY_BUTTON_F24

#define BETRAY_BUTTON_VOLUME_DOWN

#define BETRAY_BUTTON_VOLUME_UP

#define BETRAY_BUTTON_NEXT_TRACK

#define BETRAY_BUTTON_PREVIOUS_TRACK

#define BETRAY_BUTTON_STOP

#define BETRAY_BUTTON_PLAY_PAUSE

Description: first row of face buttons

#define BETRAY_BUTTON_FACE_A

#define BETRAY_BUTTON_FACE_B

#define BETRAY_BUTTON_FACE_C

#define BETRAY_BUTTON_FACE_D

Description: second row of face buttons

#define BETRAY_BUTTON_FACE_X

#define BETRAY_BUTTON_FACE_Y

#define BETRAY_BUTTON_FACE_Z

#define BETRAY_BUTTON_FACE_W

#define BETRAY_BUTTON_YES

#define BETRAY_BUTTON_NO

#define BETRAY_BUTTON_UNDO

#define BETRAY_BUTTON_REDO

#define BETRAY_BUTTON_CUT

#define BETRAY_BUTTON_COPY

#define BETRAY_BUTTON_PASTE

#define BETRAY_BUTTON_SELECT

#define BETRAY_BUTTON_SEARCH

#define BETRAY_BUTTON_SHOLDER_LEFT_A

#define BETRAY_BUTTON_SHOLDER_LEFT_B

#define BETRAY_BUTTON_SHOLDER_LEFT_C

#define BETRAY_BUTTON_SHOLDER_LEFT_D

#define BETRAY_BUTTON_SHOLDER_RIGHT_A

#define BETRAY_BUTTON_SHOLDER_RIGHT_B

#define BETRAY_BUTTON_SHOLDER_RIGHT_C

#define BETRAY_BUTTON_SHOLDER_RIGHT_D

#define BETRAY_BUTTON_SCROLL_UP

#define BETRAY_BUTTON_SCROLL_DOWN

#define BETRAY_BUTTON_SCROLL_LEFT

#define BETRAY_BUTTON_SCROLL_RIGHT

#define BETRAY_BUTTON_INVENTORY_NEXT

#define BETRAY_BUTTON_INVENTORY_PREVIOUS

#endif

* ------ Context type ----- possible contexts that canbe opend

currently only OpenGL but others could be possible in the future

typedef enum{ B_CT_OPENGL

Description: Normal OpenGL context

B_CT_OPENGLES2

Description: OpenGL 2.0 ES Context

B_CT_OPENGL_OR_ES

* Creating a context of either OpenGL Or OpenGLES*

betray_Button_defines_.html

BETRAY_BUTTON_CANCEL

BETRAY_BUTTON_BACK

BETRAY_BUTTON_TAB

BETRAY_BUTTON_CLEAR

BETRAY_BUTTON_RETURN

BETRAY_BUTTON_SHIFT

BETRAY_BUTTON_MENU

BETRAY_BUTTON_PAUSE

BETRAY_BUTTON_CAPS_LOCK

BETRAY_BUTTON_ESCAPE

BETRAY_BUTTON_SPACE

BETRAY_BUTTON_PREV

BETRAY_BUTTON_NEXT

BETRAY_BUTTON_END

BETRAY_BUTTON_HOME

BETRAY_BUTTON_LEFT

BETRAY_BUTTON_UP

BETRAY_BUTTON_RIGHT

BETRAY_BUTTON_DOWN

BETRAY_BUTTON_SELECT

BETRAY_BUTTON_PRINT

BETRAY_BUTTON_EXECUTE

BETRAY_BUTTON_SCREENSHOT

BETRAY_BUTTON_INSERT

BETRAY_BUTTON_DELETE

BETRAY_BUTTON_BACKSPACE

BETRAY_BUTTON_HELP

BETRAY_BUTTON_0

BETRAY_BUTTON_1

BETRAY_BUTTON_2

BETRAY_BUTTON_3

BETRAY_BUTTON_4

BETRAY_BUTTON_5

BETRAY_BUTTON_6

BETRAY_BUTTON_7

BETRAY_BUTTON_8

BETRAY_BUTTON_9

BETRAY_BUTTON_A

BETRAY_BUTTON_B

BETRAY_BUTTON_C

BETRAY_BUTTON_D

BETRAY_BUTTON_E

BETRAY_BUTTON_F

BETRAY_BUTTON_G

BETRAY_BUTTON_H

BETRAY_BUTTON_I

BETRAY_BUTTON_J

BETRAY_BUTTON_K

BETRAY_BUTTON_L

BETRAY_BUTTON_M

BETRAY_BUTTON_N

BETRAY_BUTTON_O

BETRAY_BUTTON_P

BETRAY_BUTTON_Q

BETRAY_BUTTON_R

BETRAY_BUTTON_S

BETRAY_BUTTON_T

BETRAY_BUTTON_U

BETRAY_BUTTON_V

BETRAY_BUTTON_W

BETRAY_BUTTON_X

BETRAY_BUTTON_Y

BETRAY_BUTTON_Z

BETRAY_BUTTON_NUM_0

BETRAY_BUTTON_NUM_1

BETRAY_BUTTON_NUM_2

BETRAY_BUTTON_NUM_3

BETRAY_BUTTON_NUM_4

BETRAY_BUTTON_NUM_5

BETRAY_BUTTON_NUM_6

BETRAY_BUTTON_NUM_7

BETRAY_BUTTON_NUM_8

BETRAY_BUTTON_NUM_9

BETRAY_BUTTON_MULTIPLY

BETRAY_BUTTON_ADD

BETRAY_BUTTON_SUBTRACT

BETRAY_BUTTON_DIVIDED

BETRAY_BUTTON_PERIOD

BETRAY_BUTTON_COMMA

BETRAY_BUTTON_F1

BETRAY_BUTTON_F2

BETRAY_BUTTON_F3

BETRAY_BUTTON_F4

BETRAY_BUTTON_F5

BETRAY_BUTTON_F6

BETRAY_BUTTON_F7

BETRAY_BUTTON_F8

BETRAY_BUTTON_F9

BETRAY_BUTTON_F10

BETRAY_BUTTON_F11

BETRAY_BUTTON_F12

BETRAY_BUTTON_F13

BETRAY_BUTTON_F14

BETRAY_BUTTON_F15

BETRAY_BUTTON_F16

BETRAY_BUTTON_F17

BETRAY_BUTTON_F18

BETRAY_BUTTON_F19

BETRAY_BUTTON_F20

BETRAY_BUTTON_F21

BETRAY_BUTTON_F22

BETRAY_BUTTON_F23

BETRAY_BUTTON_F24

BETRAY_BUTTON_VOLUME_DOWN

BETRAY_BUTTON_VOLUME_UP

BETRAY_BUTTON_NEXT_TRACK

BETRAY_BUTTON_PREVIOUS_TRACK

BETRAY_BUTTON_STOP

BETRAY_BUTTON_PLAY_PAUSE

betray_first_row_of_face_buttons_.html

BETRAY_BUTTON_FACE_A

BETRAY_BUTTON_FACE_B

BETRAY_BUTTON_FACE_C

BETRAY_BUTTON_FACE_D

betray_second_row_of_face_buttons_.html

BETRAY_BUTTON_FACE_X

BETRAY_BUTTON_FACE_Y

BETRAY_BUTTON_FACE_Z

BETRAY_BUTTON_FACE_W

BETRAY_BUTTON_YES

BETRAY_BUTTON_NO

BETRAY_BUTTON_UNDO

BETRAY_BUTTON_REDO

BETRAY_BUTTON_CUT

BETRAY_BUTTON_COPY

BETRAY_BUTTON_PASTE

BETRAY_BUTTON_SELECT

BETRAY_BUTTON_SEARCH

BETRAY_BUTTON_SHOLDER_LEFT_A

BETRAY_BUTTON_SHOLDER_LEFT_B

BETRAY_BUTTON_SHOLDER_LEFT_C

BETRAY_BUTTON_SHOLDER_LEFT_D

BETRAY_BUTTON_SHOLDER_RIGHT_A

BETRAY_BUTTON_SHOLDER_RIGHT_B

BETRAY_BUTTON_SHOLDER_RIGHT_C

BETRAY_BUTTON_SHOLDER_RIGHT_D

BETRAY_BUTTON_SCROLL_UP

BETRAY_BUTTON_SCROLL_DOWN

BETRAY_BUTTON_SCROLL_LEFT

BETRAY_BUTTON_SCROLL_RIGHT

BETRAY_BUTTON_INVENTORY_NEXT

BETRAY_BUTTON_INVENTORY_PREVIOUS

betray_Context_type_.html

Enum:

BContextType

B_CT_OPENGL

Description: Normal OpenGL context

B_CT_OPENGLES2

Description: OpenGL 2.0 ES Context

B_CT_OPENGL_OR_ES

Description: Creating a context of either OpenGL Or OpenGLES

betray_Functionality_query_Enum_.html

Enum:

BSupportedFunctionality

B_SF_USER_COUNT_MAX

Description: whats the maximum number of users

B_SF_POINTER_COUNT_MAX

Description: whats the maximum number of pointers

B_SF_FULLSCREEN

Description: Does the system support full screen

B_SF_WINDOWED

Description: Does the system support window mode

B_SF_VIEW_POSITION

Description: Does the system manipulate view vantage

B_SF_VIEW_ROTATION

Description: Does the system manipulate the view direction

B_SF_MOUSE_WARP

Description: Does the syetem support mouse warp

B_SF_EXECUTE

Description: Does the system support execute

B_SF_REQUESTER

Description: Can the system support save/load requesters

B_SF_CLIPBOARD

Description: Does the syetem support cut and paste

B_SF_COUNT

Description: Number of members of this Enum

betray_Sound_Clip_.html

BETRAY_TYPE_INT8 0

BETRAY_TYPE_INT16 1

BETRAY_TYPE_INT32 2

BETRAY_TYPE_FLOAT32 3

betray_Settings_.html

Enum:

BSettingType

BETRAY_ST_TRIGGER

Description: Creates a trigger event for a plugi. Useful for things like screen captiure.

BETRAY_ST_TOGGLE

Description: A simple boolean to turn on or off functionality.

BETRAY_ST_SELECT

Description: A Selector where the application can chose form one of a number of named optrions.

BETRAY_ST_STRING

Description: A text string option.

BETRAY_ST_NUMBER_FLOAT

Description: A floating point value.

BETRAY_ST_NUMBER_INT

Description: A integer value.

BETRAY_ST_SLIDER

Description: A Floating point value ranging from zero to one.

BETRAY_ST_2D

Description: A two dimational value ranged form, minus one to plus one.

BETRAY_ST_3D

Description: A three dimational value ranged form, minus one to plus one.

BETRAY_ST_COLOR

Description: A Color

BETRAY_ST_4X4_MATRIX

Description: A 4x4 trnasfomration matrix