Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
JASBasicInst.h
Go to the documentation of this file.
1#ifndef JASBASICINST_H
2#define JASBASICINST_H
3
6
7struct JKRHeap;
8
9const int OSC_MAX = 2;
10
32
37struct JASInst {
38 virtual ~JASInst() {}
39 virtual bool getParam(int, int, JASInstParam*) const = 0;
40 virtual u32 getType() const = 0;
41};
42
47struct JASBasicInst : public JASInst {
48 struct TKeymap {
49 ~TKeymap();
50 TKeymap() { mHighKey = -1; }
51 s32 getHighKey() const { return mHighKey; }
52 void setHighKey(int key) { mHighKey = key; }
53
54 /* 0x0 */ s32 mHighKey;
55 /* 0x4 */ u16 field_0x4;
56 /* 0x6 */ u16 field_0x6;
57 /* 0x8 */ f32 field_0x8;
58 /* 0xC */ f32 field_0xc;
59 };
60
63 void setOsc(int, JASOscillator::Data const*);
65 TKeymap* getKeyRegion(int) const;
66
67 virtual ~JASBasicInst();
68 virtual bool getParam(int, int, JASInstParam*) const;
69 virtual u32 getType() const { return 'BSIC'; };
70
71 void setVolume(f32 volume) { mVolume = volume; }
72 void setPitch(f32 pitch) { mPitch = pitch; }
74
75 /* 0x04 */ f32 mVolume;
76 /* 0x08 */ f32 mPitch;
78 /* 0x10 */ u32 mKeymapCount;
79 /* 0x14 */ TKeymap* mKeymap;
80};
81
82
83#endif /* JASBASICINST_H */
const int OSC_MAX
Definition JASBasicInst.h:9
Definition JKRHeap.h:23
unsigned long u32
Definition types.h:12
float f32
Definition types.h:25
unsigned short int u16
Definition types.h:10
signed long s32
Definition types.h:11
unsigned char u8
Definition types.h:8
Definition JASBasicInst.h:48
void setHighKey(int key)
Definition JASBasicInst.h:52
u16 field_0x6
Definition JASBasicInst.h:56
s32 getHighKey() const
Definition JASBasicInst.h:51
~TKeymap()
Definition JASBasicInst.cpp:81
u16 field_0x4
Definition JASBasicInst.h:55
f32 field_0x8
Definition JASBasicInst.h:57
TKeymap()
Definition JASBasicInst.h:50
f32 field_0xc
Definition JASBasicInst.h:58
s32 mHighKey
Definition JASBasicInst.h:54
Definition JASBasicInst.h:47
u32 getKeyRegionCount() const
Definition JASBasicInst.h:73
f32 mPitch
Definition JASBasicInst.h:76
JASOscillator::Data const * field_0xc[OSC_MAX]
Definition JASBasicInst.h:77
u32 mKeymapCount
Definition JASBasicInst.h:78
virtual u32 getType() const
Definition JASBasicInst.h:69
void setKeyRegionCount(u32, JKRHeap *)
Definition JASBasicInst.cpp:50
void setVolume(f32 volume)
Definition JASBasicInst.h:71
virtual bool getParam(int, int, JASInstParam *) const
Definition JASBasicInst.cpp:23
void setOsc(int, JASOscillator::Data const *)
Definition JASBasicInst.cpp:57
TKeymap * getKeyRegion(int)
Definition JASBasicInst.cpp:63
TKeymap * mKeymap
Definition JASBasicInst.h:79
virtual ~JASBasicInst()
Definition JASBasicInst.cpp:19
void setPitch(f32 pitch)
Definition JASBasicInst.h:72
JASBasicInst()
Definition JASBasicInst.cpp:11
f32 mVolume
Definition JASBasicInst.h:75
Definition JASBasicInst.h:15
u8 field_0x1c
Definition JASBasicInst.h:28
u16 field_0x18
Definition JASBasicInst.h:26
JASInstParam()
Definition JASBasicInst.h:16
u8 field_0x1e
Definition JASBasicInst.h:30
JASOscillator::Data ** field_0x14
Definition JASBasicInst.h:25
u8 field_0x1d
Definition JASBasicInst.h:29
u16 field_0x1a
Definition JASBasicInst.h:27
Definition JASBasicInst.h:37
virtual u32 getType() const =0
virtual bool getParam(int, int, JASInstParam *) const =0
virtual ~JASInst()
Definition JASBasicInst.h:38
Definition JASOscillator.h:37
Definition JASSoundParams.h:10