forked from CPL/Simulator
51 lines
1.4 KiB
C++
51 lines
1.4 KiB
C++
#pragma once
|
|
|
|
#include "DroneData.h"
|
|
#include <Windows.h>
|
|
#include <vcclr.h>
|
|
|
|
#using <System.dll>
|
|
#using <mscorlib.dll>
|
|
|
|
using namespace System;
|
|
using namespace System::Collections::Generic;
|
|
using namespace System::Runtime::InteropServices;
|
|
|
|
namespace DroneClient {
|
|
|
|
public ref class Drone
|
|
{
|
|
public:
|
|
float AccX, AccY, AccZ;
|
|
float GyrX, GyrY, GyrZ;
|
|
unsigned int TimeAcc, TimeGyr;
|
|
|
|
float PosX, PosY;
|
|
float LaserRange;
|
|
unsigned int TimeRange;
|
|
|
|
float MotorUL, MotorUR, MotorDL, MotorDR;
|
|
|
|
static array<Byte>^ GetBytes(Object^ data);
|
|
static Object^ FromBytes(array<Byte>^ arr, Type^ type);
|
|
|
|
private:
|
|
array<Byte>^ SendDataMotor4();
|
|
array<Byte>^ RecvDataAcc(array<Byte>^ data);
|
|
array<Byte>^ RecvDataGyr(array<Byte>^ data);
|
|
array<Byte>^ RecvDataRange(array<Byte>^ data);
|
|
array<Byte>^ RecvDataLocal(array<Byte>^ data);
|
|
array<Byte>^ ClientRequestResponse(DroneData::DataHead head, array<Byte>^ body);
|
|
|
|
literal int DroneStreamCount = 512;
|
|
array<Byte>^ DroneStreamData;
|
|
int DroneStreamIndex;
|
|
DroneData::DataHead DroneStreamHead;
|
|
|
|
public:
|
|
Drone(); // Конструктор для инициализации
|
|
|
|
System::Collections::Generic::List<array<Byte>^>^ DataStream(array<Byte>^ data, int size);
|
|
array<Byte>^ SendRequest();
|
|
};
|
|
} |