Stream ¶ IOutStream (Interface) Write (Method) MemRange_IsInside (Function) OutBufferedStream (FunctionBlock) Flush (Method) Init (Method) Write (Method) OutFileStream (FunctionBlock) Close (Method) FB_Exit (Method) IsOpen (Method) Open (Method) Write (Method) OutNullStream (FunctionBlock) Write (Method) OutRealTimeStream (FunctionBlock) CommitToStream (Method) Init (Method) Write (Method) OutStringStream (FunctionBlock) GetString (Method) Init (Method) Write (Method) Stream_WriteNewLine (Function) Stream_WriteString (Function)
IOutStream (ITF) ¶ INTERFACE IOutStream Represents a stream to which arbitrary data (array of bytes) can be written. Methods: Write Structure: Write (Method)
IOutStream.Write (METH) ¶ METHOD Write : BOOL Writes a given array of bytes to the stream. Returns whether the write was successful. InOut: Scope Name Type Comment Return Write BOOL Input pData POINTER TO BYTE Pointer to the data to write. nLen UDINT The number of bytes to write.
DynLimitsA_LimitRatio (FUN) ¶ FUNCTION DynLimitsA_LimitRatio : BOOL Limits the ratio between the maximum velocity and maximum acceleration, as well as between the maximum acceleration and maximum jerk. The path planner of the CP kernel assumes that the path velocity and acceleration don’t change significantly during a single planning interval. This assumption is violated if the planning interval is very long, or if the allowed jerk and acceleration are very high compared to the maximum velocity. (E.g., the maximum velocity could be reached in a single planning interval from standstill.) This function limits the maximum acceleration, such that it takes at least sqrt(2) planning intervals to reach the maximum velocity. And it limits the maximum jerk such that it takes at least sqrt(2) planning intervals to reach the maxmimum acceleration. Together, this means that the maximum velocity that can be reached from standstill is 1/4 * vmax. See SM-1428 InOut: Scope Name Type Comment Return DynLimitsA_LimitRatio BOOL Inout dla DynLimitsA Input dTs LREAL The planning interval, must be positive
Queue.Clear (METH) ¶ METHOD PUBLIC FINAL Clear Empties the whole queue. task-safety: call from consumer task only
ComputeBisector (FUN) ¶ FUNCTION ComputeBisector : BOOL Computes the perpendicular bisector of two 2D-points. Returns TRUE on success, FALSE if p1 and p2 are too close or not 2D. InOut: Scope Name Type Return ComputeBisector BOOL Inout l Line Inout Const p1 SM3M.SMC_VECTOR3D p2 SM3M.SMC_VECTOR3D
Queue.Dequeue (METH) ¶ METHOD FINAL Dequeue : UDINT Returns the oldest element from the queue, if one exists. The number of bytes copied is returned or 0 if the queue is empty. 0 is also returned on error, e.g. if uiElemDataSizeBytes is too small. task-safety: call from consumer task only InOut: Scope Name Type Comment Return Dequeue UDINT Input pData POINTER TO BYTE A pointer to the underlying data array. pElemData POINTER TO BYTE A pointer where to copy the element, must not be 0 udiElemDataSizeBytes UDINT The size of the buffer pointed to by pElemData
Queue.Enqueue (METH) ¶ METHOD FINAL Enqueue : BOOL Stores a new element on the queue. Returns whether the new element has fit into the queue. task-safety: call from producer task only InOut: Scope Name Type Comment Return Enqueue BOOL Input pData POINTER TO BYTE A pointer to the underlying data array. pElemData POINTER TO BYTE A pointer to the new element, must not be 0 udiElemSizeBytes UDINT The size of the element in bytes, must not be 0
Queue.Initialize (METH) ¶ METHOD PUBLIC Initialize Initializes a FIFO queue. When called on an already initialized queue, it is emptied. task-safety: not task-safe. The application has to make sure that no other task than the initializing task calls the queue’s methods during initialization. InOut: Scope Name Type Comment Input udiCapacityBytes UDINT The capacity of the data array in elements. Must be at least 6.
ComputeTrajectoryLimits (FUN) ¶ FUNCTION ComputeTrajectoryLimits : ETrajectoryLimit InOut: Scope Name Type Inout Const path PathQueue wCur DynState Input segment SegmentId Return ComputeTrajectoryLimits ETrajectoryLimit Output pPeCur POINTER TO PathElem pPeEnd POINTER TO PathElem pPePause POINTER TO PathElem dSEndSegment LREAL dSEndEffective LREAL k_left UDINT k_right UDINT dS_start_left LREAL dS_start_right LREAL