jdkmidi class library documentation

Copyright © 2004 J.D. Koftinoff Software, Ltd.

Released under the GNU General Public License (GPL)




Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members

jdkmidi::MIDITimedBigMessage Class Reference

#include <msg.h>

Inheritance diagram for jdkmidi::MIDITimedBigMessage:

jdkmidi::MIDIBigMessage jdkmidi::MIDIMessage List of all members.

Public Member Functions

 MIDITimedBigMessage ()
 MIDITimedBigMessage (const MIDITimedBigMessage &m)
 MIDITimedBigMessage (const MIDIBigMessage &m)
 MIDITimedBigMessage (const MIDITimedMessage &m)
 MIDITimedBigMessage (const MIDIMessage &m)
void Clear ()
void Copy (const MIDITimedBigMessage &m)
void Copy (const MIDITimedMessage &m)
const MIDITimedBigMessageoperator= (const MIDITimedBigMessage &m)
const MIDITimedBigMessageoperator= (const MIDITimedMessage &m)
const MIDITimedBigMessageoperator= (const MIDIMessage &m)
MIDIClockTime GetTime () const
void SetTime (MIDIClockTime t)

Static Public Member Functions

int CompareEvents (const MIDITimedBigMessage &a, const MIDITimedBigMessage &b)

Protected Attributes

MIDIClockTime time

Constructor & Destructor Documentation

jdkmidi::MIDITimedBigMessage::MIDITimedBigMessage  ) 
 

Definition at line 1015 of file jdkmidi_msg.cpp.

01016     : time(0)
01017   {
01018   } 

jdkmidi::MIDITimedBigMessage::MIDITimedBigMessage const MIDITimedBigMessage m  ) 
 

Definition at line 1020 of file jdkmidi_msg.cpp.

01021     : MIDIBigMessage( m ),
01022       time(m.GetTime())
01023   {
01024   } 

jdkmidi::MIDITimedBigMessage::MIDITimedBigMessage const MIDIBigMessage m  ) 
 

Definition at line 1026 of file jdkmidi_msg.cpp.

01027     : MIDIBigMessage( m ),
01028       time(0)
01029   {
01030   } 

jdkmidi::MIDITimedBigMessage::MIDITimedBigMessage const MIDITimedMessage m  ) 
 

Definition at line 1032 of file jdkmidi_msg.cpp.

01033     : MIDIBigMessage( m ),
01034       time(m.GetTime())
01035   {
01036   } 

jdkmidi::MIDITimedBigMessage::MIDITimedBigMessage const MIDIMessage m  ) 
 

Definition at line 1038 of file jdkmidi_msg.cpp.

01039     : MIDIBigMessage( m ),
01040       time(0)
01041   {
01042   } 


Member Function Documentation

void jdkmidi::MIDITimedBigMessage::Clear  ) 
 

Reimplemented from jdkmidi::MIDIBigMessage.

Definition at line 1044 of file jdkmidi_msg.cpp.

References time.

01045   {
01046     time=0;
01047     MIDIBigMessage::Clear();
01048   } 

int jdkmidi::MIDITimedBigMessage::CompareEvents const MIDITimedBigMessage a,
const MIDITimedBigMessage b
[static]
 

Definition at line 1107 of file jdkmidi_msg.cpp.

References jdkmidi::MIDIMessage::byte1, jdkmidi::MIDIMessage::byte2, jdkmidi::MIDIMessage::GetStatus(), GetTime(), jdkmidi::MIDIMessage::IsNoOp(), jdkmidi::NOTE_OFF, and jdkmidi::NOTE_ON.

01111   {
01112     bool n1 = m1.IsNoOp();
01113     bool n2 = m2.IsNoOp();
01114       
01115       // NOP's always are larger.
01116       
01117       if( n1 && n2 )
01118                       return 0; // same, do not care.
01119       
01120       if( n2 )
01121                 return 2; // m2 is larger
01122       
01123       if( n1 )
01124                 return 1; // m1 is larger
01125       
01126       if( m1.GetTime() > m2.GetTime() )
01127                                          return 1;  // m1 is larger
01128       
01129       if( m2.GetTime() > m1.GetTime() )
01130                                          return 2;  // m2 is larger
01131       
01132       // if times are the same, a note off is always larger
01133       
01134       if(     m1.byte1 == m2.byte1
01135               && m1.GetStatus()==NOTE_ON
01136               &&  ((m2.GetStatus()==NOTE_ON && m2.byte2==0) || (m2.GetStatus()==NOTE_OFF))
01137         )
01138            return 2;  // m2 is larger
01139       
01140       if(   m1.byte1 == m2.byte1
01141                 && m2.GetStatus()==NOTE_ON
01142                 &&  ((m1.GetStatus()==NOTE_ON && m1.byte2==0) || (m1.GetStatus()==NOTE_OFF))
01143         )
01144            return 1;  // m1 is larger
01145       
01146       
01147       return 0;   // both are equal.
01148       
01149   } 

void jdkmidi::MIDITimedBigMessage::Copy const MIDITimedMessage m  ) 
 

Definition at line 1056 of file jdkmidi_msg.cpp.

References jdkmidi::MIDITimedMessage::GetTime(), and time.

01057   {
01058     time=m.GetTime();
01059     MIDIBigMessage::Copy( m );
01060   } 

void jdkmidi::MIDITimedBigMessage::Copy const MIDITimedBigMessage m  ) 
 

Definition at line 1050 of file jdkmidi_msg.cpp.

References GetTime(), and time.

01051   {
01052     time=m.GetTime();
01053     MIDIBigMessage::Copy( m );
01054   } 

MIDIClockTime jdkmidi::MIDITimedBigMessage::GetTime  )  const
 

Definition at line 1091 of file jdkmidi_msg.cpp.

References jdkmidi::MIDIClockTime, and time.

01092   { 
01093     return time;  
01094   }

const MIDITimedBigMessage & jdkmidi::MIDITimedBigMessage::operator= const MIDIMessage m  ) 
 

Reimplemented from jdkmidi::MIDIBigMessage.

Definition at line 1080 of file jdkmidi_msg.cpp.

References time.

01081   {
01082     time=0;
01083     MIDIBigMessage::operator = (m);
01084     return *this;
01085   } 

const MIDITimedBigMessage & jdkmidi::MIDITimedBigMessage::operator= const MIDITimedMessage m  ) 
 

Definition at line 1073 of file jdkmidi_msg.cpp.

References jdkmidi::MIDITimedMessage::GetTime(), and time.

01074   {
01075     time=m.GetTime();
01076     MIDIBigMessage::operator = (m);
01077     return *this;
01078   } 

const MIDITimedBigMessage & jdkmidi::MIDITimedBigMessage::operator= const MIDITimedBigMessage m  ) 
 

Definition at line 1066 of file jdkmidi_msg.cpp.

References GetTime(), and time.

01067   {
01068     time=m.GetTime();
01069     MIDIBigMessage::operator = (m);
01070     return *this;
01071   } 

void jdkmidi::MIDITimedBigMessage::SetTime MIDIClockTime  t  ) 
 

Definition at line 1100 of file jdkmidi_msg.cpp.

References jdkmidi::MIDIClockTime, and time.

01101   {
01102     time=t;
01103   }


Member Data Documentation

MIDIClockTime jdkmidi::MIDITimedBigMessage::time [protected]
 

Definition at line 467 of file msg.h.


The documentation for this class was generated from the following files: