SwiftからCのライブラリーを呼び出す際のDataについて
Swift 4
からC
のインターフェースで提供されるframework
を呼び出すにあたって、ファイルから読み込んだバイナリーデーターのポインターを関数に渡す必要があります。
バイナリーデーター自体はSwiftの
let data: Data = try Data(contentsOf: dataURL)
で読み込んだのは良いのですが、このdata
からUnsafePointer<Int8>!
で、データー列の先頭アドレスを取得する一般的な方法はどの様になるのでしょうか?
.withUnsafeBytes<Int8>
で愚直にコピーするData
ではなくNSData.bytes
をキャストする
が考えられますが、もっと素直に変換または取得出来るような気がするため、こうするといいよという方法がありましたらお教え下さい。