Interface ICompositeSession
Composite Session interface.
Namespace: MESL.SqlRace.Domain
Assembly: MESL.SqlRace.Domain.dll
Syntax
public interface ICompositeSession : IDisposable
  Properties
AutoFitLaps
Gets or Sets AutoFitLaps on or off
Declaration
bool AutoFitLaps { get; }
  Property Value
| Type | Description | 
|---|---|
| System.Boolean | 
AutoFitLimit
Sets the AutoFit Limit
Declaration
double AutoFitLimit { get; }
  Property Value
| Type | Description | 
|---|---|
| System.Double | 
Remarks
The X-axis of the Overlay data is stretched or compressed so that the start and end of each lap matches the start and end of the lap in the primary set
CompareSessionMode
Gets or sets the Compare mode of the session
Declaration
ICompareSessionMode CompareSessionMode { get; set; }
  Property Value
| Type | Description | 
|---|---|
| ICompareSessionMode | 
CompareSessionTimeOffset
What is the compare session offset in time.
Declaration
long CompareSessionTimeOffset { get; }
  Property Value
| Type | Description | 
|---|---|
| System.Int64 | 
Conversions
Conversions
Declaration
IDictionary<SessionKey, ReadOnlyCollection<ConversionBase>> Conversions { get; }
  Property Value
| Type | Description | 
|---|---|
| System.Collections.Generic.IDictionary<MAT.OCS.Core.SessionKey, System.Collections.ObjectModel.ReadOnlyCollection<ConversionBase>> | 
CurrentOffset
Gets the current offset.
Declaration
PdaCurrentPosition CurrentOffset { get; }
  Property Value
| Type | Description | 
|---|---|
| PdaCurrentPosition | The current offset.  | 
      
DefaultSessionOffset
Gets the Default Session Offset
Declaration
PdaCurrentPosition DefaultSessionOffset { get; }
  Property Value
| Type | Description | 
|---|---|
| PdaCurrentPosition | 
Disposed
Has this instance been Disposed
Declaration
bool Disposed { get; }
  Property Value
| Type | Description | 
|---|---|
| System.Boolean | 
Enabled
Gets or Sets Whether this CompositeSession is Enabled
Declaration
bool Enabled { get; }
  Property Value
| Type | Description | 
|---|---|
| System.Boolean | 
EndTime
End Time
Declaration
long EndTime { get; }
  Property Value
| Type | Description | 
|---|---|
| System.Int64 | 
ErrorDefinitions
Error Definitions
Declaration
IDictionary<SessionKey, ReadOnlyCollection<ErrorDefinition>> ErrorDefinitions { get; }
  Property Value
| Type | Description | 
|---|---|
| System.Collections.Generic.IDictionary<MAT.OCS.Core.SessionKey, System.Collections.ObjectModel.ReadOnlyCollection<ErrorDefinition>> | 
EventDefinitions
Event Definitions
Declaration
IDictionary<SessionKey, ReadOnlyCollection<EventDefinition>> EventDefinitions { get; }
  Property Value
| Type | Description | 
|---|---|
| System.Collections.Generic.IDictionary<MAT.OCS.Core.SessionKey, System.Collections.ObjectModel.ReadOnlyCollection<EventDefinition>> | 
Events
Events
Declaration
IDictionary<SessionKey, EventCollection> Events { get; }
  Property Value
| Type | Description | 
|---|---|
| System.Collections.Generic.IDictionary<MAT.OCS.Core.SessionKey, EventCollection> | 
Identifier
CompositeSession Identifier
Declaration
string Identifier { get; set; }
  Property Value
| Type | Description | 
|---|---|
| System.String | 
Items
Session Items
Declaration
IDictionary<SessionKey, SessionDataItemsCollection<SessionDataItem>> Items { get; }
  Property Value
