Table of Contents

Struct ExtendedTelemetry

Namespace
rF2SharedMemoryNet.RF2Data.Structs
Assembly
rF2SharedMemoryNet.dll

Represents the extended data structure for rFactor 2, providing detailed information about the simulation state, session transitions, plugin configurations, and various control inputs.

public struct ExtendedTelemetry
Inherited Members

Remarks

This structure is used to capture and expose extended simulation data for rFactor 2, including session timing, plugin states, damage tracking, and control input buffers. It is primarily intended for advanced integrations and plugins interacting with the rFactor 2 API.

The structure includes fields for session timing, plugin-specific data, and direct memory access flags, among others. Some fields, such as SCRPluginEnabled and SCRPluginDoubleFileType, are specific to the Stock Car Rules plugin.

Note that certain fields, such as UnsubscribedBuffersMask, may be writable by clients in future API updates.

Fields

CurrentPitSpeedLimit

Represents the current pit speed limit in meters per second.

public float CurrentPitSpeedLimit

Field Value

float

DirectMemoryAccessEnabled

Indicates whether direct memory access is enabled.

public byte DirectMemoryAccessEnabled

Field Value

byte

DisplayedMessageUpdateCapture

Represents a byte array used to store the displayed message update capture.

public byte[] DisplayedMessageUpdateCapture

Field Value

byte[]

Remarks

The array has a fixed size of 128 bytes.

HWControlInputEnabled

HWControl input buffer is enabled.

public byte HWControlInputEnabled

Field Value

byte

InRealtimeFC

Represents the current state of the system in real-time mode.

public byte InRealtimeFC

Field Value

byte

Is64bit

Is 64bit plugin?

public byte Is64bit

Field Value

byte

LSIOrderInstructionMessage

Represents the order instruction message for a specific rule set.

public byte[] LSIOrderInstructionMessage

Field Value

byte[]

Remarks

Array is fixed in size, defined by MAX_RULES_INSTRUCTION_MSG_LEN.

LSIPhaseMessage

Represents a message used in the LSI phase, stored as a fixed-length array of bytes.

public byte[] LSIPhaseMessage

Field Value

byte[]

Remarks

The array is marshaled as a fixed-size buffer with a length defined by MAX_RULES_INSTRUCTION_MSG_LEN. This member is typically used for interop scenarios where a fixed-size buffer is required.

LSIPitStateMessage

Represents a message containing pit state information for LSIs (Local Shared Instructions).

public byte[] LSIPitStateMessage

Field Value

byte[]

Remarks

The message is stored as a fixed-length byte array with a maximum size defined by MAX_RULES_INSTRUCTION_MSG_LEN.

LSIRulesInstructionMessage

Represents a fixed-size array of bytes containing the rules instruction message.

public byte[] LSIRulesInstructionMessage

Field Value

byte[]

Remarks

The array is marshaled as a fixed-size buffer with a length defined by MAX_RULES_INSTRUCTION_MSG_LEN. This member is typically used for interop scenarios where a specific buffer size is required.

LastHistoryMessage

Represents the last history message received, stored as a byte array.

public byte[] LastHistoryMessage

Field Value

byte[]

Remarks

The array is fixed in size, defined by MAX_STATUS_MSG_LEN.

MultimediaThreadStarted

Indicates whether the multimedia thread has started.

public byte MultimediaThreadStarted

Field Value

byte

Physics

Represents the physics options for the session.

public PhysicsOptions Physics

Field Value

PhysicsOptions

Remarks

This property contains configuration settings related to the physics engine. The options are updated at the start of each session.

PluginControlInputEnabled

Plugin control input buffer is enabled.

public byte PluginControlInputEnabled

Field Value

byte

RulesControlInputEnabled

RulesControl input buffer is enabled.

public byte RulesControlInputEnabled

Field Value

byte

SCRPluginDoubleFileType

Stock Car Rules plugin DoubleFileType value, only meaningful if mSCRPluginEnabled is true.

public int SCRPluginDoubleFileType

Field Value

int

SCRPluginEnabled

Stock Car Rules plugin is enabled.

public byte SCRPluginEnabled

Field Value

byte

SessionStarted

Indicates whether a session has started.

public byte SessionStarted

Field Value

byte

SessionTransitionCapture

Represents the session transition capture for RF2, containing partial internal data captured during session transitions.

public SessionTransitionCapture SessionTransitionCapture

Field Value

SessionTransitionCapture

SimulationThreadStarted

Indicates whether the simulation thread has started.

public byte SimulationThreadStarted

Field Value

byte

StatusMessage

Represents a status message as a fixed-length array of bytes.

public byte[] StatusMessage

Field Value

byte[]

Remarks

The array is marshaled as a fixed-size buffer with a length defined by MAX_STATUS_MSG_LEN. This member is typically used for interop scenarios where a fixed-size buffer is required.

TicksLSIOrderInstructionMessageUpdated

Represents the timestamp, in ticks, of the last update to the LSI order instruction message.

public long TicksLSIOrderInstructionMessageUpdated

Field Value

long

TicksLSIPhaseMessageUpdated

Represents the timestamp, in ticks, of when the last LSI phase message was updated.

public long TicksLSIPhaseMessageUpdated

Field Value

long

TicksLSIPitStateMessageUpdated

Represents the timestamp, in ticks, when the last LSI pit state message was updated.

public long TicksLSIPitStateMessageUpdated

Field Value

long

TicksLSIRulesInstructionMessageUpdated

Represents the timestamp, in ticks, of the last update to the FCY rules instruction message.

public long TicksLSIRulesInstructionMessageUpdated

Field Value

long

TicksLastHistoryMessageUpdated

Represents the timestamp, in ticks, when the last message history was updated.

public long TicksLastHistoryMessageUpdated

Field Value

long

TicksSessionEnded

Represents the timestamp, in ticks, when the session ended.

public long TicksSessionEnded

Field Value

long

TicksSessionStarted

Represents the timestamp, in ticks, when the session started.

public long TicksSessionStarted

Field Value

long

TicksStatusMessageUpdated

Represents the timestamp, in ticks, when the status message was last updated.

public long TicksStatusMessageUpdated

Field Value

long

TrackedDamages

Represents an array of tracked damage information for RF2 entities.

public TrackedDamage[] TrackedDamages

Field Value

TrackedDamage[]

Remarks

The array is fixed in size, determined by MAX_MAPPED_IDS. Each element in the array corresponds to a specific tracked damage instance.

UnsubscribedBuffersMask

Currently active UnsbscribedBuffersMask value. This will be allowed for clients to write to in the future, but not yet.

public int UnsubscribedBuffersMask

Field Value

int

Version

API version

public byte[] Version

Field Value

byte[]

VersionUpdateBegin

Incremented right before buffer is written to.

public uint VersionUpdateBegin

Field Value

uint

VersionUpdateEnd

Incremented after buffer write is done.

public uint VersionUpdateEnd

Field Value

uint

WeatherControlInputEnabled

WeatherControl input buffer is enabled.

public byte WeatherControlInputEnabled

Field Value

byte