The ImportNotifier class is a smart-pointer that is tied to a file import. More...
#include <sprk_exchange.h>
Public Member Functions | |
ImportNotifier () | |
The default constructor creates an ImportNotifier object which is not tied to any file import. More... | |
ImportNotifier (ImportNotifier const &in_that) | |
The copy constructor creates a new ImportNotifier object that is associated with the same file import as the source ImportNotifier. More... | |
ImportNotifier (IONotifier const &in_that) | |
The conversion constructor creates a new derived ImportNotifier object from a base IONotifier object. More... | |
ImportNotifier (ImportNotifier &&in_that) | |
The move constructor creates an ImportNotifier by transferring the underlying impl of the rvalue reference to this ImportNotifier thereby avoiding a copy and allocation. More... | |
ImportNotifier & | operator= (ImportNotifier &&in_that) |
The move assignment operator transfers the underlying impl of the rvalue reference to this ImportNotifier thereby avoiding a copy. More... | |
virtual | ~ImportNotifier () |
HPS::Type | ObjectType () const |
ImportNotifier & | operator= (ImportNotifier const &in_that) |
Associate this ImportNotifier with the same file import as the source ImportNotifier. More... | |
void | Assign (ImportNotifier const &in_that) |
Associate this ImportNotifier with the same file import as the source ImportNotifier. More... | |
Exchange::CADModel | GetCADModel () const |
Get the CADModel for the file import. More... | |
A3DRWParamsPrcReadHelper * | GetPRCReadHelper () const |
Get the PRC Read Helper for the file import. More... | |
Time | GetImportTime () const |
Get the number of milliseconds it took Exchange to read the CAD file(s) and generate the corresponding PRC data. More... | |
Time | GetParseTime () const |
Get the number of milliseconds it took Visualize to parse the PRC data and create the corresponding scene graph. More... | |
void | Assign (IONotifier const &in_that) |
Associate this IONotifier with the same file IO operation as the source IONotifier. More... | |
IONotifier & | Wait () |
Cause this thread to sleep until the asynchronous file IO operation associated with this notifier is complete. More... | |
IOResult | Status () const |
Query the status of the file IO operation for this notifier. More... | |
IOResult | Status (float &out_percent_complete) const |
Query the status and completion percentage of the file IO for this notifier. More... | |
IONotifier & | Cancel () |
Requests to cancel the asynchronous file IO if it is still in progress. More... | |
virtual HPS::Type | Type () const |
This function returns the true type of the underlying object. More... | |
virtual bool | Empty () const |
Indicates whether this object has any values set on it. More... | |
virtual void | Reset () |
Resets this object to its initial, uninitialized state. More... | |
bool | HasType (HPS::Type in_mask) const |
This function indicates whether this Object has the given Type mask. More... | |
intptr_t | GetClassID () const |
Returns a unique identifier that is shared by all objects of the same class. More... | |
intptr_t | GetInstanceID () const |
Returns an identifier that can be used to identify which instance of a class an object is. More... | |
Static Public Member Functions | |
template<typename T > | |
static intptr_t | ClassID () |
Unique identifier for this class. More... | |
Static Public Attributes | |
static const HPS::Type | staticType = HPS::Type::ExchangeImportNotifier |
The ImportNotifier class is a smart-pointer that is tied to a file import.
It is used to interact with an ongoing import or get the results from a completed import.
HPS::Exchange::ImportNotifier::ImportNotifier | ( | ) |
The default constructor creates an ImportNotifier object which is not tied to any file import.
HPS::Exchange::ImportNotifier::ImportNotifier | ( | ImportNotifier const & | in_that | ) |
The copy constructor creates a new ImportNotifier object that is associated with the same file import as the source ImportNotifier.
in_that | The source ImportNotifier to copy. |
HPS::Exchange::ImportNotifier::ImportNotifier | ( | IONotifier const & | in_that | ) |
The conversion constructor creates a new derived ImportNotifier object from a base IONotifier object.
The copy will only be successful if the source notifier is really an upcast of this notifier type. Otherwise the copy will fail and the resulting ImportNotifier will be invalid.
in_that | The source IONotifier to copy. |
HPS::Exchange::ImportNotifier::ImportNotifier | ( | ImportNotifier && | in_that | ) |
The move constructor creates an ImportNotifier by transferring the underlying impl of the rvalue reference to this ImportNotifier thereby avoiding a copy and allocation.
in_that | An rvalue reference to an ImportNotifier to take the impl from. |
|
virtual |
void HPS::Exchange::ImportNotifier::Assign | ( | ImportNotifier const & | in_that | ) |
Associate this ImportNotifier with the same file import as the source ImportNotifier.
in_that | The source ImportNotifier for the assignment. |
|
inherited |
Associate this IONotifier with the same file IO operation as the source IONotifier.
in_that | The source IONotifier for the assignment. |
|
inherited |
Requests to cancel the asynchronous file IO if it is still in progress.
The Cancel() function will return synchronously, however there may be some delay between when the cancel request is made and when the asynchronous file IO stops. Call Wait() to ensure that the asynchronous file IO operation has stopped.
|
inlinestaticinherited |
Unique identifier for this class.
Note: this method uses construction of static objects. If used in a constructor, it should be used in the body not the initializer list.
|
inlinevirtualinherited |
Indicates whether this object has any values set on it.
Reimplemented in HPS::STL::ImportResultsKit, HPS::STL::ImportOptionsKit, HPS::OBJ::ImportResultsKit, HPS::OBJ::ImportOptionsKit, HPS::Hardcopy::File::ExportOptionsKit, HPS::Stream::ExportOptionsKit, HPS::Stream::ImportResultsKit, HPS::Stream::ImportOptionsKit, HPS::PointCloud::ImportOptionsKit, HPS::PointCloud::ImportResultsKit, HPS::UpdateOptionsKit, HPS::HighlightSearchOptionsKit, HPS::HighlightOptionsKit, HPS::SelectionOptionsKit, HPS::SearchOptionsKit, HPS::CutGeometryGatheringOptionsKit, HPS::ShapeKit, HPS::ShaderKit, HPS::Shader::ImportOptionsKit, HPS::ImageKit, HPS::Image::ImportOptionsKit, HPS::Image::ExportOptionsKit, HPS::TextureOptionsKit, HPS::LinePatternKit, HPS::LinePatternParallelKit, HPS::LinePatternOptionsKit, HPS::GlyphKit, HPS::ApplicationWindowOptionsKit, HPS::OffScreenWindowOptionsKit, HPS::StandAloneWindowOptionsKit, HPS::GridKit, HPS::PolygonKit, HPS::MeshKit, HPS::ShellKit, HPS::ShellRelationResultsKit, HPS::ShellRelationOptionsKit, HPS::ShellOptimizationOptionsKit, HPS::TextKit, HPS::EllipticalArcKit, HPS::EllipseKit, HPS::TrimKit, HPS::NURBSSurfaceKit, HPS::NURBSCurveKit, HPS::SpotlightKit, HPS::InfiniteLineKit, HPS::CuttingSectionKit, HPS::CircularWedgeKit, HPS::CircularArcKit, HPS::CircleKit, HPS::SphereKit, HPS::CylinderKit, HPS::DistantLightKit, HPS::MarkerKit, HPS::LineKit, HPS::AttributeLockKit, HPS::FontInfoState, HPS::WindowInfoKit, HPS::DebuggingKit, HPS::SubwindowKit, HPS::ContourLineKit, HPS::VisualEffectsKit, HPS::TransformMaskKit, HPS::PostProcessEffectsKit, HPS::DrawingAttributeKit, HPS::HiddenLineAttributeKit, HPS::PerformanceKit, HPS::NURBSSurfaceAttributeKit, HPS::MaterialKit, HPS::MaterialMappingKit, HPS::MatrixKit, HPS::CurveAttributeKit, HPS::EdgeAttributeKit, HPS::LineAttributeKit, HPS::TextAttributeKit, HPS::CuttingSectionAttributeKit, HPS::CylinderAttributeKit, HPS::LightingAttributeKit, HPS::SphereAttributeKit, HPS::MarkerAttributeKit, HPS::CullingKit, HPS::ColorInterpolationKit, HPS::TransparencyKit, HPS::SelectabilityKit, HPS::CameraKit, HPS::VisibilityKit, HPS::BoundingKit, HPS::SegmentOptimizationOptionsKit, HPS::Publish::ExportOptionsKit, HPS::Publish::TextFieldKit, HPS::Publish::SignatureFieldKit, HPS::Publish::DropDownListKit, HPS::Exchange::TessellationOptionsKit, HPS::Publish::ListBoxKit, HPS::Exchange::ExportSTEPOptionsKit, HPS::Exchange::ExportParasolidOptionsKit, HPS::Publish::RadioButtonKit, HPS::Exchange::ExportIGESOptionsKit, HPS::Exchange::ExportXMLOptionsKit, HPS::Publish::CheckBoxKit, HPS::Exchange::ExportU3DOptionsKit, HPS::Exchange::ExportSTLOptionsKit, HPS::Publish::ButtonKit, HPS::Exchange::ExportPRCOptionsKit, HPS::Publish::LinkKit, HPS::Exchange::ExportJTOptionsKit, HPS::Publish::SlideTableKit, HPS::Exchange::ExportACISOptionsKit, HPS::Publish::TableKit, HPS::Exchange::Export3MFOptionsKit, HPS::Publish::ImageKit, HPS::Publish::TextKit, HPS::Exchange::ModelFileImportOptionsKit, HPS::Publish::ViewKit, HPS::Exchange::TranslationOptionsKit, HPS::Publish::ArtworkKit, HPS::Publish::AnnotationKit, HPS::ComponentPath, HPS::Exchange::ImportOptionsKit, HPS::Parasolid::ExportOptionsKit, HPS::Exchange::NURBSConversionOptionsKit, HPS::Parasolid::LineTessellationKit, HPS::Exchange::Configuration, HPS::Publish::PageKit, HPS::Parasolid::FacetTessellationKit, HPS::Publish::DocumentKit, HPS::Parasolid::ImportOptionsKit, HPS::DWG::ImportOptionsKit, HPS::OOC::ImportOptionsKit, HPS::Sketchup::ImportOptionsKit, and HPS::Sketchup::ImportResultsKit.
Exchange::CADModel HPS::Exchange::ImportNotifier::GetCADModel | ( | ) | const |
Get the CADModel for the file import.
Throws an IOException if the import is not complete, was not successful or was canceled.
|
inherited |
Returns a unique identifier that is shared by all objects of the same class.
Time HPS::Exchange::ImportNotifier::GetImportTime | ( | ) | const |
Get the number of milliseconds it took Exchange to read the CAD file(s) and generate the corresponding PRC data.
Throws an IOException if the import is not complete, was not successful or was canceled.
|
inherited |
Returns an identifier that can be used to identify which instance of a class an object is.
Different keys and controls will return the same value if they are backed by the same database resource.
Time HPS::Exchange::ImportNotifier::GetParseTime | ( | ) | const |
Get the number of milliseconds it took Visualize to parse the PRC data and create the corresponding scene graph.
Throws an IOException if the import is not complete, was not successful or was canceled.
A3DRWParamsPrcReadHelper* HPS::Exchange::ImportNotifier::GetPRCReadHelper | ( | ) | const |
Get the PRC Read Helper for the file import.
Throws an IOException if the import is not complete, was not successful or was canceled. The returned value will only be non-null if the Exchange::ImportOptionsKit::SetPRCReadHelper option was set to true and the file that was imported was a PRC file or a PRC stream.
|
inherited |
|
inlinevirtual |
Reimplemented from HPS::IONotifier.
ImportNotifier& HPS::Exchange::ImportNotifier::operator= | ( | ImportNotifier && | in_that | ) |
The move assignment operator transfers the underlying impl of the rvalue reference to this ImportNotifier thereby avoiding a copy.
in_that | An rvalue reference to an ImportNotifier to take the impl from. |
ImportNotifier& HPS::Exchange::ImportNotifier::operator= | ( | ImportNotifier const & | in_that | ) |
Associate this ImportNotifier with the same file import as the source ImportNotifier.
in_that | The source ImportNotifier for the assignment. |
|
virtualinherited |
Resets this object to its initial, uninitialized state.
Reimplemented in HPS::EventHandler, HPS::EventDispatcher, HPS::World, HPS::HighlightSearchResults, HPS::HighlightSearchResultsIterator, HPS::SelectionResults, HPS::SelectionResultsIterator, HPS::FontSearchResults, HPS::FontSearchResultsIterator, HPS::SearchResults, and HPS::SearchResultsIterator.
|
inherited |
Query the status of the file IO operation for this notifier.
|
inherited |
Query the status and completion percentage of the file IO for this notifier.
out_percent_complete | Float in the range [0,1] indicating the current percentage complete. |
|
virtualinherited |
This function returns the true type of the underlying object.
This function is useful for finding the type of smart pointer objects that have been cast to more generic types.
Reimplemented in HPS::UpdateOptionsControl, HPS::HighlightControl, HPS::SelectionOptionsControl, HPS::OffScreenWindowOptionsControl, HPS::ApplicationWindowOptionsControl, HPS::StandAloneWindowOptionsControl, HPS::AttributeLockControl, HPS::WindowInfoControl, HPS::DebuggingControl, HPS::SubwindowControl, HPS::ContourLineControl, HPS::VisualEffectsControl, HPS::TransformMaskControl, HPS::PostProcessEffectsControl, HPS::DrawingAttributeControl, HPS::HiddenLineAttributeControl, HPS::PerformanceControl, HPS::NURBSSurfaceAttributeControl, HPS::ConditionControl, HPS::StyleControl, HPS::PortfolioControl, HPS::MaterialMappingControl, HPS::TextureMatrixControl, HPS::ModellingMatrixControl, HPS::CurveAttributeControl, HPS::EdgeAttributeControl, HPS::LineAttributeControl, HPS::TextAttributeControl, HPS::CuttingSectionAttributeControl, HPS::CylinderAttributeControl, HPS::LightingAttributeControl, HPS::SphereAttributeControl, HPS::MarkerAttributeControl, HPS::CullingControl, HPS::ColorInterpolationControl, HPS::TransparencyControl, HPS::SelectabilityControl, HPS::CameraControl, HPS::VisibilityControl, HPS::BoundingControl, HPS::Kit, and HPS::Control.
|
inherited |
Cause this thread to sleep until the asynchronous file IO operation associated with this notifier is complete.
|
static |