| Type | Description | 
|---|---|
| System.Collections.Generic.IDictionary<MAT.OCS.Core.SessionKey, SessionDataItemsCollection<SessionDataItem>> | 
Key
CompositeSession Key
Declaration
CompositeSessionKey Key { get; }
  Property Value
| Type | Description | 
|---|---|
| MAT.OCS.Core.CompositeSessionKey | 
Laps
Laps
Declaration
IDictionary<SessionKey, ILapCollection> Laps { get; }
  Property Value
| Type | Description | 
|---|---|
| System.Collections.Generic.IDictionary<MAT.OCS.Core.SessionKey, ILapCollection> | 
Mode
Overlay or Append Mode
Declaration
CompositeSessionMode Mode { get; set; }
  Property Value
| Type | Description | 
|---|---|
| CompositeSessionMode | 
Parameters
Parameters
Declaration
IDictionary<SessionKey, ReadOnlyCollection<ParameterBase>> Parameters { get; }
  Property Value
| Type | Description | 
|---|---|
| System.Collections.Generic.IDictionary<MAT.OCS.Core.SessionKey, System.Collections.ObjectModel.ReadOnlyCollection<ParameterBase>> | 
PrimarySession
The Primary Session
Declaration
SessionBase PrimarySession { get; }
  Property Value
| Type | Description | 
|---|---|
| SessionBase | 
Sessions
Child sessions
Declaration
List<ICompositeSessionInfo> Sessions { get; }
  Property Value
| Type | Description | 
|---|---|
| System.Collections.Generic.List<ICompositeSessionInfo> | 
StartTime
Start Time
Declaration
long StartTime { get; }
  Property Value
| Type | Description | 
|---|---|
| System.Int64 | 
TimeRange
Timerange
Declaration
TimeRange TimeRange { get; }
  Property Value
| Type | Description | 
|---|---|
| TimeRange | 
XAxisParameter
X Axis Parameter
Declaration
string XAxisParameter { get; }
  Property Value
| Type | Description | 
|---|---|
| System.String | 
Methods
Add(IClientSession)
Add a Session to this CompositeSession
Declaration
void Add(IClientSession session)
  Parameters
| Type | Name | Description | 
|---|---|---|
| IClientSession | session | 
Add(SessionSummary)
Adds the specified session summary.
Declaration
void Add(SessionSummary sessionSummary)
  Parameters
| Type | Name | Description | 
|---|---|---|
| SessionSummary | sessionSummary | Session summary to open.  | 
      
Add(IEnumerable<IClientSession>)
Add Sessions to this compositeSession
Declaration
void Add(IEnumerable<IClientSession> sessionsToAdd)
  Parameters
| Type | Name | Description | 
|---|---|---|
| System.Collections.Generic.IEnumerable<IClientSession> | sessionsToAdd | 
Add(IEnumerable<SessionSummary>)
Adds the specified summaries.
Declaration
void Add(IEnumerable<SessionSummary> summaries)
  Parameters
| Type | Name | Description | 
|---|---|---|
| System.Collections.Generic.IEnumerable<SessionSummary> | summaries | Session summaries to add.  | 
      
ContainsParameter(String)
Do I contain this Paraeter
Declaration
bool ContainsParameter(string parameterIdentifier)
  Parameters
| Type | Name | Description | 
|---|---|---|
| System.String | parameterIdentifier | 
Returns
| Type | Description | 
|---|---|
| System.Boolean | 
CreateParameterDataAccess(String)
Create a CompositeParameterDataAccess
Declaration
ICompositeParameterDataAccess CreateParameterDataAccess(string parameterIdentifier)
  Parameters
| Type | Name | Description | 
|---|---|---|
| System.String | parameterIdentifier | 
Returns
| Type | Description | 
|---|---|
| ICompositeParameterDataAccess | 
DisableUnderlyingSession(SessionKey)
Disable a Session - does not provide data
Declaration
void DisableUnderlyingSession(SessionKey key)
  Parameters
