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];
|
|
|
|
};
|
|
|
|
|
2020-02-05 20:20:03 +00:00
|
|
|
// 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.
|
2019-11-23 07:33:48 +00:00
|
|
|
struct leds_in_universe_range
|
|
|
|
{
|
|
|
|
s32 RangeStart;
|
|
|
|
s32 RangeOnePastLast;
|
|
|
|
s32 Universe;
|
|
|
|
};
|
|
|
|
|
2020-03-08 21:44:28 +00:00
|
|
|
struct assembly_led_buffer
|
|
|
|
{
|
|
|
|
u32 LEDCount;
|
|
|
|
pixel* Colors;
|
|
|
|
led* LEDs;
|
|
|
|
};
|
|
|
|
|
2019-11-23 00:07:25 +00:00
|
|
|
struct assembly
|
|
|
|
{
|
2019-12-23 01:47:26 +00:00
|
|
|
memory_arena Arena;
|
2019-11-23 00:07:25 +00:00
|
|
|
|
|
|
|
string Name;
|
|
|
|
string FilePath;
|
|
|
|
|
2020-03-08 21:44:28 +00:00
|
|
|
assembly_led_buffer LEDBuffer;
|
|
|
|
|
|
|
|
#if 0
|
2020-01-14 01:04:40 +00:00
|
|
|
u32 LEDCount;
|
2019-11-23 00:07:25 +00:00
|
|
|
pixel* Colors;
|
|
|
|
led* LEDs;
|
2020-03-08 21:44:28 +00:00
|
|
|
#endif
|
2019-11-23 07:33:48 +00:00
|
|
|
|
2020-01-14 01:04:40 +00:00
|
|
|
u32 LEDUniverseMapCount;
|
2019-11-23 07:33:48 +00:00
|
|
|
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
|