NSPipeline::TCriticalSection Class Reference

Trida pro zjednoduseni prace s kritickou sekci. More...

#include <CriticalSection.h>

List of all members.

Public Member Functions

 TCriticalSection (void)
 Konstruktor.
 ~TCriticalSection (void)
 Destruktor.
void Enter (void)
 Vstup do kriticke sekce.
void Leave (void)
 Uvolneni kriticke sekce.

Private Member Functions

 TCriticalSection (const TCriticalSection &orig)
 falesny kopirovaci konstruktor
void operator= (const TCriticalSection &orig)
 falesny operator prirazeni

Private Attributes

CRITICAL_SECTION m_section
 systemove zavisla kriticka sekce z Windows


Detailed Description

Trida pro zjednoduseni prace s kritickou sekci.

V aplikaci musi byt vzdy pouzita dvojice volani TCriticalSection::Enter() a TCriticalSection::Leave().

Definition at line 34 of file CriticalSection.h.


Constructor & Destructor Documentation

TCriticalSection::TCriticalSection void   ) 
 

Konstruktor.

Inicializuje kritickou sekci.

Definition at line 21 of file CriticalSection.cpp.

References m_section.

TCriticalSection::~TCriticalSection void   ) 
 

Destruktor.

Zrusi kritickou sekci.

Definition at line 31 of file CriticalSection.cpp.

References m_section.

NSPipeline::TCriticalSection::TCriticalSection const TCriticalSection orig  )  [private]
 

falesny kopirovaci konstruktor


Member Function Documentation

void TCriticalSection::Enter void   ) 
 

Vstup do kriticke sekce.

Volani metody je blokujici az do vstupu do kriticke sekce. Tj. pokud jiz jine vlakno zavolalo tuto metodu na tomto objektu pak ostatni vlakna musi cekat.

Definition at line 43 of file CriticalSection.cpp.

References m_section.

Referenced by NSPipeline::TFrameQueue::AddFrame(), NSPipeline::TFrameReal::AddLock(), NSSimpleUnit::TUnitRetType_rectangles_implemented::AddRefs(), NSSimpleUnit::TUnitRetType_integer_implemented::AddRefs(), NSSimpleUnit::TUnitRetType_images_rectangles_implemented::AddRefs(), NSSimpleUnit::TUnitRetType_images_rgb_implemented::AddRefs(), NSSimpleUnit::TImageRGBResult::AddRefs(), NSPipeline::TFrameReal::AddRefs(), NSSimpleUnit::TSimpleUnitProcessingInterface_rectangles::AddResult(), NSSimpleUnit::TSimpleUnitProcessingInterface_integer::AddResult(), NSSimpleUnit::TSimpleUnitProcessingInterface_images_rectangles::AddResult(), NSSimpleUnit::TSimpleUnitProcessingInterface_images_rgb::AddResult(), NSPipeline::TFrameQueue::Free(), NSPipeline::TDispatcher::Free(), NSPipeline::TDispatcher::GetFrame(), NSPipeline::TImageSetManager::GetImageSet(), NSPipeline::TDispatcher::GetLockedFrame(), NSSimpleUnit::TSimpleUnitProcessingInterface_rectangles::GetObject(), NSSimpleUnit::TSimpleUnitProcessingInterface_integer::GetObject(), NSSimpleUnit::TSimpleUnitProcessingInterface_images_rectangles::GetObject(), NSSimpleUnit::TSimpleUnitProcessingInterface_images_rgb::GetObject(), NSSimpleUnit::TImageRGBResultManager::GetObject(), NSPipeline::TFrameQueue::GetRenderableFrame(), NSSimpleUnit::TSimpleUnitProcessingInterface_rectangles::GetResult(), NSSimpleUnit::TSimpleUnitProcessingInterface_integer::GetResult(), NSSimpleUnit::TSimpleUnitProcessingInterface_images_rectangles::GetResult(), NSSimpleUnit::TSimpleUnitProcessingInterface_images_rgb::GetResult(), NSSimpleUnit::TImageRGBResultManager::InsertObject(), NSPipeline::TSimpleUnit::Loop(), NSSimpleUnit::TUnitRetType_rectangles_implemented::Release(), NSSimpleUnit::TUnitRetType_integer_implemented::Release(), NSSimpleUnit::TUnitRetType_images_rectangles_implemented::Release(), NSSimpleUnit::TUnitRetType_images_rgb_implemented::Release(), NSSimpleUnit::TImageRGBResult::Release(), NSPipeline::TFrameReal::Release(), NSPipeline::TImageSetManager::ReleaseImageSet(), NSPipeline::TFrameReal::ReleaseLock(), NSSimpleUnit::TSimpleUnitProcessingInterface_rectangles::ReturnObject(), NSSimpleUnit::TSimpleUnitProcessingInterface_integer::ReturnObject(), NSSimpleUnit::TSimpleUnitProcessingInterface_images_rectangles::ReturnObject(), NSSimpleUnit::TSimpleUnitProcessingInterface_images_rgb::ReturnObject(), NSPipeline::TDispatcher::SetFrame(), NSPipeline::TFrameQueue::SetInputBufferLength(), NSPipeline::TSimpleUnit::Stop(), NSPipeline::TDispatcher::~TDispatcher(), NSPipeline::TFrameQueue::~TFrameQueue(), and NSPipeline::TImageSetManager::~TImageSetManager().

