public static bool ReadHidDevice() { if (IPCMapPntr == IntPtr.Zero) { Debug.LogError("No fMap"); return(false); } prev_btn_state = data.Btn; data = (LocomotionDevice.dataexchange_t)Marshal.PtrToStructure(IPCMapPntr, typeof(LocomotionDevice.dataexchange_t)); return(true); }
public static bool ConnenctToMemFile() { ShMemFileHandler = OpenFileMapping(FileRights.AllAccess, false, COMLINK_NAME); if (ShMemFileHandler == IntPtr.Zero) { Debug.LogError("No fHandler"); return(false); } IPCMapPntr = MapViewOfFile(ShMemFileHandler, FileRights.AllAccess, 0, 0, 256); if (IPCMapPntr == IntPtr.Zero) { Debug.LogError("No fMap"); return(false); } //initial reading data = (LocomotionDevice.dataexchange_t)Marshal.PtrToStructure(IPCMapPntr, typeof(LocomotionDevice.dataexchange_t)); prev_btn_state = data.Btn; return(true); }