Class Session
Domain entity representing a Session.
Implements
Inherited Members
Namespace: MESL.SqlRace.Domain
Assembly: MESL.SqlRace.Domain.dll
Syntax
public class Session : SessionBase, ISession
Fields
MinimumEventIdForGeneratedEvents
The minimum event identifier for generated events
Declaration
public const int MinimumEventIdForGeneratedEvents = 500000
Field Value
| Type | Description |
|---|---|
| System.Int32 |
Properties
ApplicationGroupNames
Gets the ApplicationGroup names available for this Session.
Declaration
public IReadOnlyCollection<string> ApplicationGroupNames { get; }
Property Value
| Type | Description |
|---|---|
| System.Collections.Generic.IReadOnlyCollection<System.String> |
ApplicationGroups
Gets the ApplicationGroups and associated ParameterGroups available for this Session.
Declaration
public override ReadOnlyCollection<ApplicationGroup> ApplicationGroups { get; }
Property Value
| Type | Description |
|---|---|
| System.Collections.ObjectModel.ReadOnlyCollection<ApplicationGroup> |
Overrides
Associates
Gets the IAssociateCollection providing access to the associated sessions for this session.
Declaration
public override IAssociateCollection Associates { get; }
Property Value
| Type | Description |
|---|---|
| IAssociateCollection |
Overrides
CanData
Gets the CAN data for requested bus.
Declaration
public override CanCollection CanData { get; }
Property Value
| Type | Description |
|---|---|
| CanCollection |
Overrides
ConnectionString
Gets the connection string used to create this session.
Declaration
public override string ConnectionString { get; }
Property Value
| Type | Description |
|---|---|
| System.String |
Overrides
Constants
Gets the SessionDataItemsCollection<T> providing access to the Constants for this session.
Declaration
public override SessionDataItemsCollection<Constant> Constants { get; }
Property Value
| Type | Description |
|---|---|
| SessionDataItemsCollection<Constant> |
Overrides
Conversions
Gets the Conversions for this Session.
Declaration
public override ReadOnlyCollection<ConversionBase> Conversions { get; }
Property Value
| Type | Description |
|---|---|
| System.Collections.ObjectModel.ReadOnlyCollection<ConversionBase> |
Overrides
CurrentConfigurationSets
Gets a List of the Configuration Sets used on this Session.
Declaration
public List<ConfigurationSet> CurrentConfigurationSets { get; }
Property Value
| Type | Description |
|---|---|
| System.Collections.Generic.List<ConfigurationSet> | System.Collections.Generic.List<>. |
EndTime
Gets the end time of the Session in nanoseconds.
Declaration
public override long EndTime { get; }
Property Value
| Type | Description |
|---|---|
| System.Int64 | System.Int64 |
Overrides
ErrorDefinitions
Gets the collection of error ErrorDefinitions for this session.
Declaration
public override ReadOnlyCollection<ErrorDefinition> ErrorDefinitions { get; }
Property Value
| Type | Description |
|---|---|
| System.Collections.ObjectModel.ReadOnlyCollection<ErrorDefinition> |
Overrides
Errors
Gets an instance of ErrorCollection providing access to error data
Declaration
public override ErrorCollection Errors { get; }
Property Value
| Type | Description |
|---|---|
| ErrorCollection |
Overrides
EventDefinitions
Gets the collection of event definitions for this session.
Declaration
public override ReadOnlyCollection<EventDefinition> EventDefinitions { get; }
Property Value
| Type | Description |
|---|---|
| System.Collections.ObjectModel.ReadOnlyCollection<EventDefinition> |
Overrides
Events
Gets the EventCollection providing access to event data for this Session.
Declaration
public override EventCollection Events { get; }
Property Value
| Type | Description |
|---|---|
| EventCollection |
Overrides
ExtendedAssociates
Declaration
public override IExtendedAssociateCollection ExtendedAssociates { get; }
Property Value
| Type | Description |
|---|---|
| IExtendedAssociateCollection |
Overrides
FileSessionPath
Gets or sets the file session path.
Declaration
public string FileSessionPath { get; set; }
Property Value
| Type | Description |
|---|---|
| System.String | The file session path. |
FriendlyName
Gets or sets the Friendly name for this Session.
Declaration
public string FriendlyName { get; set; }
Property Value
| Type | Description |
|---|---|
| System.String | System.String. |
InstanceIdentifier
Gets the instance identifier.
Declaration
public override Guid InstanceIdentifier { get; }
Property Value
| Type | Description |
|---|---|
| System.Guid | The instance identifier. |
Overrides
IsRemote
Gets a value indicating whether the session is a remote session or not.
Declaration
public bool IsRemote { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
IsStartTimeValid
Gets a value indicating whether the start time is valid when the session is live
Declaration
public override bool IsStartTimeValid { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
Overrides
Items
Gets the SessionDataItemsCollection<T> providing access to the Session Details for this session.
Declaration
public override SessionDataItemsCollection<SessionDataItem> Items { get; }
Property Value
| Type | Description |
|---|---|
| SessionDataItemsCollection<SessionDataItem> |
Overrides
LapCollection
Gets the ILapCollection providing access to Laps for this session.
Declaration
public override ILapCollection LapCollection { get; }
Property Value
| Type | Description |
|---|---|
| ILapCollection |
Overrides
Laps
Gets the LapCollection providing access to Laps for this session.
Declaration
public override LapCollection Laps { get; protected set; }
Property Value
| Type | Description |
|---|---|
| LapCollection |
Overrides
LocalTimeOfRecording
Gets the local time of recording.
Declaration
public DateTime LocalTimeOfRecording { get; }
Property Value
| Type | Description |
|---|---|
| System.DateTime | System.DateTime. |
Maps
Gets a collection of maps for this session.
Declaration
public override MapCollection<MapBase> Maps { get; }
Property Value
| Type | Description |
|---|---|
| MapCollection<MapBase> |
Overrides
Markers
Get the PersistableCollection<T> collection of Markers for this Session.
Declaration
public override PersistableCollection<Marker> Markers { get; }
Property Value
| Type | Description |
|---|---|
| PersistableCollection<Marker> |
Overrides
MarkersAndLaps
Get the markers in all of the sessions combined with marker representations of the laps in the parent session.
Declaration
public IImmutableList<Marker> MarkersAndLaps { get; }
Property Value
| Type | Description |
|---|---|
| System.Collections.Immutable.IImmutableList<Marker> |
Parameters
Gets the Parameters collection for this session.
Declaration
public override ReadOnlyCollection<ParameterBase> Parameters { get; }
Property Value
| Type | Description |
|---|---|
| System.Collections.ObjectModel.ReadOnlyCollection<ParameterBase> |
Overrides
RootPathGuid
Gets or sets the root path unique identifier.
Declaration
public Guid RootPathGuid { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Guid | The root path unique identifier. |
StartTime
Gets the start time of the session in nanoseconds.
Declaration
public override long StartTime { get; }
Property Value
| Type | Description |
|---|---|
| System.Int64 | System.Int64 |
Overrides
SummaryInformation
Forces the session summary to return an update.
Declaration
public SessionSummaryInformation SummaryInformation { get; }
Property Value
| Type | Description |
|---|---|
| SessionSummaryInformation |
TelemetryDataStreamStarted
Whether The Session is now receiving data
Declaration
public override bool TelemetryDataStreamStarted { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
Overrides
TimeZone
Gets the time zone in force at the time of recording.
Declaration
public string TimeZone { get; }
Property Value
| Type | Description |
|---|---|
| System.String |
Methods
AddChannelData(UInt32, Int64, Int32, Byte[])
Add Periodic Channel data to this session.
Declaration
public override void AddChannelData(uint channelId, long timestamp, int count, byte[] data)
Parameters
| Type | Name | Description |
|---|---|---|
| System.UInt32 | channelId | Channel Id. |
| System.Int64 | timestamp | Timestamp of first sample of data in data. |
| System.Int32 | count | Number of samples in the data. |
| System.Byte[] | data | The byte data to add to the channel. |
Overrides
Exceptions
| Type | Condition |
|---|---|
| System.ObjectDisposedException | Thrown when an attempt is made to invoke this method on a session that has been closed. |
AddChannelData(UInt32, Int64, Int32, Byte[], Boolean)
Add Periodic Channel data to this session.
Declaration
public override void AddChannelData(uint channelId, long timestamp, int count, byte[] data, bool notifyClient)
Parameters
| Type | Name | Description |
|---|---|---|
| System.UInt32 | channelId | Channel Id. |
| System.Int64 | timestamp | Timestamp of first sample of data in data. |
| System.Int32 | count | Number of samples in the data. |
| System.Byte[] | data | The byte data to add to the channel. |
| System.Boolean | notifyClient |
Overrides
Exceptions
| Type | Condition |
|---|---|
| System.ObjectDisposedException | Thrown when an attempt is made to invoke this method on a session that has been closed. |
AddRowData(Int64, IList<UInt32>, Byte[])
Adds Slow Row Channel data for a sequence of channels to this Session.
Declaration
public override void AddRowData(long timestamp, IList<uint> channelIds, byte[] data)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Int64 | timestamp | The timestamp for all the samples in the data. |
| System.Collections.Generic.IList<System.UInt32> | channelIds | The list of channel ids related to this row of data. |
| System.Byte[] | data | The data i.e. a packet of samples for channels in the row at the specified timestamp. |
Overrides
Exceptions
| Type | Condition |
|---|---|
| System.ObjectDisposedException | Thrown when an attempt is made to invoke this method on a session that has been closed. |
AddRowData(Int64, IList<UInt32>, Byte[], Boolean)
Adds Slow Row Channel data for a sequence of channels to this Session.
Declaration
public override void AddRowData(long timestamp, IList<uint> channelIds, byte[] data, bool notifyClient)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Int64 | timestamp | The timestamp for all the samples in the data. |
| System.Collections.Generic.IList<System.UInt32> | channelIds | The list of channel ids related to this row of data. |
| System.Byte[] | data | The data i.e. a packet of samples for channels in the row at the specified timestamp. |
| System.Boolean | notifyClient |
Overrides
Exceptions
| Type | Condition |
|---|---|
| System.ObjectDisposedException | Thrown when an attempt is made to invoke this method on a session that has been closed. |
AddRowData(UInt32, Int64[], Byte[], Int32, Boolean)
Adds a set of row data samples to the specified channel.
Declaration
public override void AddRowData(uint channelId, long[] timestamps, byte[] data, int channelSizeInBytes, bool notifyClient)
Parameters
| Type | Name | Description |
|---|---|---|
| System.UInt32 | channelId | The channel identifier. |
| System.Int64[] | timestamps | The timestamps. |
| System.Byte[] | data | The data. Length must be at least the number of timestamps multiplied by channelSizeInBytes. |
| System.Int32 | channelSizeInBytes | Size of the channel. |
| System.Boolean | notifyClient | if set to |
Overrides
Remarks
Row data can be added to a live session, and to an historic session if it does not clash with existing timestamps.
AddScalarData(UInt32, Byte[])
Adds a scalar data value from a DTV Offload to this Session.
Declaration
public override void AddScalarData(uint channelId, byte[] data)
Parameters
| Type | Name | Description |
|---|---|---|
| System.UInt32 | channelId | The channel identifier. |
| System.Byte[] | data | The data. |
Overrides
Exceptions
| Type | Condition |
|---|---|
| System.ObjectDisposedException | Thrown when an attempt is made to invoke this method on a session that has been closed. |
AddSynchroChannelData(Int64, UInt32, Byte, UInt32, Byte[])
Adds Synchronised data for a channel.
Declaration
public override void AddSynchroChannelData(long timestamp, uint channelId, byte sequenceNumber, uint deltaScale, byte[] data)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Int64 | timestamp | Timestamp of first sample of data in dataToWrite. |
| System.UInt32 | channelId | Channel id. |
| System.Byte | sequenceNumber | Number of samples in dataToWrite. |
| System.UInt32 | deltaScale | The scale to multiply deltas by. |
| System.Byte[] | data | Samples and deltas stored as sample, delta, sample, data..... |
Overrides
Remarks
The timestamp of the first sample is the base value passed in the channel list. Sequence delta 2 defines the timestamp of the second sample from the timestamp of the first sample; the sequence delta 3 defines the timestamp of the third sample from the second, and so on.
AssociateWithChild(SessionKey, String, String, Int32)
Associates this session with a child session.
Declaration
public override void AssociateWithChild(SessionKey childSessionKey, string associateName, string associateGroup, int versionNumber)
Parameters
| Type | Name | Description |
|---|---|---|
| MAT.OCS.Core.SessionKey | childSessionKey | The child session key. |
| System.String | associateName | Associate Name. |
| System.String | associateGroup | Associate Group. |
| System.Int32 | versionNumber | Version Number. |
Overrides
AssociateWithParent(SessionKey)
Associates this session with a parent session.
Declaration
public override void AssociateWithParent(SessionKey parentSessionKey)
Parameters
| Type | Name | Description |
|---|---|---|
| MAT.OCS.Core.SessionKey | parentSessionKey | The parent session. |
Overrides
Remarks
Child sessions can be associated with this session using the IAssociateCollection. e.g. Associates.Add(newSessionKey).
Exceptions
| Type | Condition |
|---|---|
| System.ArgumentException | Thrown when the parentSessionKey passed is the same as the key for this session instance. |
AssociateWithParent(SessionKey, String, Int32)
Associates this session with a parent session.
Declaration
public override void AssociateWithParent(SessionKey parentSessionKey, string associateName, int versionNumber)
Parameters
| Type | Name | Description |
|---|---|---|
| MAT.OCS.Core.SessionKey | parentSessionKey | The parent session key. |
| System.String | associateName | Associate Name. |
| System.Int32 | versionNumber | Version Number. |
Overrides
AssociateWithParent(SessionKey, String, String, Int32)
Associates this session with a parent session.
Declaration
public override void AssociateWithParent(SessionKey parentSessionKey, string associateName, string associateGroup, int versionNumber)
Parameters
| Type | Name | Description |
|---|---|---|
| MAT.OCS.Core.SessionKey | parentSessionKey | The parent session key. |
| System.String | associateName | Associate Name. |
| System.String | associateGroup | Associate Group. |
| System.Int32 | versionNumber | Version Number. |
Overrides
CombineSessionConfiguration(Session)
Combines the session configuration from the passed session into the current session. This allows the container session to appear to contain the configuration of the child session.
Declaration
public void CombineSessionConfiguration(Session session)
Parameters
| Type | Name | Description |
|---|---|---|
| Session | session | The session. |
ContainsParameter(String)
Does this Session contain the specified Parameter.
Declaration
public override bool ContainsParameter(string parameterIdentifier)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | parameterIdentifier | Parameter Identifier. |
Returns
| Type | Description |
|---|---|
| System.Boolean | Whether the parameter exists in this session. |
Overrides
Remarks
Check in all sessions (included merged sessions) if a parameter is contained
CreateConfiguration()
Creates a configuration set for the session. Configuration will be saved when Commit() is called on this configuration set.
Declaration
public override ConfigurationSet CreateConfiguration()
Returns
| Type | Description |
|---|---|
| ConfigurationSet | Configuration set object. |
Overrides
CreateConstantParameterDataAccess(String)
Creates a PDA that allows the current value of a named constant to be output.
Declaration
public override ParameterDataAccessBase CreateConstantParameterDataAccess(string constantName)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | constantName | Name of the constant. |
Returns
| Type | Description |
|---|---|
| ParameterDataAccessBase | Returns PDA for a constant. |
Overrides
CreateParameterDataAccess(String)
Returns a ParameterDataAccess object which can then be used to read merged Channel data from this session.
Declaration
public override ParameterDataAccessBase CreateParameterDataAccess(string parameterIdentifier)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | parameterIdentifier | The parameter identifier for Parameter to read data for. |
Returns
| Type | Description |
|---|---|
| ParameterDataAccessBase | An instantiated ParameterDataAccess object. |
Overrides
CreateParameterDataAccess(String, IList<UInt32>)
Returns a ParameterDataAccess object which can then be used to read Channel data from this session.
Declaration
public override ParameterDataAccessBase CreateParameterDataAccess(string parameterIdentifier, IList<uint> channelIds)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | parameterIdentifier | The parameter identifier for Parameter to read data for. |
| System.Collections.Generic.IList<System.UInt32> | channelIds | A list of explicit channels that should be merged from the full collection of channels on the desired Parameter. |
Returns
| Type | Description |
|---|---|
| ParameterDataAccessBase | An instantiated ParameterDataAccess object. |
Overrides
Exceptions
| Type | Condition |
|---|---|
| System.ObjectDisposedException | Thrown when an attempt is made to invoke this method on a session that has been closed. |
CreateTransientConfiguration()
Creates an in-memory configuration set for the session.
Declaration
public ConfigurationSet CreateTransientConfiguration()
Returns
| Type | Description |
|---|---|
| ConfigurationSet | Configuration set object. |
EndData()
Method to be called by a (recording) client when they have finished adding data to a session (e.g. at end of recording). This method will run asynchronously.
Declaration
public void EndData()
EndDataAsync()
Method to be called by a (recording) client when they have finished adding data to a session (e.g. at end of recording).
Declaration
public Task EndDataAsync()
Returns
| Type | Description |
|---|---|
| System.Threading.Tasks.Task |
EndDataSynchronous()
Method to be called by a (recording) client when they have finished adding data to a session (e.g. at end of bulk importing). This method will run synchronously.
Declaration
public void EndDataSynchronous()
Flush()
Flushes data to the database without closing the session.
Declaration
public override void Flush()
Overrides
GetConversion(String)
Gets the conversion.
Declaration
public override ConversionBase GetConversion(string conversionName)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | conversionName | Name of the conversion. |
Returns
| Type | Description |
|---|---|
| ConversionBase | Conversion item. |
Overrides
GetErrorData(Int64, Int64)
Retrieve Error Data for this Session
Declaration
public override IEnumerable<ErrorData> GetErrorData(long startTime, long endTime)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Int64 | startTime | Start time of requested time range |
| System.Int64 | endTime | End time of requested time range |
Returns
| Type | Description |
|---|---|
| System.Collections.Generic.IEnumerable<ErrorData> | System.Collections.Generic.IEnumerable<> |
Overrides
Remarks
Returns data for all Logged or Current Parameters defined in a ErrorDefinition. Before the calculation of the scaled value of a sample, if the raw value masks true against the parameter’s error mask bit field, then the sensor has failed and the ECU is returning default values for that parameter. The data is therefore marked as DataStatusType.Default
GetErrorDataForApplicationGroups(Int64, Int64, IEnumerable<String>)
Retrieve Error Data for this Session for the specified ApplicationGroup Names
Declaration
public override IEnumerable<ErrorData> GetErrorDataForApplicationGroups(long startTime, long endTime, IEnumerable<string> groups)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Int64 | startTime | The start time. |
| System.Int64 | endTime | The end time. |
| System.Collections.Generic.IEnumerable<System.String> | groups | The application group names. |
Returns
| Type | Description |
|---|---|
| System.Collections.Generic.IEnumerable<ErrorData> |
Overrides
GetErrorDataForIdentifiers(Int64, Int64, IEnumerable<String>)
Retrieve Error Data for this Session for the specified current/logger parameter identifiers
Declaration
public override IEnumerable<ErrorData> GetErrorDataForIdentifiers(long startTime, long endTime, IEnumerable<string> identifiers)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Int64 | startTime | The start time. |
| System.Int64 | endTime | The end time. |
| System.Collections.Generic.IEnumerable<System.String> | identifiers | The current/logged parameter identifiers |
Returns
| Type | Description |
|---|---|
| System.Collections.Generic.IEnumerable<ErrorData> |
Overrides
GetErrorDefinitionForParameter(String)
Get the ErrorDefinition where the Current or Logged Identifier is parameterIdentifier
Declaration
public ErrorDefinition GetErrorDefinitionForParameter(string parameterIdentifier)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | parameterIdentifier |
Returns
| Type | Description |
|---|---|
| ErrorDefinition |
GetEventData(Int64, Int64)
Retrieve Event data for session along with associated session.
Declaration
public override IEnumerable<Event> GetEventData(long startTime, long endTime)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Int64 | startTime | Start time of requested time range |
| System.Int64 | endTime | End time of requested time range |
Returns
| Type | Description |
|---|---|
| System.Collections.Generic.IEnumerable<Event> |
Overrides
GetEventDefinition(String)
Gets the event definition.
Declaration
public override EventDefinition GetEventDefinition(string key)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | key | The id/group pair identifying the definition. |
Returns
| Type | Description |
|---|---|
| EventDefinition | Event definitions. |
Overrides
GetLapsInRange(Int64, Int64)
Gets the laps in range.
Declaration
public override IReadOnlyList<Lap> GetLapsInRange(long startTime, long endTime)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Int64 | startTime | The start time. |
| System.Int64 | endTime | The end time. |
Returns
| Type | Description |
|---|---|
| System.Collections.Generic.IReadOnlyList<Lap> |
Overrides
GetLoadedAssociates()
Gets a list of session keys for all loaded associate sessions.
Declaration
public IList<SessionKey> GetLoadedAssociates()
Returns
| Type | Description |
|---|---|
| System.Collections.Generic.IList<MAT.OCS.Core.SessionKey> |
GetMappedTimestamps(String, Double[])
Gets the mapped range by passing the specified start and end to a mapper on the session.
Declaration
public long[] GetMappedTimestamps(string mapperName, double[] values)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | mapperName | Name of the mapper. |
| System.Double[] | values | The values. |
Returns
| Type | Description |
|---|---|
| System.Int64[] | The output from the mapper for the specified positions. |
GetMappedValues(String, Int64[])
Gets the mapped range by passing the specified start and end times to a mapper on the session.
Declaration
public double[] GetMappedValues(string mapperName, long[] times)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | mapperName | Name of the mapper. |
| System.Int64[] | times | The times. |
Returns
| Type | Description |
|---|---|
| System.Double[] | The output from the mapper for the specified times. |
GetNextUniqueFunctionId(String)
Returns the next parameter Id in the format parameterName:parameterApp:fN
where fn is the next sequential number for the given function parameterId
Declaration
public override string GetNextUniqueFunctionId(string parameterId)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | parameterId |
Returns
| Type | Description |
|---|---|
| System.String |
Overrides
GetParameter(String)
Gets the parameter with the specified identifier.
Declaration
public override ParameterBase GetParameter(string parameterIdentifier)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | parameterIdentifier | The parameter identifier. |
Returns
| Type | Description |
|---|---|
| ParameterBase | The parameter with the identifier specified, or throws an ArgumentNullException if no parameter with that identifier exists. |
Overrides
GetParameterOrDefault(String)
Gets the parameter with the specified identifier without generating exceptions.
Declaration
public override ParameterBase GetParameterOrDefault(string parameterIdentifier)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | parameterIdentifier | The parameter identifier. |
Returns
| Type | Description |
|---|---|
| ParameterBase | The parameter with the identifier specified, or null if no parameter with that identifier exists. |
Overrides
GetParametersForGroup(String)
Gets the parameters for an ApplicationGroup or ParameterGroup.
Declaration
public override IReadOnlyList<ParameterBase> GetParametersForGroup(string group)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | group | The ApplicationGroup Name, or ParameterGroup Identifier. |
Returns
| Type | Description |
|---|---|
| System.Collections.Generic.IReadOnlyList<ParameterBase> |
Overrides
GetParameterWithFallbackStrategy(String)
Returns a Parameter object "using a fallback strategy" which can be used to read the session's parameter data.
Declaration
public ParameterBase GetParameterWithFallbackStrategy(string parameterIdentifier)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | parameterIdentifier |
Returns
| Type | Description |
|---|---|
| ParameterBase |
GetParentSessions()
Gets the parent sessions of this session.
Declaration
public IEnumerable<ExtendedAssociate> GetParentSessions()
Returns
| Type | Description |
|---|---|
| System.Collections.Generic.IEnumerable<ExtendedAssociate> | A list of parent sessions |
GetSessionTransientState()
Gets the current transient state of the session
Declaration
public override bool GetSessionTransientState()
Returns
| Type | Description |
|---|---|
| System.Boolean |
Overrides
IsInError(String, Int64)
Determines whether the Parameter data [is in error] for [the specified identifier] at the specified timestamp.
Declaration
public override bool IsInError(string identifier, long time)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | identifier | The Parameter identifier. |
| System.Int64 | time | The time in nanoseconds. |
Returns
| Type | Description |
|---|---|
| System.Boolean | True if the data is in Error |
Overrides
LoadConfiguration()
Loads configuration for this session if it has not already been previously loaded.
Declaration
public override void LoadConfiguration()
Overrides
LoadParameters(IEnumerable<String>)
Loads configuration for the required parameters.
Declaration
public override void LoadParameters(IEnumerable<string> parameterIdentifiers)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Collections.Generic.IEnumerable<System.String> | parameterIdentifiers | The parameter identifiers. |
Overrides
Remarks
This method will load configuration for the parameter identifiers passed in, Used for Lightweight Session Loading, and for incrementally loading configuration as required
LoadRemainingParameters()
Load all the parameters not loaded when the session configuration is loaded.
Declaration
public override void LoadRemainingParameters()
Overrides
MarkSessionAsTransient(Boolean)
Set/clear the transient state for the session
Declaration
public override void MarkSessionAsTransient(bool transient)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Boolean | transient |
Overrides
RecalculateParameters()
Recalculate parameters for session.
Declaration
public override void RecalculateParameters()
Overrides
RemoveFilter(String)
Remove the active filter from the list if present
Declaration
public override void RemoveFilter(string filterParameterId)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | filterParameterId |
Overrides
RemoveInMemoryParameter(String)
Remove an in-memory parameter.
Declaration
public void RemoveInMemoryParameter(string parameterIdentifier)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | parameterIdentifier | Parameter to remove. |
ReserveNextAvailableRowChannelId()
Reserves the next available Slow Row Channel Id in this session. This can be used by an external data service if it needs to add configuration for a new channel. Each call to this method will result in a new channel id which will not be handed out again.
Declaration
public uint ReserveNextAvailableRowChannelId()
Returns
| Type | Description |
|---|---|
| System.UInt32 | Next available channel id in the session. |
ReserveNextAvailableRowChannelIdRange(UInt32)
Reserves the next available Slow Row Channel Id range in this session given a channel count. This can be used by an external data service if it needs to add configuration for a new channel. Each call to this method will result in a new channel id range which will not be handed out again.
Declaration
public uint ReserveNextAvailableRowChannelIdRange(uint channelRange)
Parameters
| Type | Name | Description |
|---|---|---|
| System.UInt32 | channelRange | The channel range (NOT the channel count, as channel ids do not have to be consecutive!). |
Returns
| Type | Description |
|---|---|
| System.UInt32 | Next available channel id range in the session. |
ResetRowData(UInt32)
Reset row data for channel.
Declaration
public override void ResetRowData(uint channelId)
Parameters
| Type | Name | Description |
|---|---|---|
| System.UInt32 | channelId | The channel. |
Overrides
ResolveString(String)
Resolve identifier/session detail dollar string based on given input.
Declaration
public override string ResolveString(string unresolvedIdentifier)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | unresolvedIdentifier | Unresolved identifier e.g "$NDriverInitial1$$NDriverInitial2$$NDriverInitial3$-%c" |
Returns
| Type | Description |
|---|---|
| System.String | Resolved identifier e.g "ALO-Brazil" |
Overrides
Remarks
This API is used from external software to resolve the identifier. e.g The timeline in A9 can add the unresolved identifier which needs to be resolved.
SetCoverageCursor(Int64)
Sets the coverage cursor for the session.
Declaration
public override void SetCoverageCursor(long timestamp)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Int64 | timestamp | The coverage cursor. |
Overrides
SetEndTime(Int64)
Sets the Session end time.
Declaration
public override void SetEndTime(long endTime)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Int64 | endTime | The new end time. |
Overrides
SetSessionTimerange(Int64, Int64)
The set session time range.
Declaration
public void SetSessionTimerange(long startTime, long endTime)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Int64 | startTime | The start time. |
| System.Int64 | endTime | The end time. |
SetStartTime(Int64)
Sets the Session start time.
Declaration
public override void SetStartTime(long startTime)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Int64 | startTime | The new start time. |
Overrides
ToString()
Returns a System.String that represents this instance.
Declaration
public override string ToString()
Returns
| Type | Description |
|---|---|
| System.String | A System.String that represents this instance. |
TryCreateParameterDataAccess(String, out ParameterDataAccessBase)
Attempts to create a ParameterDataAccess object that can be used to read merged Channel data from this session.
Declaration
public bool TryCreateParameterDataAccess(string parameterIdentifier, out ParameterDataAccessBase pda)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | parameterIdentifier | The parameter identifier for Parameter to read data for. |
| ParameterDataAccessBase | pda | An instantiated ParameterDataAccess object. |
Returns
| Type | Description |
|---|---|
| System.Boolean | [true] if a PDA can be created; otherwise [false]. |
UpdateIdentifier(String)
Updates the session identifier.
Declaration
public void UpdateIdentifier(string identifier)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | identifier | The new identifier. |
Remarks
This call has no effect if the session is live, under the control of a recorder, and it is an associate session. In this case, the identifier is inherited from the parent session.
UpdateSessionStatus(SessionState)
Update this Session's status. This method will run asynchronously
Declaration
public void UpdateSessionStatus(SessionState sessionState)
Parameters
| Type | Name | Description |
|---|---|---|
| SessionState | sessionState | The session state. |
UpdateSessionStatusAsync(SessionState)
Update this Session's status.
Declaration
public Task UpdateSessionStatusAsync(SessionState sessionState)
Parameters
| Type | Name | Description |
|---|---|---|
| SessionState | sessionState | The session state. |
Returns
| Type | Description |
|---|---|
| System.Threading.Tasks.Task |
UpdateUnformattedSessionDetail(String, String)
Update the unformatted/Original session detail.
Declaration
public void UpdateUnformattedSessionDetail(string name, string value)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | name | Session detail name. |
| System.String | value | Session detail value. |
Remarks
This API is called from recorder to update the original session detail if required.
UseConfigurationSets(IEnumerable<KeyValuePair<String, UInt32>>)
Uses the specified configuration, with provided channel offsets.
Declaration
public IDictionary<string, ConfigurationSetMetaData> UseConfigurationSets(IEnumerable<KeyValuePair<string, uint>> configurationSets)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<System.String, System.UInt32>> | configurationSets | Configuration set identifiers, with channel offsets such that channels do not overlap between configuration sets. |
Returns
| Type | Description |
|---|---|
| System.Collections.Generic.IDictionary<System.String, ConfigurationSetMetaData> | Channel offsets and other metadata, by configuration set identifier. Configuration sets that failed to load are excluded from the result dictionary. |
UseConfigurationSets(IList<String>, IDictionary<String, UInt32>)
Uses the specified row and logging configuration sets.
Prefer this method over UseRowConfigurationSet(String) and UseLoggingConfigurationSet(String) because it allows configuration to be loaded and merged in parallel.
Declaration
public IDictionary<string, ConfigurationSetMetaData> UseConfigurationSets(IList<string> rowConfigurationSets, IDictionary<string, uint> loggingConfigurationSets)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Collections.Generic.IList<System.String> | rowConfigurationSets | Row configuration set identifiers. The resulting metadata indicates the channel offset. |
| System.Collections.Generic.IDictionary<System.String, System.UInt32> | loggingConfigurationSets | Logging configuration set identifiers and channel offsets. |
Returns
| Type | Description |
|---|---|
| System.Collections.Generic.IDictionary<System.String, ConfigurationSetMetaData> | Channel offsets and other metadata, by configuration set identifier. Configuration sets that failed to load are excluded from the result dictionary. |
Exceptions
| Type | Condition |
|---|---|
| System.ArgumentNullException | When either |
UseLoggingConfigurationSet(String)
Uses the logging configuration set on the session to derive the list of parameters, channels, conversions etc.
Declaration
public ConfigurationSetMetaData UseLoggingConfigurationSet(string configSetIdentifier)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | configSetIdentifier | Configuration set identifier. |
Returns
| Type | Description |
|---|---|
| ConfigurationSetMetaData | The configuration set metadata. |
UseLoggingConfigurationSet(String, UInt32)
Uses the logging configuration set on the session to derive the list of parameters, channels, conversions etc.
Declaration
public ConfigurationSetMetaData UseLoggingConfigurationSet(string configSetIdentifier, uint channelOffset)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | configSetIdentifier | Configuration set identifier. |
| System.UInt32 | channelOffset | The channel offset. |
Returns
| Type | Description |
|---|---|
| ConfigurationSetMetaData | The configuration set metadata. |
UseLoggingConfigurationSets(Dictionary<String, UInt32>)
Uses the logging configuration sets.
Declaration
public void UseLoggingConfigurationSets(Dictionary<string, uint> configurationSetsWithChannelOffset)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Collections.Generic.Dictionary<System.String, System.UInt32> | configurationSetsWithChannelOffset | The configuration sets with channel offset. |
UseRowConfigurationSet(String)
Uses the row configuration set on the session to derive the list of parameters, channels, conversions etc.
Declaration
public ConfigurationSetMetaData UseRowConfigurationSet(string configSetIdentifier)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | configSetIdentifier | Configuration set identifier. |
Returns
| Type | Description |
|---|---|
| ConfigurationSetMetaData | The configuration set metadata. |
Events
ApplicationGroupsAdded
Event fired ApplicationGroups are added to the Session.
Declaration
public override event EventHandler<SessionEventArgs> ApplicationGroupsAdded
Event Type
| Type | Description |
|---|---|
| System.EventHandler<SessionEventArgs> |
Overrides
CanDataAdded
Gets the Can data for specified bus within a session.
Declaration
public override event EventHandler<ItemCanArgs> CanDataAdded
Event Type
| Type | Description |
|---|---|
| System.EventHandler<ItemCanArgs> |
Overrides
ChannelsAdded
Event fired when Channels are added to the Session.
Declaration
public override event EventHandler<SessionEventArgs> ChannelsAdded
Event Type
| Type | Description |
|---|---|
| System.EventHandler<SessionEventArgs> |
Overrides
ConfigurationProcessed
Event fired when Configuration has been processed (validated and queued for persistence).
Declaration
public override event EventHandler<SessionEventArgs> ConfigurationProcessed
Event Type
| Type | Description |
|---|---|
| System.EventHandler<SessionEventArgs> |
Overrides
ConversionsAdded
Event fired Conversions are added to the Session.
Declaration
public override event EventHandler<SessionEventArgs> ConversionsAdded
Event Type
| Type | Description |
|---|---|
| System.EventHandler<SessionEventArgs> |
Overrides
ErrorDataAdded
Event fired an ItemErrorArgs is added to the Session.
Declaration
public override event EventHandler<ItemErrorArgs> ErrorDataAdded
Event Type
| Type | Description |
|---|---|
| System.EventHandler<ItemErrorArgs> |
Overrides
ErrorDefinitionsAdded
Event fired when ErrorDefinitions are added to the Session.
Declaration
public override event EventHandler<SessionEventArgs> ErrorDefinitionsAdded
Event Type
| Type | Description |
|---|---|
| System.EventHandler<SessionEventArgs> |
Overrides
EventDataAdded
Event fired an Event is added to the Session.
Declaration
public override event EventHandler<ItemEventArgs> EventDataAdded
Event Type
| Type | Description |
|---|---|
| System.EventHandler<ItemEventArgs> |
Overrides
EventDefinitionsAdded
Event fired EventDefinitions are added to the Session.
Declaration
public override event EventHandler<SessionEventArgs> EventDefinitionsAdded
Event Type
| Type | Description |
|---|---|
| System.EventHandler<SessionEventArgs> |
Overrides
FunctionParametersAdded
Event fired when FunctionParameters are added to the Session.
Declaration
public override event EventHandler<SessionEventArgs> FunctionParametersAdded
Event Type
| Type | Description |
|---|---|
| System.EventHandler<SessionEventArgs> |
Overrides
FunctionParametersRemoved
Event fired when FunctionParameters are removed from the Session.
Declaration
public override event EventHandler<SessionEventArgs> FunctionParametersRemoved
Event Type
| Type | Description |
|---|---|
| System.EventHandler<SessionEventArgs> |
Overrides
LapCompleted
Event fired when lap completion happens (i.e. when lap is added which causes the end time for the previous lap to be calculated).
Declaration
public override event EventHandler<LapEventArgs> LapCompleted
Event Type
| Type | Description |
|---|---|
| System.EventHandler<LapEventArgs> |
Overrides
LapStarted
Event fired when a new lap starts (i.e. when a new lap is added.
Declaration
public override event EventHandler<LapEventArgs> LapStarted
Event Type
| Type | Description |
|---|---|
| System.EventHandler<LapEventArgs> |
Overrides
LapStatisticsCompleted
Event fired when Lap Statistics calculation has completed.
Declaration
public override event EventHandler<LapStatisticsEventArgs> LapStatisticsCompleted
Event Type
| Type | Description |
|---|---|
| System.EventHandler<LapStatisticsEventArgs> |
Overrides
LapStatisticsPersisted
Event fired when Lap Statistics has been persisted.
Declaration
public override event EventHandler<LapStatisticsEventArgs> LapStatisticsPersisted
Event Type
| Type | Description |
|---|---|
| System.EventHandler<LapStatisticsEventArgs> |
Overrides
MarkerAdded
Event fired when a marker is added to the Marker collection
Declaration
public override event EventHandler<ItemEventArgs> MarkerAdded
Event Type
| Type | Description |
|---|---|
| System.EventHandler<ItemEventArgs> |
Overrides
MessagingErrorOccurred
Event fired when an error occurs on a remote connection using messaging.
Declaration
public override event EventHandler<MessagingErrorEventArgs> MessagingErrorOccurred
Event Type
| Type | Description |
|---|---|
| System.EventHandler<MESL.SqlRace.Messaging.Interface.MessagingErrorEventArgs> |
Overrides
NewDataArrived
In live mode or in deferred data request, notify when new data is ready.
Declaration
public override event EventHandler<SessionEventArgs> NewDataArrived
Event Type
| Type | Description |
|---|---|
| System.EventHandler<SessionEventArgs> |
Overrides
NewFastestLap
Event fired when the fastest lap changes.
Declaration
public override event EventHandler<LapEventArgs> NewFastestLap
Event Type
| Type | Description |
|---|---|
| System.EventHandler<LapEventArgs> |
Overrides
OnAddChannelDataError
Occurs when there has been an error adding channel data to this Session.
Declaration
public override event EventHandler<AddChannelDataErrorEventArgs> OnAddChannelDataError
Event Type
| Type | Description |
|---|---|
| System.EventHandler<AddChannelDataErrorEventArgs> |
Overrides
OnDisposed
Occurs when the session is disposed
Declaration
public override event EventHandler OnDisposed
Event Type
| Type | Description |
|---|---|
| System.EventHandler |
Overrides
ParametersAdded
Event fired when Parameters are added to the Session.
Declaration
public override event EventHandler<SessionEventArgs> ParametersAdded
Event Type
| Type | Description |
|---|---|
| System.EventHandler<SessionEventArgs> |
Overrides
RdaEventDefinitionsChanged
Fired when the collection of available EventDefinitions has changed as a result of processing an unlock list checksum RDA.
Declaration
public override event EventHandler<SessionEventArgs> RdaEventDefinitionsChanged
Event Type
| Type | Description |
|---|---|
| System.EventHandler<SessionEventArgs> |
Overrides
RdaParametersChanged
Fired when the collection of available Parameters has changed as a result of processing an unlock list checksum RDA.
Declaration
public override event EventHandler<SessionEventArgs> RdaParametersChanged
Event Type
| Type | Description |
|---|---|
| System.EventHandler<SessionEventArgs> |
Overrides
SessionClosed
Event fired when session is closed.
Declaration
public override event EventHandler<SessionClosedArgs> SessionClosed
Event Type
| Type | Description |
|---|---|
| System.EventHandler<SessionClosedArgs> |
Overrides
SessionDetailChangedEventOccurred
Event fired when the session detail item is changed.
Declaration
public override event EventHandler<SessionDetailChangedEventArgs> SessionDetailChangedEventOccurred
Event Type
| Type | Description |
|---|---|
| System.EventHandler<SessionDetailChangedEventArgs> |
Overrides
SessionIdentifierChangedEventOccurred
Event fired when the session identifier changes.
Declaration
public override event EventHandler<SessionIdentifierChangedEventArgs> SessionIdentifierChangedEventOccurred
Event Type
| Type | Description |
|---|---|
| System.EventHandler<SessionIdentifierChangedEventArgs> |
Overrides
SessionNotAvailableEventOccurred
Event fired when a message is received for a session that is no longer available.
Declaration
public override event EventHandler<SessionNotAvailableEventArgs> SessionNotAvailableEventOccurred
Event Type
| Type | Description |
|---|---|
| System.EventHandler<SessionNotAvailableEventArgs> |
Overrides
SessionStartTimeChanged
Event fired when Session Start Time is updated to a value earlier than the current start time
Declaration
public override event EventHandler<SessionStartTimeChangedEventArgs> SessionStartTimeChanged
Event Type
| Type | Description |
|---|---|
| System.EventHandler<SessionStartTimeChangedEventArgs> |
Overrides
SessionStatusChangedEventOccurred
Event fired when the session status changes.
Declaration
public override event EventHandler<SessionStatusChangedEventArgs> SessionStatusChangedEventOccurred
Event Type
| Type | Description |
|---|---|
| System.EventHandler<SessionStatusChangedEventArgs> |
Overrides
TelemetryStarted
Event fired when the first piece of data is written to the session.
Declaration
public override event EventHandler<EventArgs> TelemetryStarted
Event Type
| Type | Description |
|---|---|
| System.EventHandler<System.EventArgs> |