Sage Modeling and Simulation Library

Highpoint.Sage.Utility Namespace

Classes


  Class Description
Public class BasicIndexingService
Public class CompoundComparer
Provided with an array of Comparers, this comparer produces a comarison value that allows a list to be sorted on first one key (defined by the first element in the array), then by another key (defined by the second element in the array), and so on. There is no limit to the number of comparers that may be provided.
Public class Crypto
A class of static Cryptography helper functions.
Public class DateTimeOperations
A utility class that contains some useful operations pertaining to DateTime objects.
Public class DictionaryOperations
A class of helper Operations focused on Dictionaries. This is an old class, kept for backward compatibility.
Public class DictionaryOperations..::..DictionaryEntryByKeySorter
Comparer that can be used to sort Dictionary Entries by their keys' order using the System.Collections.Comparer.Default comparer.
Public class DirectoryOperations
A Utility class for convenience operations pertaining to directories.
Public class DoubleTracker
An object of this class tracks the values that a double takes on, recording its initial, minimum, maximum, and final values. It relies on the user of the object to implement a watcher on the double of interest, that registers a new double value with this object whenever the double changes.
Public class EventedList<(Of <(<'T>)>)>
The EventedList class provides all of the standard List capabilities as well as the ability to emit events when the list changes its contents for whatever reason.
Public class EventTimeHistorian
An EventTimeHistorian keeps track of the times at which the last 'N' events that were submitted to it occurred, and provides the average inter-event duration for those events. Historians with specific event-type-related data needs (other than simply the time of occurrence) can inherit from this class.
Public class Exchange
An exchange is a place where objects can post, read and or take tokens, either with a blocking or non-blocking call.
Public class ExchangeManager
An ExchangeManager manages a set of ITupleSpace instances (Exchanges) that are used for coordination and synchronization between otherwise uncoupled elements of a simulation.
Public class ExecutionContext
An ExecutionContext holds all of the information necessary to track one execution through a process structure. The process structure governs structure, and the ExecutionContext governs process-instance-specific data.
Public class Extensions
Public class FieldDescriptionAttribute
Public class GuidGenerator
Generates a pseudorandom stream of Guids. Make sure that the maskGuid and seedGuids are 'sufficiently chaotic'. This generator is best used for testing. It is modeled after a linear feedback shift register. http://en.wikipedia.org/wiki/LFSR
Public class GuidOps
Public class GuidOps..::..AsStringGuidComparer
A comparer used for sorting on Guids. Note - Guids are sorted by visual order, which is not the same as binary order for a number of reasons. If you want Guids in "Binary" sorted order, use the GuidComparer.
Public class GuidOps..::..GuidComparer
A comparer used for sorting on Guids. Note - Guids are sorted by binary order, which is not the same as display order for a number of reasons. If you want Guids in "Visually" sorted order, use the AsStringGuidComparer.
Public class GuidOps..::..HasIdentityByGuidComparer<(Of <(<'T>)>)>
A comparer use for sorting implementers of IHasIdentity on their Guids.
Public class HashtableOfLists
Manages a hashtable of lists. This is useful for maintaining collections of keyed entries where the keys are duplicated across multiple entries.
Public class HashtableOfLists<(Of <(<'TKey, TValue>)>)>
Manages a hashtable of lists of values. The keys are of type TKey, and the lists contain elements of type TValue. This is useful for maintaining collections of keyed entries where the keys are duplicated across multiple entries.
Public class Heap
Public class Heap<(Of <(<'T>)>)>
A binary heap can be efficiently implemented as an array, where a node at index i has children at indexes 2i and 2i+1 and a parent at index i/2, with one-based indexing.
Public class IndexingFailedException
Class IndexingFailedException - thrown when indexing has failed.
Public class InitFailureException
Marker class for use as an exception fired on initialization failure.
Public class LabelManager
A manager to which a class that implements a Label can delegate.
Public class LocalEventQueue
This class represents a manager for events that are all generated and consumed within a local object (such as a tool's inner workings). It schedules only the soonest event, and ensures that when that soonest event is serviced, the next 'soonest' event will then be scheduled.
It currently requires that each event fed into it be the furthest-out event. In other words, it is a FIFO queue and assumes that its user will ensure temporal sequence in the events fed into it.
If you do not expect to be able to follow the temporal restrictions, use the LocalEventHeap class instead.
Public class MissingParameterException
MissingParameterException is thrown when a required parameter is missing. Typically used in a late bound, read-from-name/value pair collection scenario.
Public class MultiArrayListEnumerable
Public class MultiArrayListEnumerator
Summary description for MultiArrayListEnumerator.
Public class NameComparer<(Of <(<'T>)>)>
Public class SerialNumberService
Service that provides serial numbers.
Public class StringOperations
Summary description for StringOperations.
Public class StringOperations..::..RandomStringGenerator
Public class TimeSpanOperations
A utility class that contains some useful operations pertaining to TimeSpan objects.
Public class TreeNode<(Of <(<'T>)>)>
Want to be able to use TreeNode as either a base class, a container or a wrapper.
Public class TreeNodeCollection<(Of <(<'T>)>)>
Public class TreeNodeHelper
A class that manages parent &child relationships in a tree. Objects that participate in the tree can delegate to this class to manage the relationships. This class provides an object with its parent, its child list, events on the addition & removal of others and itself from the tree, enables sorting & sequencing of the members of the tree, and will, if set up as an auto-indexing TreeNodeHelper, will perform indexing of the node's children based on their guids, if they implement IHasIdentity.
Public class UniqueNameGenerator
Class UniqueNameGenerator creates unique names. When asked for GetNextName("Dog") the first time, it produces "Dog:0". When asked for GetNextName("Dog") the second time, it produces "Dog:1". When asked for GetNextName("Cat") the first time, it produces "Cat:0". And so on. It is intended when automatically creating, say, 100 objects of type Restaurant, one would call myUniqueNameGenerator.GetNextName(typeof(Restaurant).Name, 3, false) to create Restaurant:001, Restaurant:002, Restaurant:003, etc.
Public class UnitTestDetector
Public class WeakHashtable
A hashtable whose entries are weak - that is, if the underlying object is discarded from the runtime, so is the entry in the hashtable.
Public class WeakList
A list of objects that are held behind weak references. The list is not collapsed until explicitly told to do so.
Public class XmlTransform
Class XmlTransform converts xml to non-xml and vice versa by changing angle-brackets to ampersand-l-t's, etc, and vice versa.

Structures


  Structure Description
Public structure EventedList<(Of <(<'T>)>)>..::..Enumerator
Public structure NameValuePair
Struct NameValuePair contains a string name, and an object value.
Public structure NameValuePair<(Of <(<'T>)>)>
Struct NameValuePair contains a string name, and a value of type T.
Public structure OverrideBool
A struct that shadows a boolean in, for example, a temperature controller, and indicates whether that boolean is to is to be read as its default state, or as an overridden value.
Public structure OverrideDouble
A struct that shadows a double in, for example, a temperature controller, and indicates whether that double is to be read as its default state, or as an overridden value.

Interfaces


  Interface Description
Public interface IDoubleTracker
An object implementing this interface tracks the values that a double takes on, registering its initial, minimum, maximum, and final values. This interface is just the public face of the bookkeeping. See class DoubleTracker.
Public interface IHasLabel
Implemented by an object that is capable of managing context-specific labels.
Public interface IHasSerialNumber
Implemented by an object that has a serial number.
Public interface IHasSortKeys
Implemeted by an object that is sortable, and has SortKeys
Public interface IIndexingService
Implemented by a class that is capable of allocating & assigning index slots in a population of ISupportsIndexes objects.
Public interface ISortKey
A Sort Key is an object that can be used to sort a collection of objects, and can be presented to a user for selection.
Public interface ISupportsIndexes
This interface is implemented by an object that is required to support index numbers. That is, another (perhaps manager) object will want to refer to objects of this type by index numbers that it, itself, assigns.
Public interface ITreeNode
ITreeNode is implemented by something that is a node in a tree - it has zero or one parent and zero or more children.
Public interface ITreeNode<(Of <(<'T>)>)>
The ITreeNode interface is implemented by any object that participates in a tree data structure. An object may derive from TreeNode<T> or implement ITreeNode<T>.
Public interface ITreeNodeEventController<(Of <(<'T>)>)>
Public interface ITreeNodeProxy
Implemented by an object that will implement ITreeNode, but act as a proxy for another object that actually owns the parent/child relationships.
Public interface ITuple
Interface ITuple is a key/data pair. It is used only in the TupleSpace implementation
Public interface ITupleSpace
Interface ITupleSpace describes a simple tupleSpace, perhaps better thought of as a whiteboard or exchange. Things are posted (added), read, and removed according to a provided key value.

Delegates


  Delegate Description
Public delegate DictionaryChange
Public delegate EventedList<(Of <(<'T>)>)>..::..CollectionEvent
Signature of events that pertain to an EventedList and a collection of items related to that list.
Public delegate EventedList<(Of <(<'T>)>)>..::..ItemEvent
Signature of events that pertain to an EventedList and one of its items.
Public delegate EventedList<(Of <(<'T>)>)>..::..ItemsEvent
Signature of events that pertain to an EventedList an old item and a new item - preesumably items added to, or removed from, that list.
Public delegate EventedList<(Of <(<'T>)>)>..::..ListEvent
Signature of events that pertain only to an EventedList.
Public delegate EventedList<(Of <(<'T>)>)>..::..PredicateEvent
Signature of events that pertain only to an EventedList and a predicate to be applied to items in that list.
Public delegate EventedList<(Of <(<'T>)>)>..::..RangeEvent
Signature of events that pertain to an EventedList and a numeric range of entries in that list.
Public delegate TreeChangeEvent<(Of <(<'T>)>)>
An event that pertains to some change in the tree underneath a given node.
Public delegate TreeNodeEvent<(Of <(<'T>)>)>
An event that pertains to some change in relationship between two nodes.
Public delegate TreeNodeInteractionEvent
Delegate TreeNodeInteractionEvent is used for any event on subject treenode, concerning obj treenode.
Public delegate TupleEvent

Enumerations


  Enumeration Description
Public enumeration Heap..::..HEAP_RULE
Public enumeration Heap<(Of <(<'T>)>)>..::..HEAP_RULE
Enum HEAP_RULE - MinValue builds a heap with the
Public enumeration StringOperations..::..Justification
Public enumeration SubtreeChangeType
The types of subtree changes reported by the Tree Support classes.
Public enumeration TreeStructureCheckType
Public enumeration TsOpType
Describes a participant's role in a handoff through a TupleSpace.