#ifndef IMAGEINPUT_H
#define IMAGEINPUT_H

typedef unsigned char GrayScalePixelType;

// Für die Verarbeitung muss dynamsiche Speicherverwaltung angewendet werden
typedef struct
{
    GrayScalePixelType *buffer; // Bytestream der ja Pixel die Graustufe als unsigned char angibt --> Je Pixel 8 Bit
    unsigned int width;
    unsigned int height;
} GrayScaleImage; // Jedes Bild ist von der Logik her als Matrix gespeichert mit Höhe und Breite als Angabe für die Anzahl an Spalten und Reihen

typedef struct
{
    GrayScaleImage *images;
    unsigned char *labels;
    unsigned int count;
} GrayScaleImageSeries;

GrayScaleImageSeries *readImages(const char *path);
void clearSeries(GrayScaleImageSeries *series);

#endif
