37 lines
1.1 KiB
C++
37 lines
1.1 KiB
C++
#include <iostream.h>
|
|
#include <midiwrt/midihdr.hpp>
|
|
|
|
MidiHeader &MidiHeader::operator=(const MidiHeader &someMidiHeader)
|
|
{
|
|
::memcpy(mHeader,someMidiHeader.mHeader,sizeof(mHeader));
|
|
mLengthData=someMidiHeader.mLengthData;
|
|
mSMFType=someMidiHeader.mSMFType;
|
|
mTracks=someMidiHeader.mTracks;
|
|
mDeltaTempo=someMidiHeader.mDeltaTempo;
|
|
mHeaderString=someMidiHeader.mHeaderString;
|
|
return *this;
|
|
}
|
|
|
|
WORD MidiHeader::writeHeader(MemFile &midiFile)
|
|
{
|
|
if(!midiFile.rewind())return FALSE;
|
|
if(!midiFile.write(mHeaderString,mHeaderString.length()))return FALSE;
|
|
if(!midiFile.write(mLengthData))return FALSE;
|
|
if(!midiFile.write(mSMFType))return FALSE;
|
|
if(!midiFile.write(mTracks))return FALSE;
|
|
if(!midiFile.write(mDeltaTempo))return FALSE;
|
|
return TRUE;
|
|
}
|
|
|
|
WORD MidiHeader::readHeader(MemFile &midiFile)
|
|
{
|
|
if(!midiFile.rewind())return FALSE;
|
|
if(!midiFile.read(mHeader,sizeof(mHeader)))return FALSE;
|
|
if(!midiFile.read(mLengthData))return FALSE;
|
|
if(!midiFile.read(mSMFType))return FALSE;
|
|
if(!midiFile.read(mTracks))return FALSE;
|
|
if(!midiFile.read(mDeltaTempo))return FALSE;
|
|
return TRUE;
|
|
}
|
|
|