| Type | Name | Description | 
|---|---|---|
| MAT.OCS.Core.SessionKey | key | 
EnableUnderlyingSession(SessionKey)
Enable a Session - may provide data
Declaration
void EnableUnderlyingSession(SessionKey key)
  Parameters
| Type | Name | Description | 
|---|---|---|
| MAT.OCS.Core.SessionKey | key | 
GetErrorData(Int64, Int64)
Gets Error Data
Declaration
Dictionary<SessionKey, IEnumerable<IErrorData>> GetErrorData(long startTime, long endTime)
  Parameters
| Type | Name | Description | 
|---|---|---|
| System.Int64 | startTime | |
| System.Int64 | endTime | 
Returns
| Type | Description | 
|---|---|
| System.Collections.Generic.Dictionary<MAT.OCS.Core.SessionKey, System.Collections.Generic.IEnumerable<IErrorData>> | 
GetErrorDataForApplicationGroups(Int64, Int64, IEnumerable<String>)
Retrieve Error Data for this Session for the specified ApplicationGroup Names
Declaration
Dictionary<SessionKey, IEnumerable<IErrorData>> 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.Dictionary<MAT.OCS.Core.SessionKey, System.Collections.Generic.IEnumerable<IErrorData>> | 
GetErrorDataForIdentifiers(Int64, Int64, IEnumerable<String>)
Retrieve Error Data for this Session for the specified current/logger parameter identifiers
Declaration
Dictionary<SessionKey, IEnumerable<IErrorData>> 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.Dictionary<MAT.OCS.Core.SessionKey, System.Collections.Generic.IEnumerable<IErrorData>> | 
GetEvents(Int64, Int64)
Get Events
Declaration
Dictionary<SessionKey, IList<Event>> GetEvents(long startTime, long endTime)
  Parameters
| Type | Name | Description | 
|---|---|---|
| System.Int64 | startTime | |
| System.Int64 | endTime | 
Returns
| Type | Description | 
|---|---|
| System.Collections.Generic.Dictionary<MAT.OCS.Core.SessionKey, System.Collections.Generic.IList<Event>> | 
GetFastestLap()
Gets the fastet lap over all the sessions.
Declaration
ILap GetFastestLap()
  Returns
| Type | Description | 
|---|---|
| ILap | 
GetLapBasedOnTimestamp(Int64)
Find the Lap which the timestamp falls within.
Declaration
ILap GetLapBasedOnTimestamp(long timestamp)
  Parameters
| Type | Name | Description | 
|---|---|---|
| System.Int64 | timestamp | The timestamp.  | 
      
Returns
| Type | Description | 
|---|---|
| ILap | A Lap  | 
      
GetLaps(Int64, Int64)
Get Laps
Declaration
Dictionary<SessionKey, IEnumerable<Lap>> GetLaps(long startTime, long endTime)
  Parameters
| Type | Name | Description | 
|---|---|---|
| System.Int64 | startTime | |
| System.Int64 | endTime | 
Returns
| Type | Description | 
|---|---|
| System.Collections.Generic.Dictionary<MAT.OCS.Core.SessionKey, System.Collections.Generic.IEnumerable<Lap>> | 
GetParametersForGroup(String)
Gets the parameters for an Application or Parameter group.
Declaration
IDictionary<SessionKey, IReadOnlyList<ParameterBase>> GetParametersForGroup(string group)
  Parameters
| Type | Name | Description | 
|---|---|---|
| System.String | group | ApplicationGroup Name, or, ParameterGroup Identifier.  | 
      
Returns
| Type | Description | 
|---|---|
| System.Collections.Generic.IDictionary<MAT.OCS.Core.SessionKey, System.Collections.Generic.IReadOnlyList<ParameterBase>> | 
GetSessionContainingFastestLap()
Gets the fastet lap over all the sessions.
Declaration
SessionKey GetSessionContainingFastestLap()
  Returns
