#ifndef KAMERA_H #define KAMERA_H #include "frame.h" #include #include "mask.h" #include #include "frametree.h" class Kamera : public FrameTreeNode { private: int ref; // reference Counter QList< Frame* > frames; // Liste mit Bildern Mask m; // Die Maske der Kamera QString name; // Der Name der Kamera) public: Kamera( QString name, QString maskPath, int index ); ~Kamera(); // Gibt 1 zurück, falls keine Objekte ohne ID existieren und auf keinem Bild eine ID mehrfach vergeben wurde bool isCorrectAnnotated() const; // Gibt this zurück void *getNodeObject() const override; // gibt die Anzahl der Bilder zurück int getChildCount() const override; // Gibt das Bild mit Index index zurück Frame *getFrame( int index ) const; // fügt der Kamera das Bild f hinzu void addFrame( Frame *f ); // Wendet die Maske der Kamera auf alle Bilder an void applyMask(); // Gibt den Namen der Kamera zurück QString getName() const; // Gibt die Maske der Kamera zurück Mask *getMask() const; // Speichert die Maske der Kamera und erzeugt die Bilder in JPEG Images void saveMask(); // Erhöht den Reference Counter um 1 void refNew(); // Verringert den Reference Counter um 1 (bei 0 löscht sich das Objekt selbst) void refRelease(); }; #endif // KAMERA_H