Sign in Join
FPDoc Onlineexperiment

TCustomLazComponentQueue class

In unit LResources

A queue to stream components, used for multi-threading or network.

Declaration

pascal
TCustomLazComponentQueue = class(TComponent)

Inheritance

  1. TCustomLazComponentQueue
  2. TComponent
  3. TPersistent
  4. TObject

Descends from it: TLazComponentQueue

Description

ConvertComponentAsString converts a component to binary format with leading size information (using WriteLRSInt64MB).

When streaming components over network, they will arrive in chunks. TCustomLazComponentQueue tells you, if a whole component has arrived.

Methods

ReadComponentSizeprotectedReads the component size and the length for the size value.
CreatepublicConstructor for the class instance.
DestroypublicDestructor for the class instance.
ClearpublicClears all values in the internal queue storage.
WritepublicPushes values in Buffer onto the internal storage queue.
CopyFrompublicCopies the specified number of bytes from the stream and pushes the values onto the queue.
HasComponentpublicDetermines whether the queue contains the entire contents of the component at the top of the queue.
ReadComponentpublicReads a component from the queue and sets it owner.
ConvertComponentAsStringpublicConverts a component to binary format with a leading size information (using WriteLRSInt64MB).

Events

OnFindComponentClasspublicEvent handler signalled to get the class type for the specified class name in a TReader instance.

Fields

FQueueprotectedMember with the dynamic storage for the queue..

Inherited

From TComponent (74)

_AddRef _Release BeforeDestruction CanObserve ChangeName ComObject ComponentCount ComponentIndex Components ComponentState ComponentStyle DefineProperties DesignInfo DestroyComponents Destroying ExecuteAction FindComponent FreeNotification FreeOnRelease GetChildOwner GetChildParent GetChildren GetDeltaStreams GetEnumerator GetIDsOfNames GetNamePath GetObservers GetOwner GetParentComponent GetTypeInfo GetTypeInfoCount HasParent iicrGetComponent InsertComponent Invoke IsImplementorOf Loaded Loading Name Notification ObserverAdded Observers OnGetDeltaStreams Owner PaletteCreated QueryInterface ReadDeltaState ReadDeltaStream ReadState ReferenceInterface RemoveComponent RemoveFreeNotification RemoveFreeNotifications SafeCallException SetAncestor SetChildOrder SetDesigning SetDesignInstance SetInline SetName SetParentComponent SetSubComponent Tag ToString TToStringNameMode UpdateAction Updated UpdateRegistry Updating ValidateContainer ValidateInsert ValidateRename VCLComObject WriteState

From TPersistent (5)

Assign AssignTo FPOAttachObserver FPODetachObserver FPONotifyObservers

From TObject (37)

AfterConstruction CheckDisposed ClassInfo ClassName ClassNameIs ClassParent ClassType CleanupInstance DefaultHandler DefaultHandlerStr Dispatch DispatchStr Disposed DisposeOf Equals FieldAddress Free FreeInstance GetDisposed GetHashCode GetInterface GetInterfaceByStr GetInterfaceEntry GetInterfaceEntryByStr GetInterfaceTable GetInterfaceWeak GetLastCastErrorInfo InheritsFrom InitInstance InstanceSize MethodAddress MethodName newinstance QualifiedClassName StringMessageTable SystemHasExtendedRTTI UnitName

An experiment, built from development snapshots. Not the official Free Pascal or Lazarus documentation.