RTI Connext C# API Version 7.2.0
Rti.Dds.Core.Policy.DataReaderResourceLimits Class Reference

Various settings that configure how a DataReader<T> allocates and uses physical memory for internal resources. More...

Inherits IEquatable< DataReaderResourceLimits >.

Public Member Functions

DataReaderResourceLimits With (Action< DataReaderResourceLimitsBuilder > build)
 Creates a new DataReaderResourceLimits with a set of changes specified in an Action More...
 
override int GetHashCode ()
 Gets the hash code More...
 
override bool Equals (object other)
 Compares for equality More...
 
bool Equals (DataReaderResourceLimits other)
 Compares for equality More...
 

Static Public Attributes

const int AutoMaxTotalInstances = 0
 This value is used to set MaxTotalInstances to ResourceLimits.MaxInstances. More...
 

Properties

int MaxRemoteWriters [get]
 The maximum number of remote writers from which a DataReader<T> may read, including all instances. More...
 
int MaxRemoteWritersPerInstance [get]
 The maximum number of remote writers from which a DataReader<T> may read a single instance. More...
 
int MaxSamplesPerRemoteWriter [get]
 The maximum number of out-of-order samples from a given remote Publication.DataWriter<T> that a DataReader<T> may store when maintaining a reliable connection to the Publication.DataWriter<T>. More...
 
int MaxInfos [get]
 The maximum number of info units that a DataReader<T> can use to store SampleInfo. More...
 
int InitialRemoteWriters [get]
 The initial number of remote writers from which a DataReader<T> may read, including all instances. More...
 
int InitialRemoteWritersPerInstance [get]
 The initial number of remote writers from which a DataReader<T> may read a single instance. More...
 
int InitialInfos [get]
 The initial number of info units that a DataReader<T> can have, which are used to store SampleInfo. More...
 
int InitialOutstandingReads [get]
 The initial number of outstanding calls to read/take (or one of their variants) on the same DataReader<T> for which one or more LoanedSamples<T> objects have not been disposed. More...
 
int MaxOutstandingReads [get]
 The maximum number of outstanding read/take calls (or one of their variants) on the same DataReader<T> for which one or more LoanedSamples<T> objects have not been disposed. More...
 
int MaxSamplesPerRead [get]
 The maximum number of data samples that the application can receive from the middleware in a single call to DataReader<T>.Read or DataReader<T>.Take. If more data exists in the middleware, the application will need to issue multiple read/take calls. More...
 
bool DisableFragmentationSupport [get]
 Determines whether the DataReader<T> can receive fragmented samples. More...
 
int MaxFragmentedSamples [get]
 The maximum number of samples for which the DataReader<T> may store fragments at a given point in time. More...
 
int InitialFragmentedSamples [get]
 The initial number of samples for which a DataReader<T> may store fragments. More...
 
int MaxFragmentedSamplesPerRemoteWriter [get]
 The maximum number of samples per remote writer for which a DataReader<T> may store fragments. More...
 
int MaxFragmentsPerSample [get]
 Maximum number of fragments for a single sample. More...
 
bool DynamicallyAllocateFragmentedSamples [get]
 Determines whether the DataReader<T> pre-allocates storage for storing fragmented samples. More...
 
int MaxTotalInstances [get]
 Maximum number of instances for which a DataReader will keep state. More...
 
int MaxRemoteVirtualWriters [get]
 The maximum number of remote virtual writers from which a DataReader<T> may read, including all instances. More...
 
int InitialRemoteVirtualWriters [get]
 The initial number of remote virtual writers from which a DataReader<T> may read, including all instances. More...
 
int MaxRemoteVirtualWritersPerInstance [get]
 The maximum number of virtual remote writers that can be associated with an instance. More...
 
int InitialRemoteVirtualWritersPerInstance [get]
 The initial number of virtual remote writers per instance. More...
 
int MaxRemoteWritersPerSample [get]
 The maximum number of remote writers allowed to write the same sample. More...
 
int MaxQueryConditionFilters [get]
 The maximum number of query condition filters a reader is allowed. More...
 
int MaxAppAckResponseLength [get]
 Maximum length of application-level acknowledgment response data More...
 
bool KeepMinimumStateForInstances [get]
 Whether or not keep a minimum instance state for up to MaxTotalInstances. More...
 
int InitialTopicQueries [get]
 The initial number of TopicQueries allocated by a DataReader<T>. More...
 
int MaxTopicQueries [get]
 The maximum number of active TopicQueries that a DataReader<T> can create. More...
 
AllocationSettings ShmemRefTransferModeAttachedSegmentAllocation [get]
 Allocation resource for the shared memory segments attached by the DataReader<T>. More...
 