| Type | Description | 
|---|---|
| MAT.OCS.Core.SessionKey | 
IsInError(String, Int64)
Determines whether the Parameter data [is in error] for [the specified identifier] at the specified timestamp.
Declaration
Dictionary<SessionKey, 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.Collections.Generic.Dictionary<MAT.OCS.Core.SessionKey, System.Boolean> | True if the data is in Error  | 
      
LoadAndAdd(SessionKey, String)
Adds the specified session key.
Declaration
IClientSession LoadAndAdd(SessionKey sessionKey, string connectionString)
  Parameters
| Type | Name | Description | 
|---|---|---|
| MAT.OCS.Core.SessionKey | sessionKey | The session key.  | 
      
| System.String | connectionString | The connection string.  | 
      
Returns
| Type | Description | 
|---|---|
| IClientSession | 
LoadConfiguration(SessionKey)
Loads the configuration for an underlying SqlRace Session.
Declaration
void LoadConfiguration(SessionKey sessionKey)
  Parameters
| Type | Name | Description | 
|---|---|---|
| MAT.OCS.Core.SessionKey | sessionKey | The SQLRace Session Key.  | 
      
Remarks
This method will load all of the configuration for this session!
LoadParameters(IEnumerable<String>)
Loads configuration for the required parameterIdentifiers".
Declaration
void LoadParameters(IEnumerable<string> parameterIdentifiers)
  Parameters
| Type | Name | Description | 
|---|---|---|
| System.Collections.Generic.IEnumerable<System.String> | parameterIdentifiers | parameter identifiers required  | 
      
PromoteToPrimary(SessionKey)
Promote a Session to the Primary Slot
Declaration
SessionBase PromoteToPrimary(SessionKey key)
  Parameters
| Type | Name | Description | 
|---|---|---|
| MAT.OCS.Core.SessionKey | key | 
Returns
| Type | Description | 
|---|---|
| SessionBase | 
Remove(SessionKey)
Remove a Session
Declaration
bool Remove(SessionKey key)
  Parameters
| Type | Name | Description | 
|---|---|---|
| MAT.OCS.Core.SessionKey | key | Session Key to be removed  | 
      
Returns
| Type | Description | 
|---|---|
| System.Boolean | Whether the Session was successfully removed  | 
      
Remove(IEnumerable<SessionKey>)
Remove Sessions
Declaration
IEnumerable<SessionKey> Remove(IEnumerable<SessionKey> sessionsToRemove)
  Parameters
| Type | Name | Description | 
|---|---|---|
| System.Collections.Generic.IEnumerable<MAT.OCS.Core.SessionKey> | sessionsToRemove | List of Session Guids to Remove  | 
      
Returns
| Type | Description | 
|---|---|
| System.Collections.Generic.IEnumerable<MAT.OCS.Core.SessionKey> | Sessions that have been removed  | 
      
Remove(IEnumerable<IClientSession>)
Remove Sessions
Declaration
IEnumerable<SessionKey> Remove(IEnumerable<IClientSession> sessionsToRemove)
  Parameters
| Type | Name | Description | 
|---|---|---|
| System.Collections.Generic.IEnumerable<IClientSession> | sessionsToRemove | List of Sessions to Remove  | 
      
Returns
| Type | Description | 
|---|---|
| System.Collections.Generic.IEnumerable<MAT.OCS.Core.SessionKey> | Sessions that have been removed  | 
      
SetAutoFit(Boolean)
Sets AutoFitLaps on or off
Declaration
void SetAutoFit(bool autoFit)
  Parameters
| Type | Name | Description | 
|---|---|---|
| System.Boolean | autoFit | 
SetAutoFitLimit(Double)
Sets the AutoFit Limit
Declaration
void SetAutoFitLimit(double autoFitLimit)
  Parameters
| Type | Name | Description | 
|---|---|---|
| System.Double | autoFitLimit | % Threshold below which data will be stretched or compressed  | 
      
