123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104 |
- #include "kamera.h"
- #include <QProgressDialog>
- Kamera::Kamera( QString n, QString maskPath, int index )
- : FrameTreeNode( index, 0, 0 ),
- ref( 1 ),
- name( n ),
- m( maskPath )
- {}
- Kamera::~Kamera()
- {
- for( auto f = frames.begin(); f != frames.end(); f++ )
- {
- delete *f;
- }
- }
- bool Kamera::isCorrectAnnotated() const
- {
- for( Frame *f : frames )
- {
- if( !f->isCorrectAnnotated() )
- return false;
- }
- return true;
- }
- void *Kamera::getNodeObject() const
- {
- return (void*)this;
- }
- int Kamera::getChildCount() const
- {
- return frames.size();
- }
- Frame *Kamera::getFrame( int index ) const
- {
- return frames.at( index );
- }
- QString Kamera::getName() const
- {
- return name;
- }
- void Kamera::addFrame( Frame *f )
- {
- frames.append( f );
- f->applyMask( m );
- }
- void Kamera::applyMask()
- {
- for( auto f = frames.begin(); f != frames.end(); f++ )
- {
- (*f)->applyMask( m );
- }
- }
- Mask *Kamera::getMask() const
- {
- return (Mask*)&m;
- }
- void Kamera::saveMask()
- {
- m.save();
- QProgressDialog progress( "Maske wird gespeichert...", "", 0, frames.size() );
- progress.setWindowModality(Qt::WindowModal);
- progress.setCancelButton( 0 );
- for( auto f = frames.begin(); f != frames.end(); f++ )
- {
- m.saveToFrameMask( (*f)->getImageMatrix(), (*f)->getName() );
- progress.setValue( progress.value() + 1 );
- progress.repaint();
- }
- applyMask();
- progress.close();
- }
- void Kamera::refNew()
- {
- ref++;
- }
- void Kamera::refRelease()
- {
- if( !--ref )
- delete this;
- }
|