Makrodefinitionen | Funktionen
DevMidi.cpp-Dateireferenz

Description. Mehr ...

#include "DevMidi.h"
#include "Execute.h"
#include "GrafKern.h"
#include "MidiKern.h"
Include-Abhängigkeitsdiagramm für DevMidi.cpp:

gehe zum Quellcode dieser Datei

Makrodefinitionen

#define GET_INDEX(taste, tonsystem)
#define GET_ABSTAND(taste, tonsystem)
#define GET_FREQ(taste, tonsystem)
#define ZWZ   1.059463094
#define MIDI_OUT3(code1, code2, code3)
#define MIDI_OUT2(code1, code2)
#define MIDI_PITCH(i, freq)
#define MIDI_SOUND(i, sound)   if ( sound != -1 ) MIDI_OUT2(0xC0+i, sound)
#define MAKE_ID(route, box, taste, channel)   ((((DWORD)channel) << 24) + (((DWORD)route->GetId()&0xff) << 16) + ((DWORD)box << 8) + taste)

Funktionen

long LongAbs (long x)
void CALLBACK _export MidiInPortFunc (HMIDIIN hMidiIn, UINT wMsg, DWORD dwInstance, DWORD dwParam1, DWORD dwParam2)
void MidiInit ()
void MidiUninit ()

Ausführliche Beschreibung

Description.

Header:
/cvsroot/mutabor/mutabor/mu32/routing/midi/DevMidi.cpp,v 1.5 2011-07-27 20:48:32 keinstein Exp

Copyright: (c) 2008 TU Dresden

Autor:
Tobias Schlemmer <keinstein@users.berlios.de>
Datum:
Date:
2011-07-27 20:48:32
Version:
Revision:
1.5

GPL

Log:
DevMidi.cpp,v

Revision 1.5 2011-07-27 20:48:32 keinstein started to move arrays using MAX_BOX into struct mutabor_box_type

Revision 1.4 2011-02-20 22:35:56 keinstein updated license information; some file headers have to be revised, though

Definiert in Datei DevMidi.cpp.


Makro-Dokumentation

#define GET_ABSTAND (   taste,
  tonsystem 
)
Wert:
( (int)((taste)-( (tonsystem)->anker % (tonsystem)->breite ))  \
           / (tonsystem)->breite -((int) (tonsystem)->anker         \
           / (tonsystem)->breite ))

Definiert in Zeile 47 der Datei DevMidi.cpp.

#define GET_FREQ (   taste,
  tonsystem 
)
Wert:
( ( (tonsystem)->ton[GET_INDEX(taste,(tonsystem))]==0) ?       \
          (long) 0 :                                       \
     (long)( (tonsystem)->periode *                   \
              GET_ABSTAND(taste,(tonsystem))  +                         \
                   (tonsystem)->ton[GET_INDEX(taste,(tonsystem))]))

Definiert in Zeile 53 der Datei DevMidi.cpp.

Wird benutzt von OutMidiPort::NoteOn() und OutMidiPort::NotesCorrect().

#define GET_INDEX (   taste,
  tonsystem 
)
Wert:
((int)( (taste)-( (tonsystem)->anker % (tonsystem)->breite )) \
                          % (tonsystem)->breite )

Definiert in Zeile 41 der Datei DevMidi.cpp.

#define MAKE_ID (   route,
  box,
  taste,
  channel 
)    ((((DWORD)channel) << 24) + (((DWORD)route->GetId()&0xff) << 16) + ((DWORD)box << 8) + taste)

Definiert in Zeile 138 der Datei DevMidi.cpp.

Wird benutzt von OutMidiPort::NoteOff() und OutMidiPort::NoteOn().

#define MIDI_OUT2 (   code1,
  code2 
)
Wert:
midiOutShortMsg(hMidiOut,                       \
                  ((DWORD) (code2) << 8) +      \
                  ((DWORD) (code1)))

Definiert in Zeile 98 der Datei DevMidi.cpp.

Wird benutzt von OutMidiPort::Panic().

#define MIDI_OUT3 (   code1,
  code2,
  code3 
)
Wert:
midiOutShortMsg(hMidiOut,              \
                  ((DWORD) (code3) << 16) +     \
                  ((DWORD) (code2) << 8) +      \
                  ((DWORD) (code1)))

Definiert in Zeile 92 der Datei DevMidi.cpp.

Wird benutzt von OutMidiPort::Close(), OutMidiPort::NoteOff(), OutMidiPort::NoteOn(), OutMidiPort::NotesCorrect(), OutMidiPort::Open(), OutMidiPort::Panic() und OutMidiPort::Sustain().

#define MIDI_PITCH (   i,
  freq 
)
Wert:
{ unsigned int pb = ( ((freq & 0xffffff) / bending_range) >> 11) ;      \
  DEBUGLOG2(midiio,_T("MIDI_PITCH(%x/%d,%x/%d) = %x/%d (%x/%d, %x/%d, %x/%d)"), \
            i,i,freq,freq,pb,pb,0xE0 + i,0xE0 + i, pb & 0x7f, pb & 0x7f,  (0x40 + (pb >> 7) ) & 0x7f, \
            (0x40 + (pb >> 7) ) & 0x7f );  \
    MIDI_OUT3 (0xE0 + i, pb & 0x7f, (0x40 + (pb >> 7) ) & 0x7f) }

Definiert in Zeile 123 der Datei DevMidi.cpp.

Wird benutzt von OutMidiPort::NoteOn().

#define MIDI_SOUND (   i,
  sound 
)    if ( sound != -1 ) MIDI_OUT2(0xC0+i, sound)

Definiert in Zeile 134 der Datei DevMidi.cpp.

Wird benutzt von OutMidiPort::NoteOn().

#define ZWZ   1.059463094

Definiert in Zeile 60 der Datei DevMidi.cpp.


Dokumentation der Funktionen

long LongAbs ( long  x) [inline]

Definiert in Zeile 424 der Datei DevMidi.cpp.

{
        return (x < 0)? -x : x;
}
void CALLBACK _export MidiInPortFunc ( HMIDIIN  hMidiIn,
UINT  wMsg,
DWORD  dwInstance,
DWORD  dwParam1,
DWORD  dwParam2 
)

Definiert in Zeile 595 der Datei DevMidi.cpp.

Wird benutzt von InMidiPort::Open().

{
        //  CurrentTimeStamp = dwParam2;

        if ( wMsg != MIM_DATA || dwParam1 % 256 > 240 ) return;

        // Daten in Midi-Automat
        ((InMidiPort*)dwInstance)->Proceed(dwParam1);
}

Erzeugt am Sun Aug 21 2011 10:51:58 für Mutabor von doxygen 1.7.4