Property SLBasicGenericComplex.TSLBasicGenericComplex.SynchronizeType

From Mitov Wiki Doc
Jump to: navigation, search

This is a Beta Read Only version of this page. Please review and send recommendations to We will enable the editing as soon as we are happy with the overall Wiki site.

Class: TSLBasicGenericComplex




property SynchronizeType : TSLSynchronizeType read FSynchronizeType write SetSynchronizeType default stNone;

C++ Builder:

__property TSLSynchronizeType SynchronizeType = { read=FSynchronizeType, write=SetSynchronizeType, default=stNone };


Type of thread buffer synchronization.


Use this property to specify the type of thread buffer synchronization for the generic filters.

stNone - does not synchronize. It will execute the callback event directly from the SignalLab thread. You should not access any resources used by other threads or any GUI without critical sections or other means of protection.

stQueue - does synchronize and queue all the buffers with the main thread. It is safe to access any main thread resources safely, including any GUI, however it will use a lot of memory. Indeed once when it queue couple of hundred buffers, it will stop dropping buffers in order to prevent running out of memory.

stSingleBuffer - queues only the latest buffer. Any other buffer will be dropped. This is used when you want to display any GUI information related with the buffer, and don't want to do that for each buffer, but just for the most recent one.

Delphi example:

SLGenericComplex1.SynchronizeType := stSingleBuffer;

C++ Builder example:

SLGenericComplex1->SynchronizeType = stSingleBuffer;

Visual C++(MFC) example:

SLGenericComplex1.SynchronizeType = stSingleBuffer;

Visual C++/CLI example:

genericComplex1->SynchronizeType = Mitov::SignalLab::SynchronizeType::SingleBuffer;

C# example:

genericComplex1.SynchronizeType = Mitov.SignalLab.SynchronizeType.SingleBuffer;

VB example:

GenericComplex1.SynchronizeType = Mitov.SignalLab.SynchronizeType.SingleBuffer

Personal tools