Table of Contents

Class RvtReaderOptions

Namespace
RvtIO
Assembly
RvtIO.dll

Configuration for RVT file reading.

public class RvtReaderOptions

Inheritance

Inherited Members

Properties

DiagnosticOutput

Write diagnostic/progress messages to this TextWriter. Null for silent operation.

public TextWriter? DiagnosticOutput { get; set; }

Property Value

TextWriter?

Diagnostics

Collects the streams read, how much of each decoded, and the limits that cut a stream (see RvtIO.ExportReport). Null to collect nothing.

public RvtReadDiagnostics? Diagnostics { get; set; }

Property Value

RvtReadDiagnostics?

ExternalDumpClassPrefix

Regular expression for the prefix that class names in the external dump carry in front of the class name proper. Null uses the default shape (capital, lowercase, capital, lowercase, followed by a capital).

public string? ExternalDumpClassPrefix { get; set; }

Property Value

string?

ExternalDumpPath

Path to an optional text dump of the model for CompoundStructure layer extraction. Null to skip.

public string? ExternalDumpPath { get; set; }

Property Value

string?

R22Layout

Rewrite the partition streams of a file that is read by its own class schema into the Revit 2022 layout, so that the geometry and element readers written for 2022 see them (see RvtIO.Parsing.R22Transcoder). The reader keeps the layout it ships only for a file of Revit 2022 (or of an unknown release); any other file whose own schema it can read is read by that schema, and its element geometry is decoded only with this option (measured on samples of Revit 2020 and 2025; the Revit 2022 samples decode the same either way). Off by default; the command line tool turns it on for an IFC export.

public bool R22Layout { get; set; }

Property Value

bool

RaiseLimits

Raise the limits that cut a stream while it is recovered from damage: the output of the element table recovery (256 MiB) and its loop guard (4096 iterations) become the platform array length and unbounded. For very large models. Off by default.

public bool RaiseLimits { get; set; }

Property Value

bool

ResolveCurrentCopies

When several partition streams hold a copy of the same element, keep the current copy named by the file's document increment table and drop the superseded ones before decoding (see RvtIO.Parsing.RecordRouting). On by default; set it to false to decode every copy, as releases before this default did. A file with one partition stream is read the same either way.

public bool ResolveCurrentCopies { get; set; }

Property Value

bool

RevitLocalizationDirectory Deprecated

Ignored: the localized system family names are built into the library. Kept so that existing callers still compile.

[Obsolete("Ignored: texts are built in.")]
public string? RevitLocalizationDirectory { get; set; }

Property Value

string?

SeparateFacesWithDistinctOpenings

Keep two faces that share their outline but not their openings as two faces (the decoded geometry merges faces by the corners of their outline only). The current profile has them as two faces: the cap of a window frame and the cap of the glazing bar behind it are one rectangle with different holes. Off by default, which keeps the geometry the legacy profile export is built on.

public bool SeparateFacesWithDistinctOpenings { get; set; }

Property Value

bool

SystemFamilyNameLocale

Locale code (such as "ENU" or "RUS") of the built-in texts that name system families, instead of the locale the file was saved in. The current profile names them in English whatever the file's locale. Null keeps the saved locale.

public string? SystemFamilyNameLocale { get; set; }

Property Value

string?