InstanceReplacementSettings InstanceReplacement [get]
 Sets the kind of instances allowed to be replaced for each instance state (Omg.Dds.Subscription.InstanceState) when a DataReader reaches ResourceLimits.MaxInstances. More...
 
Duration AutopurgeRemoteNotAliveWriterDelay [get]
 Maximum duration for which the DataReader<T> will maintain information regarding a Publication.DataWriter<T> once the Publication.DataWriter<T> has become not alive. More...
 
Duration AutopurgeRemoteVirtualWriterDelay [get]
 Maximum duration for which the DataReader<T> will maintain information regarding a virtual Publication.DataWriter<T> once the Publication.DataWriter<T> has become not alive. More...
 
static DataReaderResourceLimits Default [get]
 Singleton containing the default value of a DataReaderResourceLimits More...
 

Detailed Description

Various settings that configure how a DataReader<T> allocates and uses physical memory for internal resources.

The full documentation is available in the C API: DDS_DataReaderResourceLimitsQosPolicy

Member Function Documentation

◆ With()

DataReaderResourceLimits Rti.Dds.Core.Policy.DataReaderResourceLimits.With ( Action< DataReaderResourceLimitsBuilder build)
inline

Creates a new DataReaderResourceLimits with a set of changes specified in an Action

Parameters
buildAn Action (typically a lambda function) that receives a modifiable object with the current values of this DataReaderResourceLimits.
Returns
A new DataReaderResourceLimits with the changes applied by the Action

◆ GetHashCode()

override int Rti.Dds.Core.Policy.DataReaderResourceLimits.GetHashCode ( )
inline

Gets the hash code

◆ Equals() [1/2]

override bool Rti.Dds.Core.Policy.DataReaderResourceLimits.Equals ( object  other)

Compares for equality

◆ Equals() [2/2]

bool Rti.Dds.Core.Policy.DataReaderResourceLimits.Equals ( DataReaderResourceLimits  other)
inline

Compares for equality

Field Documentation

◆ AutoMaxTotalInstances

const int Rti.Dds.Core.Policy.DataReaderResourceLimits.AutoMaxTotalInstances = 0
static

This value is used to set MaxTotalInstances to ResourceLimits.MaxInstances.

The full documentation is available in the C API: DDSDataReaderResourceLimitsQosPolicyAUTO_MAX_TOTAL_INSTANCES

Property Documentation

◆ MaxRemoteWriters

int Rti.Dds.Core.Policy.DataReaderResourceLimits.MaxRemoteWriters
get

The maximum number of remote writers from which a DataReader<T> may read, including all instances.

The full documentation is available in the C API: DDS_DataReaderResourceLimitsQosPolicy_max_remote_writers

◆ MaxRemoteWritersPerInstance

int Rti.Dds.Core.Policy.DataReaderResourceLimits.MaxRemoteWritersPerInstance
get

The maximum number of remote writers from which a DataReader<T> may read a single instance.

The full documentation is available in the C API: DDS_DataReaderResourceLimitsQosPolicy_max_remote_writers_per_instance

◆ MaxSamplesPerRemoteWriter

int Rti.Dds.Core.Policy.DataReaderResourceLimits.MaxSamplesPerRemoteWriter
get

The maximum number of out-of-order samples from a given remote Publication.DataWriter<T> that a DataReader<T> may store when maintaining a reliable connection to the Publication.DataWriter<T>.

The full documentation is available in the C API: DDS_DataReaderResourceLimitsQosPolicy_max_samples_per_remote_writer

◆ MaxInfos

int Rti.Dds.Core.Policy.DataReaderResourceLimits.MaxInfos
get

The maximum number of info units that a DataReader<T> can use to store SampleInfo.

The full documentation is available in the C API: DDS_DataReaderResourceLimitsQosPolicy_max_infos

◆ InitialRemoteWriters

int Rti.Dds.Core.Policy.DataReaderResourceLimits.InitialRemoteWriters
get

The initial number of remote writers from which a DataReader<T> may read, including all instances.

The full documentation is available in the C API: DDS_DataReaderResourceLimitsQosPolicy_initial_remote_writers

◆ InitialRemoteWritersPerInstance

int Rti.Dds.Core.Policy.DataReaderResourceLimits.InitialRemoteWritersPerInstance
get

The initial number of remote writers from which a DataReader<T> may read a single instance.

The full documentation is available in the C API: DDS_DataReaderResourceLimitsQosPolicy_initial_remote_writers_per_instance

◆ InitialInfos

