crubier/PhoenixPilot — pull request #1 by peabody124 (2012-12-17 16:21:51+00:00)
Title: Structured uavobjects

This push deals with the reorganization of the GCS so it should merge cleanly into next again. You might want to make a second branch if you want to keep a version that will cleanly merge into OP upstream too.

For reference it still doesn't seem to be generating the right C structure, or maybe this is changed by intent. For example this is the output of accels

public:^M
// Field structure^M
typedef struct {^M
typedef struct {^M
float x;^M
float y;^M
float z;^M
float temperature;^M
} __attribute__((packed)) AccelsData;^M
^M
^M
} __attribute__((packed)) DataFields;^M

The nested structure inside datafields ends up breaking a lot of GCS code. Do we really want/need it? The getData/setData method can handle this though to keep the GCS code consistent but still all the structure definitions would become

Accels::DataFields::AccelsData which is a bit verbose

For reference this is the previous structure

public:^M
// Field structure^M
typedef struct {^M
float x;
float y;
float z;
float temperature;
^M
} __attribute__((packed)) DataFields;^M