Files
Work/midiseq/safe/TEMPO.HPP
2024-08-07 09:16:27 -04:00

88 lines
1.8 KiB
C++

#ifndef _MIDISEQ_TEMPOCHANGE_HPP_
#define _MIDISEQ_TEMPOCHANGE_HPP_
#ifndef _COMMON_WINDOWS_HPP_
#include <common/windows.hpp>
#endif
class TempoChange
{
public:
TempoChange(void);
TempoChange(DWORD microsecsPerQtrNote,DWORD eventIndex);
TempoChange(const TempoChange &someTempoChange);
virtual ~TempoChange();
TempoChange &operator=(const TempoChange &someTempoChange);
WORD operator==(const TempoChange &someTempoChange)const;
DWORD microsecsPerQtrNote(void)const;
void microsecsPerQtrNote(DWORD microsecsPerQtrNote);
DWORD eventIndex(void)const;
void eventIndex(DWORD eventIndex);
private:
DWORD mMicrosecsPerQtrNote;
DWORD mEventIndex;
};
inline
TempoChange::TempoChange(void)
: mMicrosecsPerQtrNote(0), mEventIndex(0)
{
}
inline
TempoChange::TempoChange(DWORD microsecsPerQtrNote,DWORD eventIndex)
: mMicrosecsPerQtrNote(microsecsPerQtrNote), mEventIndex(eventIndex)
{
}
inline
TempoChange::TempoChange(const TempoChange &someTempoChange)
{
*this=someTempoChange;
}
inline
TempoChange::~TempoChange()
{
}
inline
TempoChange &TempoChange::operator=(const TempoChange &someTempoChange)
{
microsecsPerQtrNote(someTempoChange.microsecsPerQtrNote());
eventIndex(someTempoChange.eventIndex());
return *this;
}
inline
WORD TempoChange::operator==(const TempoChange &someTempoChange)const
{
return (microsecsPerQtrNote()==someTempoChange.microsecsPerQtrNote()&&
eventIndex()==someTempoChange.eventIndex());
}
inline
DWORD TempoChange::microsecsPerQtrNote(void)const
{
return mMicrosecsPerQtrNote;
}
inline
void TempoChange::microsecsPerQtrNote(DWORD microsecsPerQtrNote)
{
mMicrosecsPerQtrNote=microsecsPerQtrNote;
}
inline
DWORD TempoChange::eventIndex(void)const
{
return mEventIndex;
}
inline
void TempoChange::eventIndex(DWORD eventIndex)
{
mEventIndex=eventIndex;
}
#endif