libsidplayfp 2.12.0
sidbuilder Class Referenceabstract

#include <sidbuilder.h>

Inheritance diagram for sidbuilder:
Collaboration diagram for sidbuilder:

Public Member Functions

 sidbuilder (const char *const name)
unsigned int usedDevices () const
virtual unsigned int availDevices () const =0
virtual unsigned int create (unsigned int sids)=0
libsidplayfp::sidemulock (libsidplayfp::EventScheduler *scheduler, SidConfig::sid_model_t model, bool digiboost)
void unlock (libsidplayfp::sidemu *device)
void remove ()
const char * name () const
const char * error () const
bool getStatus () const
virtual const char * credits () const =0
virtual SID_DEPRECATED void filter (bool enable)=0

Protected Types

typedef std::set< libsidplayfp::sidemu * > emuset_t

Protected Attributes

std::string m_errorBuffer
emuset_t sidobjs
bool m_status

Detailed Description

Base class for sid builders.

Member Function Documentation

◆ availDevices()

virtual unsigned int sidbuilder::availDevices ( ) const
pure virtual

Available devices.

Returns
the number of available sids, 0 = endless.

Implemented in exSIDBuilder, HardSIDBuilder, ReSIDBuilder, and ReSIDfpBuilder.

◆ create()

virtual unsigned int sidbuilder::create ( unsigned int sids)
pure virtual

Create the sid emu.

Parameters
sidsthe number of required sid emu
Returns
the number of actually created sid emus

Implemented in exSIDBuilder, HardSIDBuilder, ReSIDBuilder, and ReSIDfpBuilder.

◆ credits()

virtual const char * sidbuilder::credits ( ) const
pure virtual

Get the builder's credits.

Returns
credits

Implemented in exSIDBuilder, HardSIDBuilder, ReSIDBuilder, and ReSIDfpBuilder.

◆ error()

const char * sidbuilder::error ( ) const
inline

Error message.

Returns
string error message.

◆ filter()

virtual SID_DEPRECATED void sidbuilder::filter ( bool enable)
pure virtual

Toggle sid filter emulation.

Parameters
enabletrue = enable, false = disable
Deprecated
use sidplayfp.filter

Implemented in exSIDBuilder, HardSIDBuilder, ReSIDBuilder, and ReSIDfpBuilder.

◆ getStatus()

bool sidbuilder::getStatus ( ) const
inline

Determine current state of object.

Returns
true = okay, false = error

◆ lock()

libsidplayfp::sidemu * sidbuilder::lock ( libsidplayfp::EventScheduler * scheduler,
SidConfig::sid_model_t model,
bool digiboost )

Find a free SID of the required specs

Parameters
envthe event context
modelthe required sid model
digiboostwhether to enable digiboost for 8580
Returns
pointer to the locked sid emu

◆ name()

const char * sidbuilder::name ( ) const
inline

Get the builder's name.

Returns
the name

◆ remove()

void sidbuilder::remove ( )

Remove all SID emulations.

◆ unlock()

void sidbuilder::unlock ( libsidplayfp::sidemu * device)

Release this SID.

Parameters
devicethe sid emu to unlock

◆ usedDevices()

unsigned int sidbuilder::usedDevices ( ) const
inline

The number of used devices.

Returns
number of used sids, 0 if none.

The documentation for this class was generated from the following files: