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

51 lines
756 B
C++

#ifndef _MIDITIME_HPP_
#define _MIDITIME_HPP_
#include <common/windows.hpp>
class MidiDeltaTime
{
public:
MidiDeltaTime(void);
~MidiDeltaTime();
void resetTime(void);
DWORD deltaTime(void)const;
MidiDeltaTime &operator+=(DWORD musDeltaTime);
private:
DWORD mDeltaTime;
DWORD mPrevDeltaTime;
};
inline
MidiDeltaTime::MidiDeltaTime(void)
{
resetTime();
}
inline
MidiDeltaTime::~MidiDeltaTime()
{
}
inline
DWORD MidiDeltaTime::deltaTime(void)const
{
return mDeltaTime;
}
inline
MidiDeltaTime &MidiDeltaTime::operator+=(DWORD musDeltaTime)
{
musDeltaTime/=.6;
mDeltaTime=(musDeltaTime-mPrevDeltaTime);
mPrevDeltaTime+=mDeltaTime;
return *this;
}
inline
void MidiDeltaTime::resetTime(void)
{
mDeltaTime=0L;
mPrevDeltaTime=0L;
}
#endif