bruh
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
typedef struct {
|
||||
unsigned int rgbd;
|
||||
_Alignas(unsigned int) unsigned short efg;
|
||||
} rgbled;
|
||||
|
||||
typedef struct {
|
||||
unsigned int rgbd;
|
||||
unsigned int fg;
|
||||
unsigned int e;
|
||||
} rgbled_bad;
|
||||
|
||||
rgbled_bad* create_bad_led();
|
||||
|
||||
// rgbled
|
||||
// | unsigned int rgbd |
|
||||
// dddd dddd rrrr rrrr gggg gggg bbbb bbbb
|
||||
// .... ftte eeee eeee ____ ____ ____ ____
|
||||
// |unsigned short efg| padding |
|
||||
// 8 байт
|
||||
|
||||
// rgbled_bad
|
||||
// | unsigned int rgbd |
|
||||
// dddd dddd rrrr rrrr gggg gggg bbbb bbbb
|
||||
// |unsigned int fg |
|
||||
// .... .... .... .... .... .... .... .ftt
|
||||
// | unsigned int e |
|
||||
// .... .... .... .... .... ...e eeee eeee
|
||||
// 12 байт
|
||||
|
||||
rgbled* create_led(void);
|
||||
|
||||
void set_Temp(rgbled* led, int tempK);
|
||||
void set_R(rgbled* led, int red);
|
||||
void set_G(rgbled* led, int green);
|
||||
void set_B(rgbled* led, int blue);
|
||||
void set_D(rgbled* led, int bright);
|
||||
void set_F(rgbled* led, int type);
|
||||
void set_T(rgbled* led, int work);
|
||||
int get_Temp(rgbled* led);
|
||||
int get_R(rgbled* led);
|
||||
int get_G(rgbled* led);
|
||||
int get_B(rgbled* led);
|
||||
int get_D(rgbled* led);
|
||||
int get_F(rgbled* led);
|
||||
int get_T(rgbled* led);
|
||||
void print_colorHEX(rgbled* led);
|
||||
@@ -0,0 +1,18 @@
|
||||
typedef struct {
|
||||
matrix2d** data;
|
||||
int size;
|
||||
int capacity;
|
||||
} tdQueue;
|
||||
|
||||
#define ERRALLOC do{ \
|
||||
fputs("Ошибка выделения памяти\n", \
|
||||
stderr); exit(EXIT_FAILURE); } while(0)
|
||||
|
||||
tdQueue* queue_create(void);
|
||||
void queue_decontruct(tdQueue* queue);
|
||||
bool queue_is_empty(tdQueue* queue);
|
||||
int queue_size(tdQueue* queue);
|
||||
void queue_enqueue(tdQueue* queue, matrix2d* data);
|
||||
matrix2d* queue_dequeue(tdQueue* queue);
|
||||
matrix2d* queue_peek(tdQueue* queue);
|
||||
void queue_clear(tdQueue* queue);
|
||||
@@ -0,0 +1,9 @@
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdbool.h>
|
||||
#include <time.h>
|
||||
#include <math.h>
|
||||
#include <string.h>
|
||||
#include "bitrgbled.h"
|
||||
#include "matrix2d.h"
|
||||
#include "contstruct.h"
|
||||
@@ -0,0 +1,16 @@
|
||||
typedef struct {
|
||||
const unsigned int x;
|
||||
const unsigned int y;
|
||||
void*** ptr;
|
||||
} matrix2d;
|
||||
|
||||
matrix2d* create_matrix2d(unsigned int x, unsigned int y);
|
||||
void deconstruct_matrix2d(matrix2d* mat);
|
||||
void print_matrix2d(matrix2d* mat);
|
||||
void fill_rand_matrix2d(matrix2d* mat);
|
||||
void set_elem_matrix2d(matrix2d* mat, void* elem, unsigned int x, unsigned int y);
|
||||
bool not_equal_mtrx(matrix2d* matA, matrix2d* matB);
|
||||
bool equal_mtrx(matrix2d* matA, matrix2d* matB);
|
||||
matrix2d* get_row_matrix2d(matrix2d* mat, int y);
|
||||
matrix2d* get_column_matrix2d(matrix2d* mat, int x);
|
||||
matrix2d* transpond_mtrx(matrix2d* mat);
|
||||
Reference in New Issue
Block a user