GenericQueue.SetPointer (METH) ¶ METHOD FINAL SetPointer : BOOL Method to cyclically set the pointer for the queue-storage. The pointer needs to be udpated every cycle because it could change due to an online-change. task-safety: may be called from both tasks, must be called from both tasks in order to ensure online-change-safety InOut: Scope Name Type Comment Input pD POINTER TO BYTE Pointer to data array, must be properly aligned for the element to be stored Return SetPointer BOOL Output bPointerChanged BOOL Whether the new pointer was different from the current one (only set if the current pointer was not null)
GenericQueue.SpaceLeft (METH) ¶ METHOD FINAL SpaceLeft : UDINT Returns how many elements may be appended to the queue. task-safety: may be called from both tasks InOut: Scope Name Type Return SpaceLeft UDINT
GenericQueue_SingleTask (FB) ¶ FUNCTION_BLOCK FINAL GenericQueue_SingleTask A generic fifo queue of fixed size elements. The queue must be written and read from the same task. The capacity must be a power of two. Methods: Append AppendP Capacity CopyRange EndOfData Full GetFromEnd GetFromStart GetIdxFromPtr GetReadPos GetWritePos Init IsEmpty NumElems RemoveAll RemoveFirst RemoveFirstN RemoveLast RemoveLastN Reset SetEndOfData SetPointer SetReadPos SetWritePos SpaceLeft Structure: Append (Method) AppendP (Method) Capacity (Method) CopyRange (Method) EndOfData (Method) Full (Method) GetFromEnd (Method) GetFromStart (Method) GetIdxFromPtr (Method) GetReadPos (Method) GetWritePos (Method) Init (Method) IsEmpty (Method) NumElems (Method) RemoveAll (Method) RemoveFirst (Method) RemoveFirstN (Method) RemoveLast (Method) RemoveLastN (Method) Reset (Method) SetEndOfData (Method) SetPointer (Method) SetReadPos (Method) SetWritePos (Method) SpaceLeft (Method)
GenericQueue_SingleTask.Append (METH) ¶ METHOD FINAL Append : BOOL Tries to append a new element to the queue. Returns TRUE if the queue was not full yet, FALSE otherwise. InOut: Scope Name Type Input pNewElem POINTER TO BYTE Return Append BOOL
GenericQueue_SingleTask.AppendP (METH) ¶ METHOD FINAL AppendP : POINTER TO BYTE Tries to append a new element to the queue. Returns a pointer to the new element. InOut: Scope Name Type Return AppendP POINTER TO BYTE
GenericQueue_SingleTask.Capacity (METH) ¶ METHOD FINAL Capacity : UDINT The maximum number of elements that can be stored in the queue InOut: Scope Name Type Return Capacity UDINT
GenericQueue_SingleTask.CopyRange (METH) ¶ METHOD FINAL CopyRange : BOOL Copies nElems elements from queue q to this queue. Assumes that both queues contain elements of the same size. Fails if there is not enough space left. InOut: Scope Name Type Inout Const q GenericQueue_SingleTask Input iFirst UDINT nElems UDINT Return CopyRange BOOL
GenericQueue_SingleTask.EndOfData (METH) ¶ METHOD FINAL EndOfData : BOOL Returns whether end of data has been reached for the queue. InOut: Scope Name Type Return EndOfData BOOL
GenericQueue_SingleTask.SetPointer (METH) ¶ METHOD FINAL SetPointer : BOOL Method to cyclically set the pointer for the queue-storage. The pointer needs to be udpated every cycle because it could change due to an online-change. InOut: Scope Name Type Comment Input pD POINTER TO BYTE Pointer to data array, must be properly aligned for the element to be stored Return SetPointer BOOL Output bPointerChanged BOOL Whether the new pointer was different from the current one (only set if the current pointer was not null)
GenericQueue_SingleTask.SetReadPos (METH) ¶ METHOD FINAL SetReadPos : BOOL InOut: Scope Name Type Input nPos UDINT Return SetReadPos BOOL