![]() |
CRM64Pro GDK v0.18.0
A free cross-platform game development kit built on top of SDL 3.0
|
Namespaces | |
| namespace | CMem |
| CMem: CRM64Pro Memory Manager. | |
Classes | |
| struct | CDCv2Header |
| CDCv2 fixed file header. More... | |
| struct | CDCv2BlockEntry |
| CDCv2 fixed block index entry. More... | |
| struct | Position |
| Position struct used by Font and GUI Widgets. More... | |
| class | Main |
| CRM64Pro GDK Main class. More... | |
| class | Log |
| Log Object class. More... | |
| class | LogMgr |
| Log Manager class. More... | |
| class | Screen |
| Screen Object class. More... | |
| class | ConfigMgr |
| Config Manager class. More... | |
| class | Archive |
| Archive Object class. More... | |
| class | ArchiveMgr |
| Archive Manager class. More... | |
| class | XML |
| XML Object class. More... | |
| class | XMLMgr |
| XML Manager class. More... | |
| class | Timer |
| Timer class. More... | |
| class | Tool |
| Tool class. More... | |
| struct | AudioInfo |
| Audio metadata information. More... | |
| class | AudioTrack |
| Audio Track object class. More... | |
| class | AudioTrackMgr |
| Audio Track Manager class. More... | |
| class | Image |
| Image Object class. More... | |
| class | ImageMgr |
| Image Manager class. More... | |
| class | Cursor |
| Cursor Object class. More... | |
| class | CursorMgr |
| Cursor Manager class. More... | |
| class | Tile |
| Tile Object class. More... | |
| class | TileMgr |
| Tile Manager class. More... | |
| class | Sprite |
| Sprite Object class. More... | |
| class | SpriteMgr |
| Sprite Manager class. More... | |
| class | Font |
| Font Object class. More... | |
| class | FontMgr |
| Font Manager class. More... | |
| class | GFX |
| GFX class. More... | |
| class | Physics |
| Physics module class. More... | |
| struct | VideoInfo |
| Video metadata and statistics. More... | |
| class | Video |
| Video Object class. More... | |
| class | VideoMgr |
| Video Manager class. More... | |
| struct | GUITooltipStyle |
| Shared tooltip style for one GUI theme or one widget override. More... | |
| struct | GUIThemeSkin |
| Theme skin definition for one widget type and one widget state. More... | |
| class | GUITheme |
| GUI theme object. More... | |
| class | Widget |
| Base class for all GUI widgets. More... | |
| class | WidgetLabel |
| Label widget for static text display. More... | |
| class | WidgetImage |
| Image widget for static image display. More... | |
| class | WidgetFrame |
| Frame widget for separators, outlines and filled rectangles. More... | |
| class | WidgetButton |
| Button widget for user actions. More... | |
| class | WidgetCheckBox |
| CheckBox widget for toggle and radio-button behavior. More... | |
| class | WidgetProgress |
| Progress widget for value display. More... | |
| class | WidgetSlider |
| Slider widget for interactive value selection. More... | |
| class | WidgetTextEdit |
| TextEdit widget for editable text input. More... | |
| class | WidgetNumberEdit |
| NumberEdit widget for numeric text input. More... | |
| class | WidgetList |
| List widget with single-selection or interactive multi-selection support. More... | |
| class | WidgetComboBox |
| ComboBox widget for drop-down single selection. More... | |
| class | Panel |
| Panel Object class. More... | |
| class | Console |
| Console Object class. More... | |
| class | DebugWindow |
| DebugWindow Object class. More... | |
| class | GUIMgr |
| GUI Manager class. More... | |
| struct | SceneCameraParams |
| Camera configuration parameters. More... | |
| struct | SceneLayerContext |
| Layer Context structure. More... | |
| class | SceneLayer |
| Base class for all Scene layer types. More... | |
| class | SceneLayerTile |
| TileLayer class for tile-based map layers. More... | |
| struct | SceneShapeData |
| Shape geometry data for a SceneObject. More... | |
| struct | SceneObjectTrigger |
| Object trigger zone definition. More... | |
| struct | SceneTriggerEvent |
| Trigger event payload. More... | |
| class | ISceneObjectFactory |
| Factory interface for creating game objects from Tiled type strings. More... | |
| class | SceneObject |
| Base class for all Scene game objects. More... | |
| class | SceneLayerObject |
| Object layer containing game objects with spatial partitioning. More... | |
| class | SceneLayerImage |
| Image layer containing a single image for background/foreground display. More... | |
| class | Scene |
| Scene class. More... | |
| class | SceneMgr |
| Scene Manager class. More... | |
| class | NetTCP |
| NetTCP class. More... | |
| class | ParticleEmitter |
| Particle emitter object class. More... | |
| class | ParticleMgr |
| Particle manager class. More... | |
Typedefs | |
| using | SceneLayerCallback = function<void(const SceneLayerContext& rContext)> |
| Scene layer callback type. | |
| using | SceneCameraOffsetCallback = function<bool(Scene& rScene, Sint32 iLayer, SDL_FPoint& ptOffset)> |
| Scene camera offset callback type. | |
Enumerations | |
| enum | eCDCv2ErrorCode : Sint32 |
| CDCv2-specific error codes. | |
| enum | eCDCv2BlockFlags : Uint32 { CDC2_BLOCK_ACTIVE = 1 << 0 , CDC2_BLOCK_DELETED = 1 << 1 } |
| CDCv2 block entry flags. More... | |
| enum | eCDCv2Compression : Uint8 { CDC2_COMP_NONE = 0 , CDC2_COMP_ZLIB = 1 } |
| CDCv2 block compression methods. More... | |
| enum | eCDCv2Encryption : Uint8 { CDC2_ENC_NONE = 0 , CDC2_ENC_AES_256_CTR = 1 } |
| CDCv2 block encryption methods. More... | |
| enum | eCDCv2ArchiveFlags : Uint64 { CDC2_ARCHIVE_ENCRYPTED_INDEX = 1ULL << 0 , CDC2_ARCHIVE_ENCRYPTED_BLOCKS = 1ULL << 1 } |
| CDCv2 archive-level flags. More... | |
| enum | eEventType : Uint32 { ET_C64 = 0xEC64 , ET_GUI_INTERNAL = 0xCFED } |
| Custom SDL event types used by CRM64Pro. More... | |
| enum | eEventCode : Sint32 { EC_LOGIC = 1 , EC_RENDER , EC_WIDGET_ACTION , EC_WIDGET_MOUSEHOVER , EC_WIDGET_LOSTFOCUS , EC_WIDGET_SELECTIONCHANGED , EC_WIDGET_VALUECHANGED , EC_WIDGET_TOGGLED , EC_WIDGET_VALUECOMMITTED } |
| Event codes delivered via user.code when event.type is ET_C64. One code is delivered per event; values are not bitmask flags. More... | |
| enum | eGeneralStatus : Sint32 { GS_DISABLED = 0 , GS_ENABLED = 1 , GS_PAUSED = 2 , GS_HIDDEN = 5 , GS_SHOWN = 9 , GS_END = 16 , GS_HIDING = 1024 , GS_SHOWING = 2048 } |
| enum | ePlaybackStatus : Sint32 { PS_STOPPED = 0 , PS_PLAYING = 1 , PS_PAUSED = 2 , PS_FINISHED = 3 } |
| Playback status for audio and video objects. More... | |
| enum | eErrorCode : Sint32 { C64_ERR_INTER = -256 , C64_ERR_PARAM = -512 , C64_ERR_FILOP = -768 , C64_ERR_FILWR = -1024 , C64_ERR_FILRE = -1280 , C64_ERR_ALLOC = -1536 , C64_ERR_OBJNF = -1792 , C64_ERR_STATE = -2048 , C64_ERR_UNSUP = -2304 , C64_ERR_LIMIT = -2560 , C64_ERR_DENIED = -2816 } |
| Base error code families used by status-returning methods. More... | |
| enum | ePositionHelper : Sint32 { PH_NONE = 0 , PH_SIZE = 0x60000000 , PH_CENTER = 0x61000000 , PH_TOP = 0x62000000 , PH_BOTTOM = 0x63000000 , PH_LEFT = 0x65000000 , PH_RIGHT = 0x66000000 , PH_KEEP = 0x6F000000 } |
| Position helpers used by Cursors, Sprites, Fonts, GUI Widgets and Scene. One helper must be selected; values are not bitmask flags. More... | |
| enum | eLogMode : Uint32 { LM_NULL = 0 , LM_FILE = 2 , LM_FILEAPPEND = 4 , LM_STDOUT = 8 , LM_CONSOLE = 16 } |
| enum | eLogLevel : Sint32 { LL_OFF = 0 , LL_CRITICAL = 1 , LL_ERROR = 2 , LL_WARNING = 3 , LL_INFO = 4 , LL_DEBUG = 5 , LL_TRACE = 6 } |
| Log levels. More... | |
| enum | eConfigAudioDriver : Sint32 { CAD_DEFAULT = 0 , CAD_WASAPI = 1 , CAD_DIRECTSOUND = 2 , CAD_ERROR = -1 } |
| Audio drivers. More... | |
| enum | eConfigAudioFreq : Sint32 { CAF_DEFAULT = 0 , CAF_22K = 22050 , CAF_44K = 44100 , CAF_48K = 48000 } |
| Audio frequency. More... | |
| enum | eConfigAudioSample : Sint32 { CAS_DEFAULT = 0 , CAS_8 = SDL_AUDIO_U8 , CAS_16 = SDL_AUDIO_S16 , CAS_32 = SDL_AUDIO_F32 } |
| Audio sample format. More... | |
| enum | eConfigAudioMode : Sint32 { CAM_DEFAULT = 0 , CAM_MONO = 1 , CAM_STEREO = 2 , CAM_SURROUND21 = 3 , CAM_QUAD = 4 , CAM_SURROUND41 = 5 , CAM_SURROUND51 = 6 , CAM_SURROUND61 = 7 , CAM_SURROUND71 = 8 } |
| Audio mode. More... | |
| enum | eConfigRendererDriver : Sint32 { CRD_DEFAULT = 0 , CRD_SOFTWARE = 1 , CRD_OPENGL = 2 , CRD_OPENGLES2 = 3 , CRD_VULKAN = 4 , CRD_DIRECT3D = 5 , CRD_DIRECT3D11 = 6 , CRD_DIRECT3D12 = 7 , CRD_X11 = 8 , CRD_METAL = 9 , CRD_GPU3D = 10 , CRD_ERROR = -1 } |
| Screen renderer drivers. More... | |
| enum | eConfigScreenMode : Sint32 { CSM_WINDOW = 0 , CSM_FULLSCREEN = 1 , CSM_FULLSCREENEXCLUSIVE = 2 } |
| Screen modes. More... | |
| enum | eAudioTrackTag : Sint32 { ATT_MUSIC = 1 , ATT_SFX , ATT_VOICE , ATT_CUSTOM } |
| Audio track category tag for grouping and batch operations. One value must be selected; values are not bitmask flags. More... | |
| enum | eArchiveBlockStore : Sint32 { ABS_RAW = 1 , ABS_COMPRESSED = 2 , ABS_ENCRYPTED = 3 } |
| Archive block storing method. More... | |
| enum | eTimerState : Sint32 { TS_INIT = 0 , TS_RESET = 1 } |
| Timer init state. More... | |
| enum | eMsgBoxType : Sint32 { MBT_EMPTY = 0 , MBT_ERROR = 1 , MBT_WARNING = 2 , MBT_INFO = 3 , MBT_QUESTION = 4 } |
| Message box type. More... | |
| enum | eMsgBoxButton : Uint32 { MBB_NONE = 0 , MBB_OK = 1 , MBB_CANCEL = 2 , MBB_YES = 4 , MBB_NO = 8 } |
| enum | eAudioType : Sint32 { AT_NONE = 0 , AT_WAV = 1 , AT_MOD = 2 , AT_OGG = 3 , AT_MP3 = 4 , AT_FLAC = 5 , AT_UNKNOWN = 6 } |
| Audio codec/format type. More... | |
| enum | eAudioLoadMode : Sint32 { ALM_AUTO = 0 , ALM_PRELOAD = 1 , ALM_STREAM = 2 } |
| Audio loading strategy. More... | |
| enum | eImageFilter : Sint32 { IF_NOISE = 1 , IF_BLUR = 2 , IF_NEGATIVE = 3 , IF_GREY = 4 , IF_BW = 5 , IF_WIGGLE = 6 , IF_PIXELATE = 7 } |
| Image filters. More... | |
| enum | eSpriteType : Uint8 { ST_LOOP = 1 , ST_PINGPONG = 2 , ST_ONESHOT = 4 , ST_ONESHOT_REVERSE = 8 , ST_RANDOM = 16 } |
| enum | ePhysicsCollisionMode : Uint32 { PCM_AABB = 0 , PCM_SHAPE , PCM_PIXEL } |
| Collision mode for Physics overlap checks. More... | |
| enum | eWidgetState : Sint32 { WS_DEFAULT = -1 , WS_NORMAL = 0 , WS_HOVERED = 1 , WS_PRESSED = 2 , WS_ACTION = 3 , WS_DEACTIVATED = 4 } |
| Widget state. More... | |
| enum | eWidgetType : Sint32 { WT_BASE = 0 , WT_LABEL = 1 , WT_IMAGE = 2 , WT_FRAME = 4 , WT_BUTTON = 8 , WT_CHECKBOX = 16 , WT_PROGRESS = 32 , WT_SLIDER = 64 , WT_TEXTEDIT = 256 , WT_NUMBEREDIT = 512 , WT_LIST = 1024 , WT_COMBOBOX = 2048 } |
| Widget type. One value must be selected; values are not bitmask flags. More... | |
| enum | eSliderAxis : Sint32 { SA_HORIZONTAL = 0 , SA_VERTICAL = 1 } |
| Slider axis. More... | |
| enum | eWidgetFeature : Uint32 { WF_DISABLE = 0 , WF_FADE = 0x00010000 , WF_DRAGDROP = 0x00020000 , WF_ENCLOSE = 0x00040000 , WF_DETACH = 0x00080000 , WF_BGFIT = 0x00100000 , WF_BGDISABLE = 0x00200000 , WF_EVENTS = 0x00400000 , WF_MOUSEOVER = 0x00800000 , WF_LOSTFOCUS = 0x01000000 } |
| Widget feature flags. More... | |
| enum | ePanelType : Sint32 { PT_MODELESS = 0 , PT_MODAL = 1 , PT_EPHEMERAL = 2 } |
| Panel Type. More... | |
| enum | ePanelSizeMode : Sint32 { PSM_MANUAL = 0 , PSM_SCREEN = 1 } |
| Panel size mode. More... | |
| enum | ePanelLayout : Uint32 { PL_NONE = 0 , PL_HFLOW = 1 , PL_VFLOW = 2 } |
| Panel layout flags. More... | |
| enum | eLayoutJustify : Sint32 { LJ_START = 0 , LJ_CENTER = 1 , LJ_END = 2 , LJ_SPACE = 3 } |
| Flow layout distribution along the main axis. More... | |
| enum | eLayoutAlign : Sint32 { LA_START = 0 , LA_CENTER = 1 , LA_END = 2 , LA_STRETCH = 3 } |
| Flow layout alignment on the cross axis. More... | |
| enum | eSceneLayerFeature : Uint32 { SLF_NONE = 0 , SLF_REPEATX = 1 , SLF_REPEATY = 2 , SLF_UPDATE = 8 , SLF_RENDER = 32 , SLF_SMOOTHSCROLL = 64 , SLF_PAUSE = 256 } |
| Features for Scene layers. More... | |
| enum | eSceneDebugOverlay : Uint32 { SDO_DISABLE = 0 , SDO_OBJECT_AABB = 1 , SDO_TILE_CELLGRID = 2 , SDO_TRIGGER_ZONES = 4 , SDO_CAMERA_DEADZONE = 8 } |
| Scene unified debug overlay flags. More... | |
| enum | eSceneTileSetType : Sint32 { STST_NULL = -1 , STST_TILESET = 0 , STST_COLLECTION = 1 } |
| Specifies how the TileSet is organized. More... | |
| enum | eSceneStorageMode : Sint32 { SSM_DISK , SSM_CDC , SSM_INTERNAL } |
| Specifies where the tileset data is physically stored. More... | |
| enum | eSceneShapeType : Sint32 { SST_RECTANGLE = 0 , SST_ELLIPSE , SST_POINT , SST_POLYGON , SST_POLYLINE , SST_TILE } |
| Specifies the geometric shape type of a SceneObject. More... | |
| enum | eSceneLayerType : Sint32 { SLT_EMPTY = 0 , SLT_TILE , SLT_OBJECT , SLT_IMAGE , SLT_USER_START = 8 } |
| Specifies the type of a Scene layer. More... | |
| enum | eSceneObjectRenderOrder : Sint32 { SORO_INDEX = 0 , SORO_TOPDOWN , SORO_FEET , SORO_Z , SORO_Z_FEET } |
| Specifies object rendering order policy for SceneLayerObject. More... | |
| enum | eSceneTriggerEventType : Uint32 { STET_ENTER = 0 , STET_STAY , STET_EXIT } |
| Trigger event type. More... | |
| enum | eSceneCameraMode : Uint32 { SCM_MANUAL = 0 , SCM_AUTOSCROLL , SCM_SNAP , SCM_SMOOTH , SCM_DEADZONE , SCM_OFFSET } |
| Camera controller modes for a Scene layer. More... | |
| enum | eNetMsg : Sint32 { NM_NOTHING = 0 , NM_DATA = 64 , NM_DATA_ACCEPTED = 66 , NM_DATA_DENIED = 67 , NM_NEWCLIENT = 132 , NM_QUITCLIENT = 133 , NM_CLOSE = 134 , NM_INFO = 135 , NM_PING = 136 , NM_ERROR = 192 } |
| Network messages. More... | |
| enum | eNetResult : Sint32 { NR_OK = 0 , NR_BAD_PARAMETER = C64_ERR_PARAM , NR_OUT_OF_MEMORY = C64_ERR_ALLOC , NR_NO_INIT = -0x10000 , NR_IS_INIT = -0x10001 , NR_ABORT = -0x10002 , NR_CAN_NOT_CONNECT = -0x10003 , NR_NO_SERVER_RUNNING = -0x10004 , NR_NO_CLIENT_RUNNING = -0x10005 , NR_ONLY_ONE_SERVER = -0x10006 , NR_ONLY_ONE_CLIENT = -0x10007 , NR_WRONG_PORT = -0x10008 , NR_TX_EMPTY_DN = -0x10009 , NR_INVALID_CLIENT = -0x10020 , NR_DUPLICATED_CLIENT = -0x10021 , NR_CLIENT_LIMIT_REACHED = -0x10022 , NR_WRONG_PASSWORD = -0x10023 , NR_LOGIN_DISABLED = -0x10024 , NR_RX_LIMIT_REACHED = -0x10040 , NR_TX_THROTTLED = -0x10041 , NR_CREATE_THREAD = -0x10042 , NR_CLIENT_INTERNAL = -0x10060 , NR_SERVER_INTERNAL = -0x10061 , NR_HASH_MISMATCH = -0x10062 , NR_SEQUENCER_MISMATCH = -0x10063 , NR_SDLNET_INIT = -0x10080 , NR_RX_BAD_HEADER = -0x10081 , NR_RX_BAD_DATA = -0x10082 , NR_TX_BAD_DATA = -0x10083 , NR_RESOLVE_HOST = -0x100A0 , NR_TCP_OPEN = -0x100A1 , NR_ALLOCATE_SOCKET = -0x100A2 , NR_ADD_SOCKET = -0x100A3 , NR_CHECK_SOCKET = -0x100A4 } |
| Network result codes. More... | |
| enum | eNetTCPFeature : Uint32 { NTF_DISABLE = 0 , NTF_DISABLE_LOGIN = 1 , NTF_AES_CTR = 2 } |
| NetTCP feature flags. More... | |
| enum | eParticleVisual : Uint32 { PV_PIXEL = 0 , PV_RECT = 1 , PV_IMAGE = 2 , PV_SPRITE_SHARED = 3 , PV_SPRITE_INSTANCE = 4 , PV_SOFT = 5 , PV_LINE = 6 } |
| Particle visual rendering types. More... | |
| enum | eParticleEmitterShape : Uint32 { PES_POINT = 0 , PES_LINE = 1 , PES_RECT = 2 , PES_CIRCLE = 3 , PES_RING = 4 } |
| Particle emitter geometric shapes. More... | |
| enum | eParticleCollisionMode : Uint32 { PCM_NONE = 0 , PCM_BOUNCE = 1 , PCM_STOP = 2 , PCM_KILL = 3 } |
| Particle collision behavior. More... | |
| enum | eParticleEffectPreset : Uint32 { PEP_NONE = 0 , PEP_CLOUD = 1 , PEP_SMOKE = 2 , PEP_FIRE = 3 , PEP_RAIN = 4 , PEP_STORM = 5 , PEP_SNOW = 6 , PEP_SHOCKWAVE = 7 , PEP_EXPLOSION = 8 , PEP_SPARKS = 9 , PEP_CONFETTI = 10 , PEP_MAGIC = 11 } |
| Particle effect presets. More... | |
CRM64Pro GDK.
| enum CRM64Pro::eCDCv2BlockFlags : Uint32 |
| enum CRM64Pro::eCDCv2Compression : Uint8 |
| enum CRM64Pro::eCDCv2Encryption : Uint8 |
| enum CRM64Pro::eCDCv2ArchiveFlags : Uint64 |
| enum CRM64Pro::eParticleVisual : Uint32 |
Particle visual rendering types.
| Enumerator | |
|---|---|
| PV_PIXEL | Render each particle as a pixel. |
| PV_RECT | Render each particle as a filled rectangle. |
| PV_IMAGE | Render each particle using an Image resource. |
| PV_SPRITE_SHARED | Render each particle using a shared Sprite resource. |
| PV_SPRITE_INSTANCE | Render each particle using an instanced Sprite resource. |
| PV_SOFT | Render each particle as a soft radial glow. |
| PV_LINE | Render each particle as a line segment. |
| enum CRM64Pro::eParticleEmitterShape : Uint32 |
Particle emitter geometric shapes.
| enum CRM64Pro::eParticleCollisionMode : Uint32 |
| enum CRM64Pro::eParticleEffectPreset : Uint32 |
Particle effect presets.