KiCad PCB EDA Suite
Loading...
Searching...
No Matches
S3D::MODEL_IMPORT_RESULT Class Reference

#include <model_import.h>

Public Member Functions

 MODEL_IMPORT_RESULT (MODEL_IMPORT_RESULT &&aOther) noexcept
 
MODEL_IMPORT_RESULT & operator= (MODEL_IMPORT_RESULT &&aOther) noexcept
 
 ~MODEL_IMPORT_RESULT ()
 
 MODEL_IMPORT_RESULT (const MODEL_IMPORT_RESULT &)=delete
 
MODEL_IMPORT_RESULT & operator= (const MODEL_IMPORT_RESULT &)=delete
 
 operator bool () const noexcept
 
const S3DMODEL * GetModel () const noexcept
 
MODEL_IMPORT_ERROR GetError () const noexcept
 
std::string_view GetDiagnostic () const noexcept
 

Private Member Functions

 MODEL_IMPORT_RESULT () noexcept=default
 

Private Attributes

S3DMODEL * m_model = nullptr
 
MODEL_IMPORT_ERROR m_error = MODEL_IMPORT_ERROR::INTERNAL
 
std::string m_diagnostic
 

Friends

KICAD_3D_IMPORT_API MODEL_IMPORT_RESULT ImportModel (const std::string &aFileName, const MODEL_IMPORT_OPTIONS &aOptions={})
 Import and flatten one model without invoking GUI facilities.
 

Detailed Description

Definition at line 83 of file model_import.h.

Constructor & Destructor Documentation

◆ MODEL_IMPORT_RESULT() [1/3]

S3D::MODEL_IMPORT_RESULT::MODEL_IMPORT_RESULT ( MODEL_IMPORT_RESULT && aOther)
noexcept

◆ ~MODEL_IMPORT_RESULT()

S3D::MODEL_IMPORT_RESULT::~MODEL_IMPORT_RESULT ( )

Definition at line 312 of file model_import.cpp.

References S3D::Destroy3DModel(), and m_model.

◆ MODEL_IMPORT_RESULT() [2/3]

S3D::MODEL_IMPORT_RESULT::MODEL_IMPORT_RESULT ( const MODEL_IMPORT_RESULT & )
delete

References MODEL_IMPORT_RESULT().

◆ MODEL_IMPORT_RESULT() [3/3]

S3D::MODEL_IMPORT_RESULT::MODEL_IMPORT_RESULT ( )
privatedefaultnoexcept

References MODEL_IMPORT_RESULT().

Member Function Documentation

◆ GetDiagnostic()

std::string_view S3D::MODEL_IMPORT_RESULT::GetDiagnostic ( ) const
noexcept

Definition at line 336 of file model_import.cpp.

References m_diagnostic.

Referenced by operator=().

◆ GetError()

S3D::MODEL_IMPORT_ERROR S3D::MODEL_IMPORT_RESULT::GetError ( ) const
noexcept

Definition at line 330 of file model_import.cpp.

References m_error.

Referenced by operator=().

◆ GetModel()

const S3DMODEL * S3D::MODEL_IMPORT_RESULT::GetModel ( ) const
noexcept

Definition at line 324 of file model_import.cpp.

References m_model.

Referenced by operator=().

◆ operator bool()

S3D::MODEL_IMPORT_RESULT::operator bool ( ) const
explicitnoexcept

Definition at line 318 of file model_import.cpp.

References m_model.

◆ operator=() [1/2]

MODEL_IMPORT_RESULT & S3D::MODEL_IMPORT_RESULT::operator= ( const MODEL_IMPORT_RESULT & )
delete

◆ operator=() [2/2]

S3D::MODEL_IMPORT_RESULT & S3D::MODEL_IMPORT_RESULT::operator= ( MODEL_IMPORT_RESULT && aOther)
noexcept

Friends And Related Symbol Documentation

◆ ImportModel

KICAD_3D_IMPORT_API MODEL_IMPORT_RESULT ImportModel ( const std::string & aFileName,
const MODEL_IMPORT_OPTIONS & aOptions = {} )
friend

Import and flatten one model without invoking GUI facilities.

Source and expanded temporary data are admitted against maxExpandedBytes, and the flattened arrays are admitted against maxMeshBytes using checked arithmetic. OCCT can allocate its document and tessellation before those flattened-array checks, so these limits are not a hard process-memory cap. Cancellation is checked before and after file readers and tessellation, and at parser, label, face, vertex and triangle loop boundaries. Individual OCCT read and BRepMesh_IncrementalMesh calls are noninterruptible.

References ImportModel, KICAD_3D_IMPORT_API, and MODEL_IMPORT_RESULT().

Referenced by ImportModel.

Member Data Documentation

◆ m_diagnostic

std::string S3D::MODEL_IMPORT_RESULT::m_diagnostic
private

Definition at line 103 of file model_import.h.

Referenced by GetDiagnostic(), MODEL_IMPORT_RESULT(), and operator=().

◆ m_error

MODEL_IMPORT_ERROR S3D::MODEL_IMPORT_RESULT::m_error = MODEL_IMPORT_ERROR::INTERNAL
private

Definition at line 102 of file model_import.h.

Referenced by GetError(), MODEL_IMPORT_RESULT(), and operator=().

◆ m_model

S3DMODEL* S3D::MODEL_IMPORT_RESULT::m_model = nullptr
private

The documentation for this class was generated from the following files: