• MARS Website
  • Core API
  • SmartOpenHamburg API
  • Model Components API
  • Common API
Show / Hide Table of Contents
  • Mars.Core
    • DependencyRegistrationCore
  • Mars.Core.Data
    • AbstractConfigLoader
    • AbstractEntityManager
    • AgentManagerImpl
    • DomainDataMediatorImpl
    • EntityManagerImpl
    • IAgentManager
    • IEntityManager
    • IEntityMapping
    • IGeneratedEntityLogger
    • IGeneratedLayerLogger
    • IGeneratedLogger<TModel>
    • IGeneratedTypeLogger
    • IModelCompiler
    • IOutputLogger
    • IPlatformSelector
    • ISchemaMigrationProvider
    • ISerializerManager
    • PlatformSelectorImpl
  • Mars.Core.Data.Compiler
    • AbstractEntityMapper
    • AbstractJitMapper
    • AbstractLayerMapper
    • AbstractMapper<TModel>
    • AbstractTypeMapper
    • RoslynCompilerUtils
  • Mars.Core.Data.Entities
    • CircleFilter
    • Condition
    • ConjunctiveWhere
    • DataFrame
    • DisjunctiveWhere
    • EqualityCondition
    • IntersectionFilter
    • ISelection
    • NearestFilter
    • Query
    • WindowFilter
    • WithinFilter
  • Mars.Core.Data.Exceptions
    • AgentInitializationException
  • Mars.Core.Data.Mapping
    • DefaultSourceProvider
    • ReflectiveMapping
  • Mars.Core.Data.Wrapper
    • AbstractOperationWrapper
    • AbstractWrapper
    • AbstractWrapper<TOptions>
    • GlobalRestrictions
    • ICircleQueryOperation
    • IIntersectionOperation
    • ILookupOperation
    • INearestOperation
    • IOperation
    • IPlatform
    • IQueryOperation
    • ISnapshot
    • IWindowQueryOperation
    • IWithinOperation
    • IWrapper
    • KnnGraphWrapper
    • PostGisWrapper
  • Mars.Core.Data.Wrapper.Document
    • IMongoConnection
    • IMongoWrapper
    • MongoDbIteratorHelper
    • MongoDbWrapper
  • Mars.Core.Data.Wrapper.File
    • AbstractFileWrapper<TOptions>
    • AscWrapper
    • GeoJsonWrapper
  • Mars.Core.Data.Wrapper.Memory
    • DataTableWrapper
    • GeoHashTrieWrapper
    • KdTreeWrapper
    • TripPosition
    • TripPositionCoordinateConverter
    • TripsCollection
    • TripsLineConverter
    • TripsTrajectoryWrapper
  • Mars.Core.Data.Wrapper.Relational
    • AbstractRelationalConnection
    • PostgresSqlDbConnection
    • PostgresSqlWrapper
    • RelationalMapperException
    • RelationalSqlWrapper<TOptions>
    • SqliteDbConnection
    • SqliteWrapper
  • Mars.Core.Data.Wrapper.Stream
    • MqttWrapper
    • SimulationTypeInfo
  • Mars.Core.Executor
    • IRuntimeModel
    • ISimulationProgress
    • IStepExecutor
  • Mars.Core.Executor.Entities
    • Parametrization
    • StepParam
  • Mars.Core.Executor.Implementation
    • RuntimeModelImpl
    • SimulationProgressImpl
    • StepExecutionUseCase
  • Mars.Core.Model
    • IConfigLoader
    • IModelContainer
    • IModelResolver
  • Mars.Core.Model.Entities
    • LayerInstanceContainer
  • Mars.Core.Model.Exceptions
    • InvalidMappingException
    • MissingConstructorException
    • ModelResolutionException
    • ValidationException
  • Mars.Core.Model.Implementation
    • DependencyBuilder
    • MappingHelper
    • ModelContainer
    • ValidationIssueLevel
    • ValidationResult
    • Validator
  • Mars.Core.Simulation
    • ISimulation
    • ISimulationControl
  • Mars.Core.Simulation.Entities
    • SimulationRestartArgs
    • SimulationWorkflowState

Interface IRuntimeModel

The core runtime model responsible to manage all instances of entities It can be used to register new objects at the system, so it will be triggered and results are persisted.
Inherited Members
System.IDisposable.Dispose()
Namespace: Mars.Core.Executor
Assembly: Mars.Core.dll
Syntax
public interface IRuntimeModel : IDisposable

Properties

| Improve this Doc View Source

AllActiveLayers

The set of active layers that have a pre-tick and post-tick method.
Declaration
ISet<ISteppedActiveLayer> AllActiveLayers { get; }
Property Value
Type Description
System.Collections.Generic.ISet<ISteppedActiveLayer>
| Improve this Doc View Source

Context

Gets the simulation context with all time information's about the simulation
Declaration
ISimulationContext Context { get; set; }
Property Value
Type Description
ISimulationContext
| Improve this Doc View Source

ExecutionAgentTypeGroups

