/usr/include/tse3/plt/Win32.h is in libtse3-dev 0.3.1-4.3ubuntu1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 | /*
* @(#)plt/Win32.h 1.00 30 November 1999
*
* Copyright (c) 2000 Pete Goodliffe (pete@cthree.org)
*
* This file is part of TSE3 - the Trax Sequencer Engine version 3.00.
*
* This library is modifiable/redistributable under the terms of the GNU
* General Public License.
*
* You should have received a copy of the GNU General Public License along
* with this program; see the file COPYING. If not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*
*/
#ifndef TSE3_PLT_WIN32_H
#define TSE3_PLT_WIN32_H
#include "tse3/MidiScheduler.h"
#include <Windows.h>
namespace TSE3
{
namespace Plt
{
/**
* This is the Win32 (Windows) @ref MidiScheduler implementation.
*
* @short Win32 MidiScheduler implemtation
* @author Jose Maria Sanchez Saez
* @author Pete Goodliffe
* @version 0.00
* @see MidiScheduler
* @see Win32MidiSchedulerFactory
*/
class Win32MidiScheduler : public MidiScheduler
{
public:
/**
* Creates the Win32MidiScheduler object.
*/
Win32MidiScheduler(); // throw (Win32MidiSchedulerException);
virtual ~Win32MidiScheduler();
protected:
/**
* @reimplemented
*/
virtual const char *impl_implementationName() const;
/**
* @reimplemented
*/
virtual const char *impl_portName(int port) const;
/**
* @reimplemented
*/
virtual const char *impl_portType(int port) const;
/**
* @reimplemented
*/
virtual bool impl_portReadable(int port) const;
/**
* @reimplemented
*/
virtual bool impl_portWriteable(int port) const;
/**
* @reimplemented
*/
virtual void impl_start(Clock clock);
/**
* @reimplemented
*/
virtual void impl_stop(Clock clock);
/**
* @reimplemented
*/
virtual void impl_moveTo(Clock moveTime, Clock newTime);
/**
* @reimplemented
*/
virtual Clock impl_clock();
/**
* @reimplemented
*/
virtual int impl_msecs();
/**
* @reimplemented
*/
virtual void impl_setTempo(int tempo, Clock changeTime);
/**
* @reimplemented
*/
virtual bool impl_eventWaiting();
/**
* @reimplemented
*/
virtual MidiEvent impl_rx();
/**
* @reimplemented
*/
virtual void impl_tx(MidiCommand mc);
/**
* @reimplemented
*/
virtual void impl_tx(MidiEvent mc);
/**
* @reimplemented
*/
virtual void impl_txSysEx(int port,
const unsigned char *data,
size_t size);
private:
union HMIDI
{
HMIDIOUT out;
HMIDIIN in;
};
HMIDI *hMidi;
UINT nMidi;
void runMidiData(HMIDIOUT, MidiCommand);
static void callback(UINT, UINT, DWORD, DWORD, DWORD);
};
}
}
#endif
|