FixedResource

Description

Inherits FlexsimObject

The FixedResource class is primarily responsible for handling flowitems. It deals with how and when flowitems are received and released. It also deals with how task executers access the flowitems.

Direct Child Classes

The table below is not a complete list of child classes of the FixedResource class. However, it does provide some idea for the kinds of classes that the FixedResource can be used to create.

ClassDescription
SourceGenerates and releases flowitems by expression or by schedule. Simulates item arrival.
QueueReceives and releases flowitems. Simulates queuing delay.
ProcessorReceives and releases flowitems. Simulates delay due to processing time.
SinkReceives flowitems and removes them from the model.
MultiProcessorReceives and releases flowitems. Simulates delay due to batched processing.
ConveyorReceives and releases flowitems. Simulates conveyance delay.
RackReceives and releases flowitems. Simulates rack logistics and delay.
BasicFRProvides no initial logic; a customizable FixedResource.

Virtual Methods

This table only shows the virtual methods specific to the FixedResource class. All other virtual methods are inherited from FlexsimObject.

MethodDescription
double onTransportInNotify(treenode item, int port) Executed when a transport request has been made; notifies the downstream object (this object) that a product is coming.
double onTransportOutNotify(treenode item, int port) Executed when a transport request has been made; notifies the upstream object (this object) that a product is leaving.
double onTransportInComplete(treenode item, int portnumber, treenode transporter = 0) Executed just before the product is received by this object via the transport.
double onTransportOutComplete(treenode item, int portnumber, treenode transporter = 0) Executed just before the product is picked up by the transport.

Utility Methods

Utility methods are methods that a class that extends FixedResource will need to call, rather than overwrite.

MethodDescription
double receiveItem(void) Executes the logic that allows model objects to receive items.
double releaseItem(void) Executes the logic that allows model objects to release items.
int setItemVar(treenode flowitem, int varnum, double val) Sets the variable (numbered 1-3) on the flowitem to the given value.
int getItemVar(treenode flowitem, int varnum) Gets value of the variable (numbered 1-3) on the flowitem.