Lumenarium/src/foldhaus_assembly.h

53 lines
880 B
C
Raw Normal View History

2020-01-02 02:41:43 +00:00
//
// File: foldhaus_assembly.h
// Author: Peter Slattery
// Creation Date: 2020-01-01
//
#ifndef FOLDHAUS_ASSEMBLY_H
2019-11-23 00:07:25 +00:00
struct led
{
s32 Index;
v4 Position;
};
union pixel
{
struct
{
u8 R;
u8 G;
u8 B;
};
u8 Channels[3];
};
// NOTE(Peter): This structure is so we can keep track of
// what LEDs output to which DMX universe. You don't need
// to use it anywhere else, as all the data for patterns,
// colors, and groups is/will be stored elsewhere.
struct leds_in_universe_range
{
s32 RangeStart;
s32 RangeOnePastLast;
s32 Universe;
};
2019-11-23 00:07:25 +00:00
struct assembly
{
memory_arena Arena;
2019-11-23 00:07:25 +00:00
string Name;
string FilePath;
2020-01-14 01:04:40 +00:00
u32 LEDCount;
2019-11-23 00:07:25 +00:00
pixel* Colors;
led* LEDs;
2020-01-14 01:04:40 +00:00
u32 LEDUniverseMapCount;
leds_in_universe_range* LEDUniverseMap;
2019-11-23 00:07:25 +00:00
};
2020-01-02 02:41:43 +00:00
#define FOLDHAUS_ASSEMBLY_H
#endif // FOLDHAUS_ASSEMBLY_H