Loading [MathJax]/extensions/tex2jax.js
Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Modules Pages
JASTrack Struct Reference

#include <JASTrack.h>

+ Inheritance diagram for JASTrack:
+ Collaboration diagram for JASTrack:

Classes

struct  MoveParam_
 
struct  TChannelMgr
 
struct  TList
 

Public Types

enum  Status { STATUS_FREE , STATUS_RUN }
 

Public Member Functions

 JASTrack ()
 
 ~JASTrack ()
 
void setChannelMgrCount (u32)
 
void init ()
 
void initTimed ()
 
void inherit (JASTrack const &)
 
void assignExtBuffer (u32, JASSoundParams *)
 
void setSeqData (void *, u32)
 
void startSeq ()
 
void stopSeq ()
 
void start ()
 
void close ()
 
bool connectChild (u32, JASTrack *)
 
void closeChild (u32)
 
JASTrackopenChild (u32)
 
void connectBus (int, int)
 
void setLatestKey (u8)
 
JASChannelchannelStart (JASTrack::TChannelMgr *, u32, u32, u32)
 
int noteOn (u32, u32, u32)
 
int gateOn (u32, u32, f32, u32)
 
int noteOff (u32, u16)
 
bool checkNoteStop (u32) const
 
void overwriteOsc (JASChannel *)
 
void updateTimedParam ()
 
void updateTrack (f32)
 
void updateTempo ()
 
void updateSeq (bool, f32)
 
u32 seqTimeToDspTime (f32)
 
void setParam (u32, f32, u32)
 
void noteOffAll (u16)
 
void mute (bool)
 
void setOscScale (u32, f32)
 
void setOscTable (u32, JASOscillator::Point const *)
 
void setOscAdsr (s16, s16, s16, s16, u16)
 
void setFIR (s16 const *)
 
void setIIR (s16 const *)
 
u16 readPortSelf (u32)
 
void writePortSelf (u32, u16)
 
void writePort (u32, u16)
 
u16 readPort (u32)
 
void setChannelPauseFlag (bool)
 
void pause (bool)
 
int getTransposeTotal () const
 
bool isMute () const
 
void setTempo (u16)
 
void setTempoRate (f32)
 
void setTimebase (u16)
 
void updateChannel (JASChannel *, JASDsp::TChannel *)
 
JASTrackgetRootTrack ()
 
int tickProc ()
 
int seqMain ()
 
JASSeqCtrlgetSeqCtrl ()
 
u16 getPort (u32 param_0)
 
void setPort (u32 param_0, u16 param_1)
 
u32 checkPortIn (u32 param_0)
 
u32 checkPort (u32 param_0)
 
u32 readReg (JASRegisterParam::RegID param_0)
 
void writeReg (JASRegisterParam::RegID param_0, u32 param_1)
 
JASTrackgetParent ()
 
JASTrackgetChild (u32 index)
 
int getChannelMgrCount ()
 
f32 getVibDepth () const
 
void setVibDepth (f32 param_0)
 
f32 getVibPitch () const
 
void setVibPitch (f32 param_0)
 
f32 getTremDepth () const
 
void setTremDepth (f32 param_0)
 
f32 getTremPitch () const
 
void setTremPitch (f32 param_0)
 
u16 getVibDelay () const
 
void setVibDelay (u32 param_0)
 
u16 getTremDelay () const
 
void setTremDelay (u32 param_0)
 
u8 getStatus () const
 
void setAutoDelete (u8 param_0)
 
f32 getPanPower () const
 
void setPanPower (f32 param_0)
 
u32 getSkipSample () const
 
void setSkipSample (u32 param_0)
 
u16 getDirectRelease () const
 
void setDirectRelease (u16 param_0)
 
u16 getTimebase () const
 
s8 getTranspose () const
 
void setTranspose (u32 param_0)
 
u16 getBankNumber () const
 
void setBankNumber (u16 param_0)
 
u16 getProgNumber () const
 
void setProgNumber (u16 param_0)
 
u8 getBendSense () const
 
void setBendSense (u8 param_0)
 
u8 getNoteOnPrio () const
 
void setNoteOnPrio (u8 param_0)
 
u8 getReleasePrio () const
 