int Rti.Dds.Core.Policy.DataReaderResourceLimits.InitialInfos
get

The initial number of info units that a DataReader<T> can have, which are used to store SampleInfo.

The full documentation is available in the C API: DDS_DataReaderResourceLimitsQosPolicy_initial_infos

◆ InitialOutstandingReads

int Rti.Dds.Core.Policy.DataReaderResourceLimits.InitialOutstandingReads
get

The initial number of outstanding calls to read/take (or one of their variants) on the same DataReader<T> for which one or more LoanedSamples<T> objects have not been disposed.

The full documentation is available in the C API: DDS_DataReaderResourceLimitsQosPolicy_initial_outstanding_reads

◆ MaxOutstandingReads

int Rti.Dds.Core.Policy.DataReaderResourceLimits.MaxOutstandingReads
get

The maximum number of outstanding read/take calls (or one of their variants) on the same DataReader<T> for which one or more LoanedSamples<T> objects have not been disposed.

The full documentation is available in the C API: DDS_DataReaderResourceLimitsQosPolicy_max_outstanding_reads

◆ MaxSamplesPerRead

int Rti.Dds.Core.Policy.DataReaderResourceLimits.MaxSamplesPerRead
get

The maximum number of data samples that the application can receive from the middleware in a single call to DataReader<T>.Read or DataReader<T>.Take. If more data exists in the middleware, the application will need to issue multiple read/take calls.

The full documentation is available in the C API: DDS_DataReaderResourceLimitsQosPolicy_max_samples_per_read

◆ DisableFragmentationSupport

bool Rti.Dds.Core.Policy.DataReaderResourceLimits.DisableFragmentationSupport
get

Determines whether the DataReader<T> can receive fragmented samples.

The full documentation is available in the C API: DDS_DataReaderResourceLimitsQosPolicy_disable_fragmentation_support

◆ MaxFragmentedSamples

int Rti.Dds.Core.Policy.DataReaderResourceLimits.MaxFragmentedSamples
get

The maximum number of samples for which the DataReader<T> may store fragments at a given point in time.

The full documentation is available in the C API: DDS_DataReaderResourceLimitsQosPolicy_max_fragmented_samples

◆ InitialFragmentedSamples

int Rti.Dds.Core.Policy.DataReaderResourceLimits.InitialFragmentedSamples
get

The initial number of samples for which a DataReader<T> may store fragments.

The full documentation is available in the C API: DDS_DataReaderResourceLimitsQosPolicy_initial_fragmented_samples

◆ MaxFragmentedSamplesPerRemoteWriter

int Rti.Dds.Core.Policy.DataReaderResourceLimits.MaxFragmentedSamplesPerRemoteWriter
get

The maximum number of samples per remote writer for which a DataReader<T> may store fragments.

The full documentation is available in the C API: DDS_DataReaderResourceLimitsQosPolicy_max_fragmented_samples_per_remote_writer

◆ MaxFragmentsPerSample

int Rti.Dds.Core.Policy.DataReaderResourceLimits.MaxFragmentsPerSample
get

Maximum number of fragments for a single sample.

The full documentation is available in the C API: DDS_DataReaderResourceLimitsQosPolicy_max_fragments_per_sample

◆ DynamicallyAllocateFragmentedSamples

bool Rti.Dds.Core.Policy.DataReaderResourceLimits.DynamicallyAllocateFragmentedSamples
get

Determines whether the DataReader<T> pre-allocates storage for storing fragmented samples.

The full documentation is available in the C API: DDS_DataReaderResourceLimitsQosPolicy_dynamically_allocate_fragmented_samples

◆ MaxTotalInstances

int Rti.Dds.Core.Policy.DataReaderResourceLimits.MaxTotalInstances
get

Maximum number of instances for which a DataReader will keep state.

The full documentation is available in the C API: DDS_DataReaderResourceLimitsQosPolicy_max_total_instances

◆ MaxRemoteVirtualWriters

int Rti.Dds.Core.Policy.DataReaderResourceLimits.MaxRemoteVirtualWriters
get

The maximum number of remote virtual writers from which a DataReader<T> may read, including all instances.

The full documentation is available in the C API: DDS_DataReaderResourceLimitsQosPolicy_max_remote_virtual_writers

◆ InitialRemoteVirtualWriters

int Rti.Dds.Core.Policy.DataReaderResourceLimits.InitialRemoteVirtualWriters
get

The initial number of remote virtual writers from which a DataReader<T> may read, including all instances.

The full documentation is available in the C API: DDS_DataReaderResourceLimitsQosPolicy_initial_remote_virtual_writers

◆ MaxRemoteVirtualWritersPerInstance

