Created raylib enumerated types (markdown)

Ray
2021-03-20 19:40:40 +01:00
parent cd12e52157
commit 2c7a3c3106

105
raylib-enumerated-types.md Normal file

@ -0,0 +1,105 @@
raylib provides some enumerated types to be used in some functions. You probably noticed that despite being typedef, there is no function referring to those `enum` types, all related parameters are just defined as `int`. This is a design decision and the reason for that is because those enums just intend to be a way to organize similar values definition, I use enums instead of plain defines. You can notice that because there is no enum intended to create variables of that type, just to be used as defined values. Maybe I review this decision decision in a future.
Here it is the list with the provided enums and the functions intended to use them.
[`enum ConfigFlags`](https://github.com/raysan5/raylib/blob/master/src/raylib.h#L480)
```c
SetConfigFlags(unsigned int flags);
SetWindowState(unsigned int flags);
```
[`enum TraceLogLevel](https://github.com/raysan5/raylib/blob/master/src/raylib.h#L498)
```c
TraceLog(int logLevel, const char *text, ...);
SetTraceLogLevel(int logLevel);
```
[`enum KeyboardKey](https://github.com/raysan5/raylib/blob/master/src/raylib.h#L512)
```c
IsKeyPressed(int key);
IsKeyDown(int key);
IsKeyReleased(int key);
IsKeyUp(int key);
SetExitKey(int key);
//GetKeyPressed(void);
```
[`enum MouseButton](https://github.com/raysan5/raylib/blob/master/src/raylib.h#L632)
```c
IsMouseButtonPressed(int button);
IsMouseButtonDown(int button);
IsMouseButtonReleased(int button);
IsMouseButtonUp(int button);
```
[`enum MouseCursor](https://github.com/raysan5/raylib/blob/master/src/raylib.h#L639)
```c
SetMouseCursor(int cursor);
```
[`enum GamepadButton](https://github.com/raysan5/raylib/blob/master/src/raylib.h#L654)
```c
IsGamepadButtonPressed(int gamepad, int button);
IsGamepadButtonDown(int gamepad, int button);
IsGamepadButtonReleased(int gamepad, int button);
IsGamepadButtonUp(int gamepad, int button);
//GetGamepadButtonPressed(void);
```
[`enum GamepadAxis](https://github.com/raysan5/raylib/blob/master/src/raylib.h#L690)
```c
GetGamepadAxisMovement(int gamepad, int axis);
```
[`enum ShaderLocationIndex](https://github.com/raysan5/raylib/blob/master/src/raylib.h#L705)
[`enum ShaderUniformDataType](https://github.com/raysan5/raylib/blob/master/src/raylib.h#L737)
```c
SetShaderValue(Shader shader, int locIndex, const void *value, int uniformType);
SetShaderValueV(Shader shader, int locIndex, const void *value, int uniformType, int count);
SetShaderValueMatrix(Shader shader, int locIndex, Matrix mat);
SetShaderValueTexture(Shader shader, int locIndex, Texture2D texture);
```
[`enum MaterialMapIndex](https://github.com/raysan5/raylib/blob/master/src/raylib.h#L750)
```c
struct Material.maps[index]
```
[`enum PixelFormat](https://github.com/raysan5/raylib/blob/master/src/raylib.h#L769)
```c
struct Image.format
struct Texture.format
LoadImageRaw(const char *fileName, int width, int height, int format, int headerSize);
ImageFormat(Image *image, int newFormat);
```
[`enum TextureFilter](https://github.com/raysan5/raylib/blob/master/src/raylib.h#L796)
```c
SetTextureFilter(Texture2D texture, int filter);
```
[`enum TextureWrap](https://github.com/raysan5/raylib/blob/master/src/raylib.h#L806)
```c
SetTextureWrap(Texture2D texture, int wrap);
```
[`enum CubemapLayout](https://github.com/raysan5/raylib/blob/master/src/raylib.h#L814)
```c
LoadTextureCubemap(Image image, int layout);
```
[`enum FontType](https://github.com/raysan5/raylib/blob/master/src/raylib.h#L824)
```c
LoadFontData(const unsigned char *fileData, int dataSize, int fontSize, int *fontChars, int charsCount, int type);
```
[`enum BlendMode](https://github.com/raysan5/raylib/blob/master/src/raylib.h#L831)
```c
BeginBlendMode(int mode);
```
[`enum Gestures](https://github.com/raysan5/raylib/blob/master/src/raylib.h#L842)
```c
SetGesturesEnabled(unsigned int flags);
IsGestureDetected(int gesture);
//GetGestureDetected(void);
```
[`enum CameraMode](https://github.com/raysan5/raylib/blob/master/src/raylib.h#L857)
```c
SetCameraMode(Camera camera, int mode);
```
[`enum CameraProjection](https://github.com/raysan5/raylib/blob/master/src/raylib.h#L866)
```c
struct Camera3D.projection
```
[`enum NPatchLayout](https://github.com/raysan5/raylib/blob/master/src/raylib.h#L872)
struct nPatchInfo.layout
```
I hope this list could be helpful!