Sage Modeling and Simulation Library

MaterialService Members

The MaterialService type exposes the following members.

Constructors


  Name Description
Public method MaterialService()()()()
Default constructor for serialization only.
Public method MaterialService(IModel, String, Guid, Int32, Double, MaterialCatalog, Double)
Creates a MaterialService. A MaterialService models a system that provides some service or material, but may only be able to service a limited number of clients, and perhaps only at a limited supply rate.

Methods


  Name Description
Public method AddCompartment(MaterialResourceItem)
Adds a compartment for the specified material type. The MaterialResourceItem will be the provider and/or receiver of material of the specified type.
Public method AddCompartment(IModel, Guid, Double, Double, Double, Guid)
Adds a compartment for the specified material type. Creates a MaterialResourceItem which will be the provider and/or receiver of material of the specified type.
Public method AddCompartment(IModel, Guid, ICollection, Double, Double, Double, Guid)
Adds a compartment for the specified material type and specifications. Creates a MaterialResourceItem which will be the provider and/or receiver of material of the specified type and specifications.
Public method AddCompartment(IModel, Guid, Guid, Double, Double, Double, Guid)
Adds a compartment for the specified material type, specifications, initial quantity, temperature & capacity. Creates a MaterialResourceItem which will be the provider and/or receiver of material of the specified type and specifications.
Public method AddPort(IPort)
Adds a Port to this MaterialService's PortSet.
Public method AddPort(String)
Adds a port to this object's port set in the specified role or channel.
Public method AddPort(String, Guid)
Adds a port to this object's port set in the specified role or channel.
Public method ClearPorts
Unregisters all ports from this PortSet.
Public method DestroyConnection
Destroys the connection between this MaterialService and the specified port.
Public method Equals(System.Object)
Determines whether the specified object is equal to the current object.
(Inherited from Object.)
Public method EstablishConnection
Creates an IConnection between this MaterialService and the specifed port.
Public method Execute
Performs the actual transfers in or out of this MaterialService. Setup must have been completed beforehand, and teardown must follow completion of this call.
Protected method Finalize
Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object.)
Protected method GetAggregateKey
Public method GetCompartment(Guid, Guid)
Gets the MaterialResourceItem that is acting as the compartment for the specified material type. Creates one anew if there was not one, and this MaterialService has its AutocreateMaterialCompartments parameter set to true. Will return null if there is no compartment with the given material type.
Public method GetCompartment(MaterialType)
Gets the MaterialResourceItem that is acting as the compartment for the specified material type. Creates one anew if there was not one, and this MaterialService has its AutocreateMaterialCompartments parameter set to true. Will return null if there is no compartment with the given material type.
Public method GetCompartment(MaterialType, ICollection)
Gets the MaterialResourceItem that is acting as the compartment for the specified material type. Creates one anew if there was not one, and this MaterialService has its AutocreateMaterialCompartments parameter set to true. Will return null if there is no compartment with the given material type.
Public method GetHashCode
Serves as the default hash function.
(Inherited from Object.)
Public method GetTransferTable
Public method GetType
Gets the Type of the current instance.
(Inherited from Object.)
Public method InitializeIdentity
Initializes the fields that feed the properties of this IModelObject identity.
Public method IsSubResource
Returns true if the rsc is any of the child resources (ServiceTokenDispenser, CapacityDispenser or MaterialResourceItems) of this MaterialService.
Protected method MemberwiseClone
Creates a shallow copy of the current Object.
(Inherited from Object.)
Public method NewMaterialTransfer
Public method RemovePort
Unregisters a port from this MaterialService's PortSet.
Public method Setup(IMaterial, Double, IPort)
Performs setup for utilization of this MaterialService. This involves acquiring a service token (if we are limited to a given number of available tokens), reserving the material that will be transferred (if we are going to physically transfer materials), and reserving the delivery capacity (if we are limiting overall available capacity).
Public method Setup(IMaterial, Double, IPort, Boolean)
Performs setup for utilization of this MaterialService. This involves acquiring a service token (if we are limited to a given number of available tokens), reserving the material that will be transferred (if we are going to physically transfer materials), and reserving the delivery capacity (if we are limiting overall available capacity). A current limitation of this class is that its use must be entirely contained within the scope of one SOMTask.
Public method Teardown(Object)
Releases all ports, capacity and connector tokens, and removes the MaterialTransfer object from the transferTable. This call must correspond 1-to-1 with any setup and execute calls, and must follow the Execute(...) call.
Public method Teardown(Object, Boolean)
Releases all ports, capacity and connector tokens, and removes the MaterialTransfer object from the transferTable. This call must correspond 1-to-1 with any setup and execute calls, and must follow the Execute(...) call.
Public method ToString
Returns a string that represents the current object.
(Inherited from Object.)

Properties


  Name Description
Public property AutocreateMaterialCompartments
If true, this MaterialService will automatically create material compartments and provide them with an inexhaustible supply of material, if a material that was hitherto unknown is requested.
Public property Compartments
Returns a collection of MaterialResourceItem objects that represent the material compartments.
Protected property DeliveryCapacity
Public property Description
A description of this MaterialService.
Public property Guid
The Guid of this MaterialService.
Public property MaxDeliveryRate
The maximum kilograms per minute that this MaterialService can provide.
Public property Model
The Model to which this MaterialService belongs.
Public property Name
The name of this MaterialService.
Public property NumberOfServiceTokens
The number of clients this MaterialService can service at the same time.
Public property Ports
The PortSet that contains all ports currently registered with this MaterialService. The MaterialService will temporarily create and register ports with itself as needed to service charge/discharge requests.
Protected property ServiceTokens
Public property SupportedChannelInfo
Gets the names of supported port channels.
Public property Tag
Tag object is for holding user-specified references.