libElysianVMU 1.6.0
Full-featured, accurate, cross-platform library emulating the Dreamcast's Visual Memory Unit
Loading...
Searching...
No Matches
evmu_emulator.h File Reference

Go to the source code of this file.

Data Structures

struct  EvmuEmulatorClass
 
struct  EvmuEmulator
 

Macros

Type System

Type UUID and cast operators

#define EVMU_EMULATOR_TYPE   (GBL_TYPEID(EvmuEmulator))
 
#define EVMU_EMULATOR(self)   (GBL_CAST(EvmuEmulator, self))
 
#define EVMU_EMULATOR_CLASS(klass)   (GBL_CLASS_CAST(EvmuEmulator, klass))
 
#define EVMU_EMULATOR_GET_CLASS(self)   (GBL_CLASSOF(EvmuEmulator, self))
 

Typedefs

typedef GblBool(* EvmuEmulatorIterFn) (const EvmuEmulator *pSelf, EvmuDevice *pDevice, void *pClosure)
 

Functions

GblType EvmuEmulator_type (void)
 
GblVersion EvmuEmulator_version (void)
 
Lifetime Management

Methods for managing lifetime

EvmuEmulatorEvmuEmulator_create (void)
 
GblRefCount EvmuEmulator_unref (EvmuEmulator *pSelf)
 

Detailed Description

EvmuEmulator top-level emulation module.

This file provides everything pertaining to the public API of the EvmuEmulator module.

Bug:

Pac-It runs slowly as hell

Mini Pac-Man partial audio

Sleep mode not handled properly

Scene doesn't immediately update upon resizing

Scene doesn't immediately update upon modifying effects

Todo:

manage EvmuDevice children lifetimes

handle command-line options

persist user-settings

Author
2023 Falco Girgis

Definition in file evmu_emulator.h.

Macro Definition Documentation

◆ EVMU_EMULATOR

#define EVMU_EMULATOR (   self)    (GBL_CAST(EvmuEmulator, self))

Function-style GblInstance cast.

Definition at line 31 of file evmu_emulator.h.

◆ EVMU_EMULATOR_CLASS

#define EVMU_EMULATOR_CLASS (   klass)    (GBL_CLASS_CAST(EvmuEmulator, klass))

Function-style GblClass cast.

Definition at line 32 of file evmu_emulator.h.

◆ EVMU_EMULATOR_GET_CLASS

#define EVMU_EMULATOR_GET_CLASS (   self)    (GBL_CLASSOF(EvmuEmulator, self))

Get EvmuEmulatorClass from GblInstance

Definition at line 33 of file evmu_emulator.h.

◆ EVMU_EMULATOR_TYPE

#define EVMU_EMULATOR_TYPE   (GBL_TYPEID(EvmuEmulator))

Type UUID for EvmuEmulator.

Definition at line 30 of file evmu_emulator.h.

Typedef Documentation

◆ EvmuEmulatorIterFn

typedef GblBool(* EvmuEmulatorIterFn) (const EvmuEmulator *pSelf, EvmuDevice *pDevice, void *pClosure)

Function signature used for iterator callback with EvmuEmulator_foreachDevice().

Note
Returning GBL_FALSE will continue iteration, while returning GBL_TRUE will end it.

Definition at line 47 of file evmu_emulator.h.

Function Documentation

◆ EvmuEmulator_create()

EvmuEmulator * EvmuEmulator_create ( void  )

Creates THE (only one) top-level EvmuEmulator instance, returning a pointer to it.

◆ EvmuEmulator_type()

GblType EvmuEmulator_type ( void  )

Returns the GblType UUID associated with EvmuEmulator.

◆ EvmuEmulator_unref()

GblRefCount EvmuEmulator_unref ( EvmuEmulator pSelf)

Decrements the reference counter the gievn EvmuEmulator instance, destroying it when it hits 0.

◆ EvmuEmulator_version()

GblVersion EvmuEmulator_version ( void  )

Returns the runtime version of the libElysianVMU library.