int Rti.Dds.Core.Policy.DataReaderResourceLimits.MaxRemoteVirtualWritersPerInstance
get

The maximum number of virtual remote writers that can be associated with an instance.

The full documentation is available in the C API: DDS_DataReaderResourceLimitsQosPolicy_max_remote_virtual_writers_per_instance

◆ InitialRemoteVirtualWritersPerInstance

int Rti.Dds.Core.Policy.DataReaderResourceLimits.InitialRemoteVirtualWritersPerInstance
get

The initial number of virtual remote writers per instance.

The full documentation is available in the C API: DDS_DataReaderResourceLimitsQosPolicy_initial_remote_virtual_writers_per_instance

◆ MaxRemoteWritersPerSample

int Rti.Dds.Core.Policy.DataReaderResourceLimits.MaxRemoteWritersPerSample
get

The maximum number of remote writers allowed to write the same sample.

The full documentation is available in the C API: DDS_DataReaderResourceLimitsQosPolicy_max_remote_writers_per_sample

◆ MaxQueryConditionFilters

int Rti.Dds.Core.Policy.DataReaderResourceLimits.MaxQueryConditionFilters
get

The maximum number of query condition filters a reader is allowed.

The full documentation is available in the C API: DDS_DataReaderResourceLimitsQosPolicy_max_query_condition_filters

◆ MaxAppAckResponseLength

int Rti.Dds.Core.Policy.DataReaderResourceLimits.MaxAppAckResponseLength
get

Maximum length of application-level acknowledgment response data

The full documentation is available in the C API: DDS_DataReaderResourceLimitsQosPolicy_max_app_ack_response_length

◆ KeepMinimumStateForInstances

bool Rti.Dds.Core.Policy.DataReaderResourceLimits.KeepMinimumStateForInstances
get

Whether or not keep a minimum instance state for up to MaxTotalInstances.

The full documentation is available in the C API: DDS_DataReaderResourceLimitsQosPolicy_keep_minimum_state_for_instances

◆ InitialTopicQueries

int Rti.Dds.Core.Policy.DataReaderResourceLimits.InitialTopicQueries
get

The initial number of TopicQueries allocated by a DataReader<T>.

The full documentation is available in the C API: DDS_DataReaderResourceLimitsQosPolicy_initial_topic_queries

◆ MaxTopicQueries

int Rti.Dds.Core.Policy.DataReaderResourceLimits.MaxTopicQueries
get

The maximum number of active TopicQueries that a DataReader<T> can create.

The full documentation is available in the C API: DDS_DataReaderResourceLimitsQosPolicy_max_topic_queries

◆ ShmemRefTransferModeAttachedSegmentAllocation

AllocationSettings Rti.Dds.Core.Policy.DataReaderResourceLimits.ShmemRefTransferModeAttachedSegmentAllocation
get

Allocation resource for the shared memory segments attached by the DataReader<T>.

The full documentation is available in the C API: DDS_DataReaderResourceLimitsQosPolicy_shmem_ref_transfer_mode_attached_segment_allocation

◆ InstanceReplacement

InstanceReplacementSettings Rti.Dds.Core.Policy.DataReaderResourceLimits.InstanceReplacement
get

Sets the kind of instances allowed to be replaced for each instance state (Omg.Dds.Subscription.InstanceState) when a DataReader reaches ResourceLimits.MaxInstances.

The full documentation is available in the C API: DDS_DataReaderResourceLimitsQosPolicy_instance_replacement

◆ AutopurgeRemoteNotAliveWriterDelay

Duration Rti.Dds.Core.Policy.DataReaderResourceLimits.AutopurgeRemoteNotAliveWriterDelay
get

Maximum duration for which the DataReader<T> will maintain information regarding a Publication.DataWriter<T> once the Publication.DataWriter<T> has become not alive.

The full documentation is available in the C API: DDS_DataReaderResourceLimitsQosPolicy_autopurge_remote_not_alive_writer_delay

◆ AutopurgeRemoteVirtualWriterDelay

Duration Rti.Dds.Core.Policy.DataReaderResourceLimits.AutopurgeRemoteVirtualWriterDelay
get

Maximum duration for which the DataReader<T> will maintain information regarding a virtual Publication.DataWriter<T> once the Publication.DataWriter<T> has become not alive.

The full documentation is available in the C API: DDS_DataReaderResourceLimitsQosPolicy_autopurge_remote_virtual_writer_delay

◆ Default

DataReaderResourceLimits Rti.Dds.Core.Policy.DataReaderResourceLimits.Default
staticget

Singleton containing the default value of a DataReaderResourceLimits