这是一个发送MIDI数据的极其简单的CoreMIDI OS X应用程序.问题是它不起作用.编译好,并运行.它报告没有错误,并且不会崩溃.创建的源在MIDI监视器中可见.但是,没有MIDI数据出来.
有人能告诉我这里我做错了什么吗?
#include <CoreMIDI/CoreMIDI.h>
int main(int argc, char *args[])
{
MIDIClientRef theMidiClient;
MIDIEndpointRef midiOut;
MIDIPortRef outPort;
char pktBuffer[1024];
MIDIPacketList* pktList = (MIDIPacketList*) pktBuffer;
MIDIPacket *pkt;
Byte midiDataToSend[] = {0x91, 0x3c, 0x40};
int i;
MIDIClientCreate(CFSTR("Magical MIDI"), NULL, NULL,
&theMidiClient);
MIDISourceCreate(theMidiClient, CFSTR("Magical MIDI Source"),
&midiOut);
MIDIOutputPortCreate(theMidiClient, CFSTR("Magical MIDI Out Port"),
&outPort);
pkt = MIDIPacketListInit(pktList);
pkt = MIDIPacketListAdd(pktList, 1024, pkt, 0, 3, midiDataToSend);
for (i = 0; i < 100; i++) {
if (pkt == NULL || MIDISend(outPort, midiOut, …Run Code Online (Sandbox Code Playgroud) 使用Beta 4,我有这个代码运行良好:
var red, green, blue, alpha: UnsafePointer<CGFloat>
red = UnsafePointer<CGFloat>.alloc(1)
green = UnsafePointer<CGFloat>.alloc(1)
blue = UnsafePointer<CGFloat>.alloc(1)
alpha = UnsafePointer<CGFloat>.alloc(1)
myColor.getRed(red, green: green, blue: blue, alpha: alpha)
CGContextSetRGBStrokeColor(context, red.memory, green.memory, blue.memory, 1)
red.dealloc(1)
green.dealloc(1)
blue.dealloc(1)
alpha.dealloc(1)
Run Code Online (Sandbox Code Playgroud)
现在使用Beta5,我得到错误"'UnsafePointer.Type'没有名为'alloc'的成员".
我要做的就是根据UIColor设置CGContext的笔触颜色.我现在应该怎么做?"withUnsafePointers"函数有点儿玩笑 - 它给出了奇怪的错误,它只需要最多三个不安全的指针,而我在这种情况下尝试使用四个.