/*
 * interprocess_data.h
 *
 *  Created on: Aug 27, 2024
 *      Author: jakubski
 */

#ifndef INC_INTERPROCESS_DATA_H_
#define INC_INTERPROCESS_DATA_H_

#include "serial_protocol.h"
#include "stdint.h"

struct _IntegerValues {
    int32_t value[3];
};


struct _FloatValues {
    float value[3];
};

struct _MixedValues {
    int32_t value1;
    float value2;
    uint32_t value3;
};

typedef struct _FloatValues FloatValues;
typedef struct _IntegerValues IntegerValues;
typedef struct _MixedValues MixedValues;


struct _InterProcessData {
    SerialProtocolCommands spCommand;
    union _values {
        IntegerValues integerValues;
        FloatValues flaotValues;
        MixedValues mixedValues;
    } values;
};

typedef struct _InterProcessData InterProcessData;

#endif /* INC_INTERPROCESS_DATA_H_ */