void TCriticalSection::Leave void   ) 
 

Uvolneni kriticke sekce.

Metoda smi byt volana pouze po zavolani metody Enter (po vstupu do sekce). Zaroven odblokuje ostatni vlakna ktera pristupuji k teto kriticke sekci.

Definition at line 54 of file CriticalSection.cpp.

References m_section.

Referenced by NSPipeline::TFrameReal::AddLock(), NSSimpleUnit::TUnitRetType_rectangles_implemented::AddRefs(), NSSimpleUnit::TUnitRetType_integer_implemented::AddRefs(), NSSimpleUnit::TUnitRetType_images_rectangles_implemented::AddRefs(), NSSimpleUnit::TUnitRetType_images_rgb_implemented::AddRefs(), NSSimpleUnit::TImageRGBResult::AddRefs(), NSPipeline::TFrameReal::AddRefs(), NSPipeline::TDispatcher::Free(), NSPipeline::TDispatcher::GetFrame(), NSPipeline::TImageSetManager::GetImageSet(), NSPipeline::TDispatcher::GetLockedFrame(), NSSimpleUnit::TSimpleUnitProcessingInterface_rectangles::GetObject(), NSSimpleUnit::TSimpleUnitProcessingInterface_integer::GetObject(), NSSimpleUnit::TSimpleUnitProcessingInterface_images_rectangles::GetObject(), NSSimpleUnit::TSimpleUnitProcessingInterface_images_rgb::GetObject(), NSSimpleUnit::TImageRGBResultManager::InsertObject(), NSPipeline::TSimpleUnit::Loop(), NSSimpleUnit::TUnitRetType_rectangles_implemented::Release(), NSSimpleUnit::TUnitRetType_integer_implemented::Release(), NSSimpleUnit::TUnitRetType_images_rectangles_implemented::Release(), NSSimpleUnit::TUnitRetType_images_rgb_implemented::Release(), NSSimpleUnit::TImageRGBResult::Release(), NSPipeline::TFrameReal::Release(), NSPipeline::TImageSetManager::ReleaseImageSet(), NSPipeline::TFrameReal::ReleaseLock(), NSSimpleUnit::TSimpleUnitProcessingInterface_rectangles::ReturnObject(), NSSimpleUnit::TSimpleUnitProcessingInterface_integer::ReturnObject(), NSSimpleUnit::TSimpleUnitProcessingInterface_images_rectangles::ReturnObject(), NSSimpleUnit::TSimpleUnitProcessingInterface_images_rgb::ReturnObject(), NSPipeline::TDispatcher::SetFrame(), NSPipeline::TSimpleUnit::Stop(), and NSPipeline::TDispatcher::~TDispatcher().

void NSPipeline::TCriticalSection::operator= const TCriticalSection orig  )  [private]
 

falesny operator prirazeni


Member Data Documentation

CRITICAL_SECTION NSPipeline::TCriticalSection::m_section [private]
 

systemove zavisla kriticka sekce z Windows

Definition at line 51 of file CriticalSection.h.

Referenced by Enter(), Leave(), TCriticalSection(), and ~TCriticalSection().


The documentation for this class was generated from the following files:
Generated on Sat Nov 17 16:25:21 2007 for Image Processing Pipeline by  doxygen 1.4.6-NO