Class HeuristicModelProvider
The HeuristicModelProvider encapsulates the underlying IModel implementations we use
to provide different persistance performance characteristics, depending on the use-case and the consumer's inputs.
Inheritance
System.Object
HeuristicModelProvider
Inherited Members
System.Object.ToString()
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
Assembly: Xbim.IO.Esent.dll
Syntax
public class HeuristicModelProvider : BaseModelProvider, IModelProvider
Fields
|
Improve this Doc
View Source
DefaultIfcDatabaseSizeThreshHoldMb
The default largest size in MB for an IFC file to be loaded into memory, above this size the store will choose to use
the database storage media to minimise the memory footprint. This size can be set in the config file or in the open
statement of this store
Declaration
public static double DefaultIfcDatabaseSizeThreshHoldMb
Field Value
Type |
Description |
System.Double |
|
Properties
|
Improve this Doc
View Source
Capabilities
Describes the capabilities of the provider
Declaration
public override StoreCapabilities Capabilities { get; }
Property Value
Overrides
Methods
|
Improve this Doc
View Source
Close(IModel)
Closes a Model store, releasing any resources
Declaration
public override void Close(IModel model)
Parameters
Type |
Name |
Description |
IModel |
model |
|
Overrides
|
Improve this Doc
View Source
Create(XbimSchemaVersion, String)
Creates a new Persistent model store
Declaration
public override IModel Create(XbimSchemaVersion ifcVersion, string dbPath)
Parameters
Returns
Overrides
|
Improve this Doc
View Source
Create(XbimSchemaVersion, XbimStoreType)
Creates a new model store, with the consumer choosing the implementation
Declaration
public override IModel Create(XbimSchemaVersion ifcVersion, XbimStoreType storageType)
Parameters
Returns
Overrides
|
Improve this Doc
View Source
GetLocation(IModel)
Gets the location of a model, where it is a persisted model store.
Declaration
public override string GetLocation(IModel model)
Parameters
Type |
Name |
Description |
IModel |
model |
|
Returns
Type |
Description |
System.String |
|
Overrides
|
Improve this Doc
View Source
GetXbimSchemaVersion(String)
Gets the IFC Schema version for a model
Declaration
public override XbimSchemaVersion GetXbimSchemaVersion(string modelPath)
Parameters
Type |
Name |
Description |
System.String |
modelPath |
Path to a model in any supported format (IFC, IfcXml, IfcZip, or XBIM)
|
Returns
Overrides
|
Improve this Doc
View Source
Open(Stream, StorageType, XbimSchemaVersion, XbimModelType, XbimDBAccess, ReportProgressDelegate, Int32)
Opens a model from the provided stream
Declaration
public override IModel Open(Stream stream, StorageType dataType, XbimSchemaVersion schema, XbimModelType modelType, XbimDBAccess accessMode = XbimDBAccess.Read, ReportProgressDelegate progDelegate = null, int codePageOverride = -1)
Parameters
Returns
Overrides
|
Improve this Doc
View Source
Open(String, XbimSchemaVersion, Nullable<Double>, ReportProgressDelegate, XbimDBAccess, Int32)
Opens a model from the provided path, inferring model implementation based on format and model size
Declaration
public override IModel Open(string path, XbimSchemaVersion schemaVersion, double? ifcDatabaseSizeThreshHold = null, ReportProgressDelegate progDelegate = null, XbimDBAccess accessMode = XbimDBAccess.Read, int codePageOverride = -1)
Parameters
Type |
Name |
Description |
System.String |
path |
Path to the model file, in any support IFC or XBIM format
|
XbimSchemaVersion |
schemaVersion |
|
System.Nullable<System.Double> |
ifcDatabaseSizeThreshHold |
|
ReportProgressDelegate |
progDelegate |
|
XbimDBAccess |
accessMode |
|
System.Int32 |
codePageOverride |
|
Returns
Overrides
|
Improve this Doc
View Source
Persist(IModel, String, ReportProgressDelegate)
Persists the model to a permanent store
Declaration
public override void Persist(IModel model, string fileName, ReportProgressDelegate progDelegate = null)
Parameters
Overrides
Implements