#include <SimpleUnit.h>
Inherited by NSSimpleUnit::TSimpleUnitProcessingInterface_images_rectangles, NSSimpleUnit::TSimpleUnitProcessingInterface_images_rgb, NSSimpleUnit::TSimpleUnitProcessingInterface_integer, and NSSimpleUnit::TSimpleUnitProcessingInterface_rectangles.
Inheritance diagram for NSPipeline::TSimpleUnitProcessingInterface:
Public Member Functions | |
virtual void | ProcessFrame (const TFrame *frame)=0 |
Tato metoda obdrzi snimek, zpracuje jej a ukonci se. | |
virtual | ~TSimpleUnitProcessingInterface (void)=0 |
Virtualni destruktor. | |
virtual EnumUnitType | GetType (void) const |
Datovy typ ukladany v teto tride. | |
virtual TUnitRetTypeInterface * | GetResult (DWORD id) |
Ukazatel na vracena data pro snimek se zadanym ID. |
STACI ODVODIT NOVOU TRIDU OD TOHOTO ROZHRANI A PREPSAT METODY PROCESSFRAME() A DESTRUKTOR.
METODY GETTYPE() A GETRESULT() BYT POVINNE PREPSANY NEMUSI, ALE VETSINOU JE TO NUTNE. IMPLICITNE TOTIZ TYTO METODY REPREZENTUJI JEDNOTKU, KTERA NEVRACI ZADNA DATA.
Metoda ProcessFrame je pracovni metodou, ktera je automaticky volana tridou TSimpleUnit. V teto metode musi byt zpracovan zadany snimek TFrame. Metoda se nemusi starat o reference ani zamky, pouze zpracuje snimek. Metoda musi probehnout naprosto bez chyb, pokud dojde k nejakemu selhani pak musi byt zpracovano uvnitr metody a navenek se nesmi projevit - tedy nejsou povoleny zadne vyjimky apod.
Dale je nutne prepsat metody GetType() a GetResult(). Pokud tyto dve nejsou prepsany, pak trida nevraci zadna data a metoda GetResult vraci vzdy NULL.
Tato trida (a z ni odvozene) je vzdy odpovedna za objekt, ktery je vracen metodou GetResult().
Definition at line 54 of file SimpleUnit.h.
|
Virtualni destruktor.
Definition at line 65 of file SimpleUnit.h. |
|
Ukazatel na vracena data pro snimek se zadanym ID. Metoda muze vratit NULL. V bazove tride vraci NULL vzdy. Tato metoda by mela byt synchronizovana pro soubezny pristup vice vlakne, nebot jedno vlakno (z vypocetni jednotky) do objektu zapisuje data a v takovem pripade musi metoda GetResult() pockat na jejich zapis. Implpicitni navratova hodnota je NULL. Reimplemented in NSSimpleUnit::TSimpleUnitProcessingInterface_images_rgb, NSSimpleUnit::TSimpleUnitProcessingInterface_images_rectangles, NSSimpleUnit::TSimpleUnitProcessingInterface_integer, and NSSimpleUnit::TSimpleUnitProcessingInterface_rectangles. Definition at line 83 of file SimpleUnit.h. Referenced by NSPipeline::TSimpleUnit::GetResult(). |
|
Datovy typ ukladany v teto tride. Imlicitni implementace predpokladany, ze jendotka nevraci zadna data. Reimplemented in NSSimpleUnit::TSimpleUnitProcessingInterface_images_rgb, NSSimpleUnit::TSimpleUnitProcessingInterface_images_rectangles, NSSimpleUnit::TSimpleUnitProcessingInterface_integer, and NSSimpleUnit::TSimpleUnitProcessingInterface_rectangles. Definition at line 71 of file SimpleUnit.h. References NSPipeline::ENUM_UNITTYPE_NODATA. Referenced by NSPipeline::TSimpleUnit::GetType(). |
|
Tato metoda obdrzi snimek, zpracuje jej a ukonci se. O jeji volani se stara logika uvnitr tridy TSimpleUnit. Implemented in NSSimpleUnit::TSimpleUnitProcessingInterface_images_rgb, NSSimpleUnit::TSimpleUnitProcessingInterface_images_rectangles, NSSimpleUnit::TSimpleUnitProcessingInterface_integer, NSSimpleUnit::TSimpleUnitProcessingInterface_rectangles, and NSPipeline::TTestUnit. Referenced by NSPipeline::TSimpleUnit::Loop(). |