LMMS
Loading...
Searching...
No Matches
Cs3mPlayer Class Reference

#include <s3m.h>

Inheritance diagram for Cs3mPlayer:
CPlayer CdmoLoader

Classes

struct  s3mheader
struct  s3minst

Public Member Functions

 Cs3mPlayer (Copl *newopl)
bool load (const std::string &filename, const CFileProvider &fp)
bool update ()
void rewind (int subsong)
float getrefresh ()
std::string gettype ()
std::string gettitle ()
unsigned int getpatterns ()
unsigned int getpattern ()
unsigned int getorders ()
unsigned int getorder ()
unsigned int getrow ()
unsigned int getspeed ()
unsigned int getinstruments ()
std::string getinstrument (unsigned int n)
Public Member Functions inherited from CPlayer
 CPlayer (Copl *newopl)
virtual ~CPlayer ()
void seek (unsigned long ms)
unsigned long songlength (int subsong=-1)
virtual std::string getauthor ()
virtual std::string getdesc ()
virtual unsigned int getsubsongs ()
virtual unsigned int getsubsong ()

Static Public Member Functions

static CPlayerfactory (Copl *newopl)

Protected Attributes

struct Cs3mPlayer::s3minst inst [99]
struct { 
   unsigned char   note 
   unsigned char   oct 
   unsigned char   instrument 
   unsigned char   volume 
   unsigned char   command 
   unsigned char   info 
pattern [99][64][32]
struct { 
   unsigned short   freq 
   unsigned short   nextfreq 
   unsigned char   oct 
   unsigned char   vol 
   unsigned char   inst 
   unsigned char   fx 
   unsigned char   info 
   unsigned char   dualinfo 
   unsigned char   key 
   unsigned char   nextoct 
   unsigned char   trigger 
   unsigned char   note 
channel [9]
s3mheader header
unsigned char orders [256]
unsigned char crow
unsigned char ord
unsigned char speed
unsigned char tempo
unsigned char del
unsigned char songend
unsigned char loopstart
unsigned char loopcnt
Protected Attributes inherited from CPlayer
Coplopl
CAdPlugDatabasedb

Private Member Functions

void load_header (binistream *f, s3mheader *h)
void setvolume (unsigned char chan)
void setfreq (unsigned char chan)
void playnote (unsigned char chan)
void slide_down (unsigned char chan, unsigned char amount)
void slide_up (unsigned char chan, unsigned char amount)
void vibrato (unsigned char chan, unsigned char info)
void tone_portamento (unsigned char chan, unsigned char info)

Static Private Attributes

static const signed char chnresolv []
static const unsigned short notetable [12]
static const unsigned char vibratotab [32]

Additional Inherited Members

Static Protected Attributes inherited from CPlayer
static const unsigned short note_table [12]
static const unsigned char op_table [9]

Constructor & Destructor Documentation

◆ Cs3mPlayer()

Cs3mPlayer::Cs3mPlayer ( Copl * newopl)

Member Function Documentation

◆ factory()

CPlayer * Cs3mPlayer::factory ( Copl * newopl)
static

◆ getinstrument()

std::string Cs3mPlayer::getinstrument ( unsigned int n)
inlinevirtual

Reimplemented from CPlayer.

◆ getinstruments()

unsigned int Cs3mPlayer::getinstruments ( )
inlinevirtual

Reimplemented from CPlayer.

◆ getorder()

unsigned int Cs3mPlayer::getorder ( )
inlinevirtual

Reimplemented from CPlayer.

◆ getorders()

unsigned int Cs3mPlayer::getorders ( )
inlinevirtual

Reimplemented from CPlayer.

◆ getpattern()

unsigned int Cs3mPlayer::getpattern ( )
inlinevirtual

Reimplemented from CPlayer.

◆ getpatterns()

unsigned int Cs3mPlayer::getpatterns ( )
inlinevirtual

Reimplemented from CPlayer.

◆ getrefresh()

float Cs3mPlayer::getrefresh ( )
virtual

Implements CPlayer.

◆ getrow()

unsigned int Cs3mPlayer::getrow ( )
inlinevirtual

Reimplemented from CPlayer.

◆ getspeed()

unsigned int Cs3mPlayer::getspeed ( )
inlinevirtual

Reimplemented from CPlayer.

◆ gettitle()

std::string Cs3mPlayer::gettitle ( )
inlinevirtual

Reimplemented from CPlayer.

◆ gettype()

std::string Cs3mPlayer::gettype ( )
virtual

Implements CPlayer.

◆ load()

bool Cs3mPlayer::load ( const std::string & filename,
const CFileProvider & fp )
virtual

Implements CPlayer.

◆ load_header()

void Cs3mPlayer::load_header ( binistream * f,
s3mheader * h )
private

◆ playnote()

void Cs3mPlayer::playnote ( unsigned char chan)
private

◆ rewind()

void Cs3mPlayer::rewind ( int subsong)
virtual

Implements CPlayer.

◆ setfreq()

void Cs3mPlayer::setfreq ( unsigned char chan)
private

◆ setvolume()

void Cs3mPlayer::setvolume ( unsigned char chan)
private

◆ slide_down()

void Cs3mPlayer::slide_down ( unsigned char chan,
unsigned char amount )
private

◆ slide_up()

void Cs3mPlayer::slide_up ( unsigned char chan,
unsigned char amount )
private

◆ tone_portamento()

void Cs3mPlayer::tone_portamento ( unsigned char chan,
unsigned char info )
private

◆ update()

bool Cs3mPlayer::update ( )
virtual

Implements CPlayer.

◆ vibrato()

void Cs3mPlayer::vibrato ( unsigned char chan,
unsigned char info )
private

Member Data Documentation

◆ [struct]

struct { ... } Cs3mPlayer::channel[9]

◆ chnresolv

const signed char Cs3mPlayer::chnresolv
staticprivate
Initial value:
=
{-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,0,1,2,3,4,5,6,7,8,-1,-1,-1,-1,-1,-1,-1}

◆ command

unsigned char Cs3mPlayer::command

◆ crow

unsigned char Cs3mPlayer::crow
protected

◆ del

unsigned char Cs3mPlayer::del
protected

◆ dualinfo

unsigned char Cs3mPlayer::dualinfo

◆ freq

unsigned short Cs3mPlayer::freq

◆ fx

unsigned char Cs3mPlayer::fx

◆ header

s3mheader Cs3mPlayer::header
protected

◆ info

unsigned char Cs3mPlayer::info

◆ inst [1/2]

unsigned char Cs3mPlayer::inst

◆ inst [2/2]

struct Cs3mPlayer::s3minst Cs3mPlayer::inst[99]
protected

◆ instrument

unsigned char Cs3mPlayer::instrument

◆ key

unsigned char Cs3mPlayer::key

◆ loopcnt

unsigned char Cs3mPlayer::loopcnt
protected

◆ loopstart

unsigned char Cs3mPlayer::loopstart
protected

◆ nextfreq

unsigned short Cs3mPlayer::nextfreq

◆ nextoct

unsigned char Cs3mPlayer::nextoct

◆ note

unsigned char Cs3mPlayer::note

◆ notetable

const unsigned short Cs3mPlayer::notetable
staticprivate
Initial value:
=
{340,363,385,408,432,458,485,514,544,577,611,647}

◆ oct

unsigned char Cs3mPlayer::oct

◆ ord

unsigned char Cs3mPlayer::ord
protected

◆ orders

unsigned char Cs3mPlayer::orders[256]
protected

◆ [struct]

struct { ... } Cs3mPlayer::pattern[99][64][32]

◆ songend

unsigned char Cs3mPlayer::songend
protected

◆ speed

unsigned char Cs3mPlayer::speed
protected

◆ tempo

unsigned char Cs3mPlayer::tempo
protected

◆ trigger

unsigned char Cs3mPlayer::trigger

◆ vibratotab

const unsigned char Cs3mPlayer::vibratotab
staticprivate
Initial value:
=
{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,16,15,14,13,12,11,10,9,8,7,6,5,4,3,2,1}

◆ vol

unsigned char Cs3mPlayer::vol

◆ volume

unsigned char Cs3mPlayer::volume

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