void setReleasePrio (u8 param_0)
 
u8 getGateRate () const
 
void setGateRate (u8 param_0)
 

Static Public Member Functions

static void channelUpdateCallback (u32, JASChannel *, JASDsp::TChannel *, void *)
 
- Static Public Member Functions inherited from JASPoolAllocObject_MultiThreaded< JASTrack >
static void * operator new (size_t n)
 
static void * operator new (size_t n, void *ptr)
 
static void operator delete (void *ptr, size_t n)
 
static void newMemPool (int n)
 

Public Attributes

JASSeqCtrl mSeqCtrl
 
JASTrackPort mTrackPort
 
JASRegisterParam mRegisterParam
 
union { 
 
   struct { 
 
      MoveParam_   volume 
 
      MoveParam_   pitch 
 
      MoveParam_   fxmix 
 
      MoveParam_   pan 
 
      MoveParam_   dolby 
 
      MoveParam_   distFilter 
 
   }   params 
 
   MoveParam_   array [6] 
 
mMoveParam 
 
JASOscillator::Data mOscParam [2]
 
JASOscillator::Point mOscPoint [4]
 
JASTrackmParent
 
JASTrackmChildren [16]
 
TChannelMgrmChannelMgrs [4]
 
TChannelMgr mDefaultChannelMgr
 
int mChannelMgrCount
 
JASDefaultBankTablemBankTable
 
f32 field_0x1d8
 
f32 field_0x1dc
 
f32 mVibDepth
 
f32 mVibPitch
 
f32 mTremDepth
 
f32 mTremPitch
 
u16 mVibDelay
 
u16 mTremDelay
 
short mFIR [8]
 
short mIIR [8]
 
u8 mFilterMode
 
volatile u8 mStatus
 
struct { 
 
   bool   pause: 1 
 
   bool   mute: 1 
 
   bool   flag2: 1 
 
   bool   autoDelete: 1 
 
   bool   flag4: 1 
 
   bool   flag5: 1 
 
   bool   flag6: 1 
 
