Files
Work/midiwrt/PURENOTE.HPP
2024-08-07 09:16:27 -04:00

78 lines
1.4 KiB
C++

#ifndef _PURENOTE_HPP_
#define _PURENOTE_HPP_
#include <common/windows.hpp>
#include <common/fileio.hpp>
class PureNote
{
public:
enum{DataLength=2};
PureNote(void);
PureNote(const PureNote &somePureNote);
~PureNote();
PureNote &operator=(const PureNote &somePureNote);
WORD operator==(const PureNote &somePureNote);
WORD readNote(FileIO &musFile);
BYTE noteNumber(void)const;
BYTE noteVolume(void)const;
BYTE hasVolume(void)const;
private:
BYTE mNoteNumber;
BYTE mNoteVolume;
BYTE mHasVolume;
};
inline
PureNote::PureNote(const PureNote &somePureNote)
: mNoteNumber(somePureNote.mNoteNumber), mNoteVolume(somePureNote.mNoteVolume),
mHasVolume(somePureNote.mHasVolume)
{
}
inline
PureNote &PureNote::operator=(const PureNote &somePureNote)
{
mNoteNumber=somePureNote.mNoteNumber;
mNoteVolume=somePureNote.mNoteVolume;
mHasVolume=somePureNote.mHasVolume;
return *this;
}
inline
PureNote::PureNote(void)
: mNoteNumber(0), mNoteVolume(0), mHasVolume(0)
{
}
inline
PureNote::~PureNote()
{
}
inline
BYTE PureNote::noteNumber(void)const
{
return mNoteNumber;
}
inline
BYTE PureNote::noteVolume(void)const
{
return mNoteVolume;
}
inline
BYTE PureNote::hasVolume(void)const
{
return mHasVolume;
}
inline
WORD PureNote::operator==(const PureNote &somePureNote)
{
return (mNoteNumber==somePureNote.mNoteNumber&&
mNoteVolume==somePureNote.mNoteVolume&&
mHasVolume==somePureNote.mHasVolume);
}
#endif