コード例 #1
0
ファイル: datarefs.go プロジェクト: abieberbach/goplane
func GetString(dataRef DataRef) string {
	length := int(C.XPLMGetDatab(C.XPLMDataRef(dataRef), nil, 0, 0))
	valueBuffer := (*C.char)(C.malloc(C.size_t(length)))
	defer C.free(unsafe.Pointer(valueBuffer))
	C.XPLMGetDatab(C.XPLMDataRef(dataRef), unsafe.Pointer(valueBuffer), 0, C.int(length))
	return C.GoString(valueBuffer)
}
コード例 #2
0
ファイル: datarefs.go プロジェクト: abieberbach/goplane
func SetFloatArrayData(dataRef DataRef, value []float32) {
	C.XPLMSetDatavf(C.XPLMDataRef(dataRef), (*C.float)(unsafe.Pointer(&value[0])), 0, C.int(len(value)))
}
コード例 #3
0
ファイル: datarefs.go プロジェクト: abieberbach/goplane
func GetFloatArrayData(dataRef DataRef) []float32 {
	length := int(C.XPLMGetDatavf(C.XPLMDataRef(dataRef), nil, 0, 0))
	result := make([]float32, length)
	C.XPLMGetDatavf(C.XPLMDataRef(dataRef), (*C.float)(unsafe.Pointer(&result[0])), 0, C.int(length))
	return result
}
コード例 #4
0
ファイル: datarefs.go プロジェクト: abieberbach/goplane
func SetIntArrayData(dataRef DataRef, value []int) {
	C.XPLMSetDatavi(C.XPLMDataRef(dataRef), (*C.int)(unsafe.Pointer(&value[0])), 0, C.int(len(value)))
}
コード例 #5
0
ファイル: datarefs.go プロジェクト: abieberbach/goplane
func GetIntArrayData(dataRef DataRef) []int {
	length := int(C.XPLMGetDatavi(C.XPLMDataRef(dataRef), nil, 0, 0))
	result := make([]int, length)
	C.XPLMGetDatavi(C.XPLMDataRef(dataRef), (*C.int)(unsafe.Pointer(&result[0])), 0, C.int(length))
	return result
}
コード例 #6
0
ファイル: datarefs.go プロジェクト: abieberbach/goplane
func SetDoubleData(dataRef DataRef, value float64) {
	C.XPLMSetDatad(C.XPLMDataRef(dataRef), C.double(value))
}
コード例 #7
0
ファイル: datarefs.go プロジェクト: abieberbach/goplane
func GetDoubleData(dataRef DataRef) float64 {
	return float64(C.XPLMGetDatad(C.XPLMDataRef(dataRef)))
}
コード例 #8
0
ファイル: datarefs.go プロジェクト: abieberbach/goplane
func SetIntData(dataRef DataRef, value int) {
	C.XPLMSetDatai(C.XPLMDataRef(dataRef), C.int(value))
}
コード例 #9
0
ファイル: datarefs.go プロジェクト: abieberbach/goplane
func GetFloatData(dataRef DataRef) float32 {
	return float32(C.XPLMGetDataf(C.XPLMDataRef(dataRef)))
}
コード例 #10
0
ファイル: datarefs.go プロジェクト: abieberbach/goplane
func GetDataRefTypes(dataRef DataRef) DataRefType {
	return DataRefType(C.XPLMGetDataRefTypes(C.XPLMDataRef(dataRef)))
}
コード例 #11
0
ファイル: datarefs.go プロジェクト: abieberbach/goplane
func GetIntData(dataRef DataRef) int {
	return int(C.XPLMGetDatai(C.XPLMDataRef(dataRef)))
}
コード例 #12
0
ファイル: datarefs.go プロジェクト: abieberbach/goplane
func IsDataRefGood(dataRef DataRef) bool {
	return C.XPLMIsDataRefGood(C.XPLMDataRef(dataRef)) == 1
}
コード例 #13
0
ファイル: datarefs.go プロジェクト: abieberbach/goplane
func CanWriteDataRef(dataRef DataRef) bool {
	return C.XPLMCanWriteDataRef(C.XPLMDataRef(dataRef)) == 1
}
コード例 #14
0
ファイル: datarefs.go プロジェクト: abieberbach/goplane
func SetString(dataRef DataRef, value string) {
	cValue := C.CString(value)
	defer C.free(unsafe.Pointer(cValue))
	C.XPLMSetDatab(C.XPLMDataRef(dataRef), unsafe.Pointer(cValue), 0, C.int(C.strlen(cValue)))
}
コード例 #15
0
ファイル: datarefs.go プロジェクト: abieberbach/goplane
func GetData(dataRef DataRef) []byte {
	length := int(C.XPLMGetDatab(C.XPLMDataRef(dataRef), nil, 0, 0))
	result := make([]byte, length)
	C.XPLMGetDatab(C.XPLMDataRef(dataRef), unsafe.Pointer(&result[0]), 0, C.int(length))
	return result
}
コード例 #16
0
ファイル: datarefs.go プロジェクト: abieberbach/goplane
func SetFloatData(dataRef DataRef, value float32) {
	C.XPLMSetDataf(C.XPLMDataRef(dataRef), C.float(value))
}
コード例 #17
0
ファイル: publishing.go プロジェクト: abieberbach/goplane
func UnregisterDataAccessor(dataRef DataRef) {
	C.XPLMUnregisterDataAccessor(C.XPLMDataRef(dataRef))
}
コード例 #18
0
ファイル: datarefs.go プロジェクト: abieberbach/goplane
func SetData(dataRef DataRef, value []byte) {
	C.XPLMSetDatab(C.XPLMDataRef(dataRef), unsafe.Pointer(&value[0]), 0, C.int(len(value)))
}