The set of all agent instances in this execution environment grouped by the agent type description
Declaration
IDictionary<AgentType, IDictionary<Guid, IAgent>> ExecutionAgentTypeGroups { get; }
Property Value
Type Description
System.Collections.Generic.IDictionary<AgentType, System.Collections.Generic.IDictionary<System.Guid, IAgent>>
| Improve this Doc View Source

ExecutionGroups

The set of all agent instances in this environment separated by the the tick frequency.
Declaration
IDictionary<int, ConcurrentSet<ITickClient>> ExecutionGroups { get; }
Property Value
Type Description
System.Collections.Generic.IDictionary<System.Int32, Mars.Common.Core.Collections.HashStructures.ConcurrentSet<ITickClient>>
| Improve this Doc View Source

Layers

All layer instances of the model mapping from the type description 1:1 to the instance.
Declaration
TwoWayDictionary<LayerType, ILayer> Layers { get; }
Property Value
Type Description
Mars.Common.Core.Collections.HashStructures.TwoWayDictionary<LayerType, ILayer>
| Improve this Doc View Source

RegisterAgent

Gets the registration handle to load an ITickClient at the runtime system to get be triggered by them. The runtime system uses the passed executionInterval to associated the object in a specific execution group. Otherwise the type mapping of this object will be used or 1 as default value (triggered in each tick).
Declaration
RegisterAgent RegisterAgent { get; }
Property Value
Type Description
RegisterAgent
| Improve this Doc View Source

UnregisterAgent

Gets the de-registration handle to unload a ITickClient from the runtime system associated to the passed ILayer The runtime system uses the executionInterval to deregister the tick object from the execution groups
Declaration
UnregisterAgent UnregisterAgent { get; }
Property Value
Type Description
UnregisterAgent

Methods

| Improve this Doc View Source

AddActiveLayer(ISteppedActiveLayer, LayerType)

Adds an active layer instance to the runtime model which is capable to run ticks
Declaration
bool AddActiveLayer(ISteppedActiveLayer layer, LayerType type)
Parameters
Type Name Description
ISteppedActiveLayer layer The layer instance to register for execution
LayerType type The corresponding type description
Returns
Type Description
System.Boolean
| Improve this Doc View Source

AddLayer(ILayer, LayerType)

Adds a layer instance to the runtime model
Declaration
bool AddLayer(ILayer layer, LayerType type)
Parameters
Type Name Description
ILayer layer The layer instance to register
LayerType type The corresponding type description
Returns
Type Description
System.Boolean
| Improve this Doc View Source

AddNewAndRemoveDeletedTickClients()

The core runtime model responsible to manage all instances of entities It can be used to register new objects at the system, so it will be triggered and results are persisted.
Declaration
void AddNewAndRemoveDeletedTickClients()
| Improve this Doc View Source

AddNewTickClients()

The core runtime model responsible to manage all instances of entities It can be used to register new objects at the system, so it will be triggered and results are persisted.
Declaration
void AddNewTickClients()
| Improve this Doc View Source

DeleteRemovedTickClients()

Deletes all pending entities so they will no longer be executed.
Declaration
void DeleteRemovedTickClients()
| Improve this Doc View Source

RegisterTickClient(ILayer, ITickClient)

Loads an a ITickClient at the runtime system to get be triggered by them. The runtime system uses the passed executionInterval to associated the object in a specific execution group. Otherwise the type mapping of this object will be used or 1 as default value (triggered in each tick).
Declaration
void RegisterTickClient(ILayer layer, ITickClient tickClient)
Parameters
Type Name Description
ILayer layer The layer responsible for the tick client or the layer itself
ITickClient tickClient The ITickClient object which shall be triggered now.
| Improve this Doc View Source

UnregisterAll()

Removes all registered entities, agents or layers from this runtime environment.
Declaration
void UnregisterAll()
| Improve this Doc View Source

UnregisterTickClient(ILayer, ITickClient)

Unloads a ITickClient from the runtime system associated to the passed ILayer The runtime system uses the executionInterval to deregister the tick object from the execution groups
Declaration
void UnregisterTickClient(ILayer layer, ITickClient tickClient)
Parameters
Type Name Description
ILayer layer The layer responsible for the tick client or the layer itself
ITickClient tickClient The ITickClient object which shall not be triggered anymore.

Extension Methods

Serializer.Save<T>(T, out Byte[], SerializerCompression)
Serializer.Save<T>(T, Stream, SerializerCompression)
Serializer.Save<T>(T, BinaryFormatter, Stream, SerializerCompression)
Serializer.Save<T>(T, String, SerializerCompression)
Serializer.Save<T>(T, String)
Matrix.Concatenate<T>(T, T[])
Matrix.Replace<T>(T, Object, Object)
DomainDataImporter.Import(Object, InputConfiguration)
ObjectSerialize.Serialize(Object)
Matrix.IsEqual(Object, Object, Decimal, Decimal)
  • Improve this Doc
  • View Source
In This Article
Back to top Copyright © MARS GROUP. HAW Hamburg