Inicializando la estructura MIDIMetaEvent

Estoy luchando por inicializar la estructura MIDIMetaEvent que se encuentra en MusicPlayer.h con swift. El archivo de encabezado define la estructura de la siguiente manera:

struct MIDIMetaEvent {
  var metaEventType: UInt8
  var unused1: UInt8
  var unused2: UInt8
  var unused3: UInt8
  var dataLength: UInt32
  var data: (UInt8)
}

Lo que parece bastante sencillo hasta ese miembro de 'datos'. ¿Es esa una definición de tupla de 1 elemento? Puedo inicializar fácilmente todos los demás elementos de estructura, pero he intentado en vano establecer 'datos' en algo más que un solo valor. En mi código, utilicé una matriz UInt8 llamada myData e intenté iniciar la estructura de esta manera:

var msg = MIDIMetaEvent(
  metaEventType : UInt8(0x7F),
  unused1       : UInt8(0),
  unused2       : UInt8(0),
  unused3       : UInt8(0),
  dataLength    : UInt32(myData.count),
  data          : UnsafeBufferPointer<UInt8>(start: UnsafePointer<UInt8>(myData), count:myData.count) )

Pero el compilador no está contento con esto y se queja de "UnsafeBufferPointer no convertible a UInt8". Si simplemente configuro los datos en un solo valor pero configuro dataLength en un valor superior a 1, el MIDIEventData resultante muestra que el primer valor en el evento es el que pegué en 'data' seguido de bytes de datos galimatizantes de acuerdo con los bytes 'dataLength' . Claramente, los 'datos' se ven como una especie de memoria continua.

Entonces, ¿cómo configuro ese elemento de 'datos' en elementos UInt8 desde una matriz?

Respuestas a la pregunta(2)

Su respuesta a la pregunta