   bool   flag7: 1 
 
mFlags 
 
f32 mPanPower
 
f32 mTempoRate
 
u32 mSkipSample
 
u16 mDirectRelease
 
u16 mTempo
 
u16 mTimebase
 
s8 mTranspose
 
u8 field_0x22b
 
u16 mBankNumber
 
u16 mProgNumber
 
u8 mBendSense
 
u8 mNoteOnPrio
 
u8 mReleasePrio
 
u8 mGateRate
 
u16 mMixConfig [6]
 
JGadget::TLinkListNode field_0x240
 

Static Public Attributes

static JASOscillator::Point const sAdsTable [4]
 
static JASOscillator::Data const sEnvOsc = {0, 1.0f, NULL, NULL, 1.0f, 0.0f}
 
static JASOscillator::Data const sPitchEnvOsc = {1, 1.0f, NULL, NULL, 1.0f, 0.0f}
 
static JASDefaultBankTable sDefaultBankTable
 
static TList sTrackList
 

Member Enumeration Documentation

◆ Status

Enumerator
STATUS_FREE 
STATUS_RUN 

Constructor & Destructor Documentation

◆ JASTrack()

JASTrack::JASTrack ( )

◆ ~JASTrack()

JASTrack::~JASTrack ( )

Member Function Documentation

◆ assignExtBuffer()

void JASTrack::assignExtBuffer ( u32 i_index,
JASSoundParams * i_soundParams )

◆ channelStart()

JASChannel * JASTrack::channelStart ( JASTrack::TChannelMgr * i_channelMgr,
u32 param_1,
u32 param_2,
u32 i_updateTimer )

◆ channelUpdateCallback()

void JASTrack::channelUpdateCallback ( u32 param_0,
JASChannel * param_1,
JASDsp::TChannel * param_2,
void * param_3 )
static

◆ checkNoteStop()

bool JASTrack::checkNoteStop ( u32 i_noteID) const

◆ checkPort()

u32 JASTrack::checkPort ( u32 param_0)
inline

◆ checkPortIn()

u32 JASTrack::checkPortIn ( u32 param_0)
inline

◆ close()

void JASTrack::close ( )

◆ closeChild()

void JASTrack::closeChild ( u32 i_index)

◆ connectBus()

void JASTrack::connectBus ( int param_0,
int param_1 )

◆ connectChild()

bool JASTrack::connectChild ( u32 i_index,
JASTrack * i_child )

◆ gateOn()

int JASTrack::gateOn ( u32 param_0,
u32 i_velocity,
f32 i_time,
u32 i_flags )

◆ getBankNumber()

u16 JASTrack::getBankNumber ( ) const
inline

◆ getBendSense()

u8 JASTrack::getBendSense ( ) const
inline

◆ getChannelMgrCount()

int JASTrack::getChannelMgrCount ( )
inline

◆ getChild()

JASTrack * JASTrack::getChild ( u32 index)
inline

◆ getDirectRelease()

u16 JASTrack::getDirectRelease ( ) const
inline

◆ getGateRate()

u8 JASTrack::getGateRate ( ) const
inline

◆ getNoteOnPrio()

u8 JASTrack::getNoteOnPrio ( ) const
inline

◆ getPanPower()

f32 JASTrack::getPanPower ( ) const
inline

◆ getParent()

JASTrack * JASTrack::getParent ( )
inline

◆ getPort()

u16 JASTrack::getPort ( u32 param_0)
inline

◆ getProgNumber()

u16 JASTrack::getProgNumber ( ) const
inline

◆ getReleasePrio()

u8 JASTrack::getReleasePrio ( ) const
inline

◆ getRootTrack()

JASTrack * JASTrack::getRootTrack ( )

◆ getSeqCtrl()

JASSeqCtrl * JASTrack::getSeqCtrl ( )
inline

◆ getSkipSample()

u32 JASTrack::getSkipSample ( ) const
inline

◆ getStatus()

u8 JASTrack::getStatus ( ) const
inline

◆ getTimebase()

u16 JASTrack::getTimebase ( ) const
inline

◆ getTranspose()

s8 JASTrack::getTranspose ( ) const
inline

◆ getTransposeTotal()

int JASTrack::getTransposeTotal ( ) const

◆ getTremDelay()

u16 JASTrack::getTremDelay ( ) const
inline

◆ getTremDepth()

f32 JASTrack::getTremDepth ( ) const
inline

◆ getTremPitch()

f32 JASTrack::getTremPitch ( ) const
inline

◆ getVibDelay()

u16 JASTrack::getVibDelay ( ) const
inline

◆ getVibDepth()

f32 JASTrack::getVibDepth ( ) const
inline

◆ getVibPitch()

f32 JASTrack::getVibPitch ( ) const
inline

◆ inherit()

void JASTrack::inherit ( JASTrack const & i_parent)

◆ init()

void JASTrack::init ( )

◆ initTimed()

void JASTrack::initTimed ( )

◆ isMute()

bool JASTrack::isMute ( ) const

◆ mute()

void JASTrack::mute ( bool )

◆ noteOff()

int JASTrack::noteOff ( u32 i_noteID,
u16 param_1 )

◆ noteOffAll()

void JASTrack::noteOffAll ( u16 param_0)

◆ noteOn()

int JASTrack::noteOn ( u32 i_noteID,
u32 param_1,
u32 param_2 )

◆ openChild()

JASTrack * JASTrack::openChild ( u32 i_index)

◆ overwriteOsc()

void JASTrack::overwriteOsc ( JASChannel * i_channel)

◆ pause()

void JASTrack::pause ( bool )

◆ readPort()

u16 JASTrack::readPort ( u32 param_0)

◆ readPortSelf()

u16 JASTrack::readPortSelf ( u32 param_0)

◆ readReg()

u32 JASTrack::readReg ( JASRegisterParam::RegID param_0)
inline

◆ seqMain()

int JASTrack::seqMain ( )

◆ seqTimeToDspTime()

u32 JASTrack::seqTimeToDspTime ( f32 i_seqTime)

◆ setAutoDelete()

void JASTrack::setAutoDelete ( u8 param_0)
inline

◆ setBankNumber()

void JASTrack::setBankNumber ( u16 param_0)
inline

◆ setBendSense()

void JASTrack::setBendSense ( u8 param_0)
inline

◆ setChannelMgrCount()

void JASTrack::setChannelMgrCount ( u32 i_count)

◆ setChannelPauseFlag()

void JASTrack::setChannelPauseFlag ( bool i_pause)

◆ setDirectRelease()

void JASTrack::setDirectRelease ( u16 param_0)
inline

◆ setFIR()

void JASTrack::setFIR ( s16 const * i_FIR)

◆ setGateRate()

void JASTrack::setGateRate ( u8 param_0)
inline

◆ setIIR()

void JASTrack::setIIR ( s16 const * i_IIR)

◆ setLatestKey()

void JASTrack::setLatestKey ( u8 param_0)

◆ setNoteOnPrio()

void JASTrack::setNoteOnPrio ( u8 param_0)
inline

◆ setOscAdsr()

void JASTrack::setOscAdsr ( s16 param_0,
s16 param_1,
s16 param_2,
s16 param_3,
u16 i_directRelease )

◆ setOscScale()

void JASTrack::setOscScale ( u32 i_oscNo,
f32 i_scale )

◆ setOscTable()

void JASTrack::setOscTable ( u32 i_oscNo,
JASOscillator::Point const * i_table )

◆ setPanPower()

void JASTrack::setPanPower ( f32 param_0)
inline

◆ setParam()

void JASTrack::setParam ( u32 i_index,
f32 i_target,
u32 i_count )

◆ setPort()

void JASTrack::setPort ( u32 param_0,
u16 param_1 )
inline

◆ setProgNumber()

void JASTrack::setProgNumber ( u16 param_0)
inline

◆ setReleasePrio()

void JASTrack::setReleasePrio ( u8 param_0)
inline

◆ setSeqData()

void JASTrack::setSeqData ( void * param_0,
u32 param_1 )

◆ setSkipSample()

void JASTrack::setSkipSample ( u32 param_0)
inline

◆ setTempo()

void JASTrack::setTempo ( u16 i_tempo)

◆ setTempoRate()

void JASTrack::setTempoRate ( f32 i_tempoRate)

◆ setTimebase()

void JASTrack::setTimebase ( u16 i_timebase)

◆ setTranspose()

void JASTrack::setTranspose ( u32 param_0)
inline

◆ setTremDelay()

void JASTrack::setTremDelay ( u32 param_0)
inline

◆ setTremDepth()

void JASTrack::setTremDepth ( f32 param_0)
inline

◆ setTremPitch()

void JASTrack::setTremPitch ( f32 param_0)
inline

◆ setVibDelay()

void JASTrack::setVibDelay ( u32 param_0)
inline

◆ setVibDepth()

void JASTrack::setVibDepth ( f32 param_0)
inline

◆ setVibPitch()

void JASTrack::setVibPitch ( f32 param_0)
inline

◆ start()

void JASTrack::start ( )

◆ startSeq()

void JASTrack::startSeq ( )

◆ stopSeq()

void JASTrack::stopSeq ( )

◆ tickProc()

int JASTrack::tickProc ( )

◆ updateChannel()

void JASTrack::updateChannel ( JASChannel * param_0,
JASDsp::TChannel * param_1 )

◆ updateSeq()

void JASTrack::updateSeq ( bool param_0,
f32 param_1 )

◆ updateTempo()

void JASTrack::updateTempo ( )

◆ updateTimedParam()

void JASTrack::updateTimedParam ( )

◆ updateTrack()

void JASTrack::updateTrack ( f32 param_0)

◆ writePort()

void JASTrack::writePort ( u32 param_0,
u16 param_1 )

◆ writePortSelf()

void JASTrack::writePortSelf ( u32 param_0,
u16 param_1 )

◆ writeReg()

void JASTrack::writeReg ( JASRegisterParam::RegID param_0,
u32 param_1 )
inline

Member Data Documentation

◆ array

MoveParam_ JASTrack::array[6]

◆ autoDelete

bool JASTrack::autoDelete

◆ distFilter

MoveParam_ JASTrack::distFilter

◆ dolby

MoveParam_ JASTrack::dolby

◆ field_0x1d8

f32 JASTrack::field_0x1d8

◆ field_0x1dc

f32 JASTrack::field_0x1dc

◆ field_0x22b

u8 JASTrack::field_0x22b

◆ field_0x240

JGadget::TLinkListNode JASTrack::field_0x240

◆ flag2

bool JASTrack::flag2

◆ flag4

bool JASTrack::flag4

◆ flag5

bool JASTrack::flag5

◆ flag6

bool JASTrack::flag6

◆ flag7

bool JASTrack::flag7

◆ fxmix

MoveParam_ JASTrack::fxmix

◆ mBankNumber

u16 JASTrack::mBankNumber

◆ mBankTable

JASDefaultBankTable* JASTrack::mBankTable

◆ mBendSense

u8 JASTrack::mBendSense

◆ mChannelMgrCount

int JASTrack::mChannelMgrCount

◆ mChannelMgrs

TChannelMgr* JASTrack::mChannelMgrs[4]

◆ mChildren

JASTrack* JASTrack::mChildren[16]

◆ mDefaultChannelMgr

TChannelMgr JASTrack::mDefaultChannelMgr

◆ mDirectRelease

u16 JASTrack::mDirectRelease

◆ mFilterMode

u8 JASTrack::mFilterMode

◆ mFIR

short JASTrack::mFIR[8]

◆ [struct]

struct { ... } JASTrack::mFlags

◆ mGateRate

u8 JASTrack::mGateRate

◆ mIIR

short JASTrack::mIIR[8]

◆ mMixConfig

u16 JASTrack::mMixConfig[6]

◆ [union]

union { ... } JASTrack::mMoveParam

◆ mNoteOnPrio

u8 JASTrack::mNoteOnPrio

◆ mOscParam

JASOscillator::Data JASTrack::mOscParam[2]

◆ mOscPoint

JASOscillator::Point JASTrack::mOscPoint[4]

◆ mPanPower

f32 JASTrack::mPanPower

◆ mParent

JASTrack* JASTrack::mParent

◆ mProgNumber

u16 JASTrack::mProgNumber

◆ mRegisterParam

JASRegisterParam JASTrack::mRegisterParam

◆ mReleasePrio

u8 JASTrack::mReleasePrio

◆ mSeqCtrl

JASSeqCtrl JASTrack::mSeqCtrl

◆ mSkipSample

u32 JASTrack::mSkipSample

◆ mStatus

volatile u8 JASTrack::mStatus

◆ mTempo

u16 JASTrack::mTempo

◆ mTempoRate

f32 JASTrack::mTempoRate

◆ mTimebase

u16 JASTrack::mTimebase

◆ mTrackPort

JASTrackPort JASTrack::mTrackPort

◆ mTranspose

s8 JASTrack::mTranspose

◆ mTremDelay

u16 JASTrack::mTremDelay

◆ mTremDepth

f32 JASTrack::mTremDepth

◆ mTremPitch

f32 JASTrack::mTremPitch

◆ mute

void JASTrack::mute

◆ mVibDelay

u16 JASTrack::mVibDelay

◆ mVibDepth

f32 JASTrack::mVibDepth

◆ mVibPitch

f32 JASTrack::mVibPitch

◆ pan

MoveParam_ JASTrack::pan

◆ [struct]

struct { ... } JASTrack::params

◆ pause

void JASTrack::pause

◆ pitch

MoveParam_ JASTrack::pitch

◆ sAdsTable

JASOscillator::Point const JASTrack::sAdsTable
static
Initial value:
= {
{0, 0, 0x7fff},
{0, 0, 0x7fff},
{0, 0, 0},
{0xe, 0, 0},
}

◆ sDefaultBankTable

JASDefaultBankTable JASTrack::sDefaultBankTable
static

◆ sEnvOsc

JASOscillator::Data const JASTrack::sEnvOsc = {0, 1.0f, NULL, NULL, 1.0f, 0.0f}
static

◆ sPitchEnvOsc

JASOscillator::Data const JASTrack::sPitchEnvOsc = {1, 1.0f, NULL, NULL, 1.0f, 0.0f}
static

◆ sTrackList

JASTrack::TList JASTrack::sTrackList
static

◆ volume

MoveParam_ JASTrack::volume

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