Simple_images_rectangles.cpp

Go to the documentation of this file.
00001 /*
00002 *       This file contains class that represents working class inside
00003 *       TSimpleUnit and returns 
00004 *
00005 *               IMAGES AND RECTANGLES
00006 *
00007 *       value. Returned class
00008 *       is derived from 
00009 *
00010 *               TUnitRetType_images_rectangles
00011 *
00012 *       class.
00013 *
00014 *       Author:
00015 *                       Tomas Mrkvicka
00016 *                       xmrkvi03@stud.fit.vutbr.cz
00017 *
00018 */
00019 
00020 #include "simpleunit/Simple_images_rectangles.h"
00021 
00022 //definice staticke slozky pro manager
00023 DWORD TManager<TUnitRetType_images_rectangles_implemented>::ms_alloc_count = 0;
00024 
00025 ////////////////////////////////////////////////////////////////////////////////
00026 ////////////////////////////////////////////////////////////////////////////////
00027 ////////////////////////////////////////////////////////////////////////////////
00028 // TUnitRetType_images_rectangles_implemented
00029 
00030 /** Snizeni poctu referenci.
00031 *
00032 *       Jakmile pocet referenci dosahne 0 je objekt okamzite smazan, resp. vracen
00033 *       rodicovske jednotce.
00034 */
00035 void TUnitRetType_images_rectangles_implemented::Release(void)
00036 {
00037         m_cs.Enter();
00038                 m_refs--;
00039                 DWORD tmp_refs = m_refs;
00040         m_cs.Leave();
00041 
00042         if ( tmp_refs == 0 )
00043         {
00044                 //objekt je uvolnen
00045                 m_parent->ReturnObject( this );
00046         }
00047 }
00048 //OK 2007-08-26 00:21:29 B04-315B\Tom
00049 
00050 // TUnitRetType_images_rectangles_implemented
00051 ////////////////////////////////////////////////////////////////////////////////
00052 ////////////////////////////////////////////////////////////////////////////////
00053 ////////////////////////////////////////////////////////////////////////////////
00054 // TSimpleUnitProcessingInterface_images_rectangles
00055 
00056 /** Tato metoda uvolni vsechny vysledky.
00057 *
00058 *       Tyto vysledky drzi reference na objekty z cizich objektu a proto je potreba je odstranit.
00059 */
00060 void TSimpleUnitProcessingInterface_images_rectangles::FreeImageResults(void)
00061 {
00062         while( ! m_results.empty() )
00063         {
00064                 m_results.back()->Release();
00065                 m_results.pop_back();
00066         }
00067 }
00068 
00069 // TSimpleUnitProcessingInterface_images_rectangles
00070 ////////////////////////////////////////////////////////////////////////////////
00071 ////////////////////////////////////////////////////////////////////////////////
00072 ////////////////////////////////////////////////////////////////////////////////

Generated on Sat Nov 17 16:23:26 2007 for Image Processing Pipeline by  doxygen 1.4.6-NO