コード例 #1
0
ファイル: plugins.go プロジェクト: abieberbach/goplane
func GetPluginInfo(id PluginId) (name, filePath, signature, description string) {
	nameBuf := (*C.char)(C.malloc(255))
	defer C.free(unsafe.Pointer(nameBuf))
	pathBuf := (*C.char)(C.malloc(255))
	defer C.free(unsafe.Pointer(pathBuf))
	sigBuf := (*C.char)(C.malloc(255))
	defer C.free(unsafe.Pointer(sigBuf))
	descBuf := (*C.char)(C.malloc(255))
	defer C.free(unsafe.Pointer(descBuf))
	C.XPLMGetPluginInfo(C.XPLMPluginID(id), nameBuf, pathBuf, sigBuf, descBuf)
	name = C.GoString(nameBuf)
	filePath = C.GoString(pathBuf)
	signature = C.GoString(sigBuf)
	description = C.GoString(descBuf)
	return
}
コード例 #2
0
ファイル: plugins.go プロジェクト: abieberbach/goplane
func DisablePlugin(id PluginId) {
	C.XPLMDisablePlugin(C.XPLMPluginID(id))
}
コード例 #3
0
ファイル: plugins.go プロジェクト: abieberbach/goplane
func EnablePlugin(id PluginId) bool {
	return C.XPLMEnablePlugin(C.XPLMPluginID(id)) == 1
}
コード例 #4
0
ファイル: plugins.go プロジェクト: abieberbach/goplane
func IsPluginEnabled(id PluginId) bool {
	return C.XPLMIsPluginEnabled(C.XPLMPluginID(id)) == 1
}