Remarks
The X-axis of the Overlay data is stretched or compressed so that the start and end of each lap matches the start and end of the lap in the primary set
SetDefaultSessionStartTimeOffset(Int64)
Sets the default session start time offset between this session and the master composite session.
Declaration
void SetDefaultSessionStartTimeOffset(long masterSessionStartTime)
  Parameters
| Type | Name | Description | 
|---|---|---|
| System.Int64 | masterSessionStartTime | The master session start time.  | 
      
SetEnabled(Boolean)
Set the enabled state of the composite session
Declaration
void SetEnabled(bool enabled)
  Parameters
| Type | Name | Description | 
|---|---|---|
| System.Boolean | enabled | The enabled state  | 
      
SetOffsetValue(Double)
Sets the X Axis offset value.
Declaration
void SetOffsetValue(double offset)
  Parameters
| Type | Name | Description | 
|---|---|---|
| System.Double | offset | The offset.  | 
      
SetOffsetValue(Int64)
Sets the Time offset value.
Declaration
void SetOffsetValue(long offset)
  Parameters
| Type | Name | Description | 
|---|---|---|
| System.Int64 | offset | The offset.  | 
      
SetXAxisParameter(String)
Sets the x axis parameter.
Declaration
void SetXAxisParameter(string identifier)
  Parameters
| Type | Name | Description | 
|---|---|---|
| System.String | identifier | The identifier.  | 
      
Events
ApplicationGroupsAdded
Event fired when application groups are added
Declaration
event EventHandler<SessionEventArgs> ApplicationGroupsAdded
  Event Type
| Type | Description | 
|---|---|
| System.EventHandler<SessionEventArgs> | 
ChannelsAdded
Event fired when channels are added
Declaration
event EventHandler<SessionEventArgs> ChannelsAdded
  Event Type
| Type | Description | 
|---|---|
| System.EventHandler<SessionEventArgs> | 
ConfigurationProcessed
Event fired when configuration has been processed (validated and queued for persistence).
Declaration
event EventHandler<SessionEventArgs> ConfigurationProcessed
  Event Type
| Type | Description | 
|---|---|
| System.EventHandler<SessionEventArgs> | 
ConversionsAdded
Event fired when conversions are added
Declaration
event EventHandler<SessionEventArgs> ConversionsAdded
  Event Type
| Type | Description | 
|---|---|
| System.EventHandler<SessionEventArgs> | 
ErrorDataAdded
Occurs when [error data added].
Declaration
event EventHandler<ItemErrorArgs> ErrorDataAdded
  Event Type
| Type | Description | 
|---|---|
| System.EventHandler<ItemErrorArgs> | 
ErrorDefinitionsAdded
Event fired when error definitions are added
Declaration
event EventHandler<SessionEventArgs> ErrorDefinitionsAdded
  Event Type
| Type | Description | 
|---|---|
| System.EventHandler<SessionEventArgs> | 
EventDataAdded
Occurs when [event data added].
Declaration
event EventHandler<ItemEventArgs> EventDataAdded
  Event Type
| Type | Description | 
|---|---|
| System.EventHandler<ItemEventArgs> | 
EventDefinitionsAdded
Event fired when event definitions are added
Declaration
event EventHandler<SessionEventArgs> EventDefinitionsAdded
  Event Type
| Type | Description | 
|---|---|
| System.EventHandler<SessionEventArgs> | 
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
event EventHandler<LapEventArgs> LapCompleted
  Event Type
| Type | Description | 
|---|---|
| System.EventHandler<LapEventArgs> | 
LapStarted
Event fired when a new lap starts (i.e. when a new lap is added.
Declaration
event EventHandler<LapEventArgs> LapStarted
  Event Type
| Type | Description | 
|---|---|
| System.EventHandler<LapEventArgs> | 
LapStatisticsCompleted
Event fired when Lap Statistics calculation has completed
Declaration
event EventHandler<LapStatisticsEventArgs> LapStatisticsCompleted
  Event Type
| Type | Description | 
|---|---|
| System.EventHandler<LapStatisticsEventArgs> | 
LapStatisticsPersisted
Event fired when bactch of Lap Statistics has persisted
Declaration
event EventHandler<LapStatisticsEventArgs> LapStatisticsPersisted
  Event Type
| Type | Description | 
|---|---|
| System.EventHandler<LapStatisticsEventArgs> | 
MessagingErrorOccurred
Event fired when an error occurs on a remote connection using messaging
Declaration
event EventHandler<MessagingErrorEventArgs> MessagingErrorOccurred
  Event Type
| Type | Description | 
|---|---|
| System.EventHandler<MESL.SqlRace.Messaging.Interface.MessagingErrorEventArgs> | 
NewFastestLap
Occurs when the fastest lap changed.
Declaration
event EventHandler<LapEventArgs> NewFastestLap
  Event Type
| Type | Description | 
|---|---|
| System.EventHandler<LapEventArgs> | 
OnAddChannelDataError
Occurs when there has been an error adding channel data to this Session.
Declaration
event EventHandler<AddChannelDataErrorEventArgs> OnAddChannelDataError
  Event Type
| Type | Description | 
|---|---|
| System.EventHandler<AddChannelDataErrorEventArgs> | 
OnDisposed
Event Fired when the CompositeSession is disposed
Declaration
event EventHandler OnDisposed
  Event Type
| Type | Description | 
|---|---|
| System.EventHandler | 
ParametersAdded
Event fired when parameters are added
Declaration
event EventHandler<SessionEventArgs> ParametersAdded
  Event Type
| Type | Description | 
|---|---|
| System.EventHandler<SessionEventArgs> | 
SessionAdded
Event Fired when a Session is Added.
Declaration
event EventHandler<CompositeSessionEventArgs> SessionAdded
  Event Type
| Type | Description | 
|---|---|
| System.EventHandler<CompositeSessionEventArgs> | 
SessionClosed
Event fired when session is closed.
Declaration
event EventHandler<SessionClosedArgs> SessionClosed
  Event Type
| Type | Description | 
|---|---|
| System.EventHandler<SessionClosedArgs> | 
SessionDetailChangedEventOccurred
Event fired when the session detail item is changed.
Declaration
event EventHandler<SessionDetailChangedEventArgs> SessionDetailChangedEventOccurred
  Event Type
| Type | Description | 
|---|---|
| System.EventHandler<SessionDetailChangedEventArgs> | 
SessionIdentifierChangedEventOccurred
Event fired when the session identifier changes.
Declaration
event EventHandler<SessionIdentifierChangedEventArgs> SessionIdentifierChangedEventOccurred
  Event Type
| Type | Description | 
|---|---|
| System.EventHandler<SessionIdentifierChangedEventArgs> | 
SessionNotAvailableEventOccurred
Event fired when a message is received for a session that is no longer available.
Declaration
event EventHandler<SessionNotAvailableEventArgs> SessionNotAvailableEventOccurred
  Event Type
| Type | Description | 
|---|---|
| System.EventHandler<SessionNotAvailableEventArgs> | 
SessionRemoved
Event Fired when a Session is Removed.
Declaration
event EventHandler<CompositeSessionEventArgs> SessionRemoved
  Event Type
| Type | Description | 
|---|---|
| System.EventHandler<CompositeSessionEventArgs> | 
SessionStatusChangedEventOccurred
Event fired when the session status changes.
Declaration
event EventHandler<SessionStatusChangedEventArgs> SessionStatusChangedEventOccurred
  Event Type
| Type | Description | 
|---|---|
| System.EventHandler<SessionStatusChangedEventArgs> | 
TelemetryStarted
Event fired when the first piece of data is written to the Session.
Declaration
event EventHandler<EventArgs> TelemetryStarted
  Event Type
| Type | Description | 
|---|---|
| System.EventHandler<System.EventArgs> |