The BaseProcess defines a common interface for all post processing steps.
More...
Inherited by Assimp::CalcTangentsProcess, Assimp::ComputeSpatialSortProcess, Assimp::ComputeUVMappingProcess, Assimp::DeboneProcess, Assimp::DestroySpatialSortProcess, Assimp::FindDegeneratesProcess, Assimp::FindInstancesProcess, Assimp::FindInvalidDataProcess, Assimp::FixInfacingNormalsProcess, Assimp::FlipUVsProcess, Assimp::FlipWindingOrderProcess, Assimp::GenFaceNormalsProcess, Assimp::GenVertexNormalsProcess, Assimp::ImproveCacheLocalityProcess, Assimp::JoinVerticesProcess, Assimp::LimitBoneWeightsProcess, Assimp::MakeLeftHandedProcess, Assimp::MakeVerboseFormatProcess, Assimp::OptimizeGraphProcess, Assimp::OptimizeMeshesProcess, Assimp::PretransformVertices, Assimp::RemoveRedundantMatsProcess, Assimp::RemoveVCProcess, Assimp::SortByPTypeProcess, Assimp::SplitByBoneCountProcess, Assimp::SplitLargeMeshesProcess_Triangle, Assimp::SplitLargeMeshesProcess_Vertex, Assimp::TextureTransformStep, Assimp::TriangulateProcess, and Assimp::ValidateDSProcess.
The BaseProcess defines a common interface for all post processing steps.
A post processing step is run after a successful import if the caller specified the corresponding flag when calling ReadFile(). Enum aiPostProcessSteps defines which flags are available. After a successful import the Importer iterates over its internal array of processes and calls IsActive() on each process to evaluate if the step should be executed. If the function returns true, the class' Execute() function is called subsequently.
◆ BaseProcess()
BaseProcess::BaseProcess |
( |
| ) |
|
Constructor to be privately used by Importer.
◆ ~BaseProcess()
BaseProcess::~BaseProcess |
( |
| ) |
|
|
virtual |
Destructor, private as well.
◆ Execute()
virtual void Assimp::BaseProcess::Execute |
( |
aiScene * |
pScene | ) |
|
|
pure virtual |
Executes the post processing step on the given imported data.
A process should throw an ImportErrorException* if it fails. This method must be implemented by deriving classes.
- Parameters
-
pScene | The imported data to work at. |
Implemented in Assimp::TextureTransformStep, Assimp::SplitLargeMeshesProcess_Vertex, Assimp::FlipUVsProcess, Assimp::FlipWindingOrderProcess, Assimp::SplitLargeMeshesProcess_Triangle, Assimp::FindInstancesProcess, Assimp::LimitBoneWeightsProcess, Assimp::CalcTangentsProcess, Assimp::DeboneProcess, Assimp::OptimizeMeshesProcess, Assimp::MakeVerboseFormatProcess, Assimp::SplitByBoneCountProcess, Assimp::GenVertexNormalsProcess, Assimp::MakeLeftHandedProcess, Assimp::JoinVerticesProcess, Assimp::TriangulateProcess, Assimp::ComputeUVMappingProcess, Assimp::ValidateDSProcess, Assimp::FindInvalidDataProcess, Assimp::FixInfacingNormalsProcess, Assimp::RemoveVCProcess, Assimp::OptimizeGraphProcess, Assimp::PretransformVertices, Assimp::ImproveCacheLocalityProcess, Assimp::GenFaceNormalsProcess, Assimp::RemoveRedundantMatsProcess, Assimp::FindDegeneratesProcess, and Assimp::SortByPTypeProcess.
◆ ExecuteOnScene()
void BaseProcess::ExecuteOnScene |
( |
Importer * |
pImp | ) |
|
Executes the post processing step on the given imported data.
The function deletes the scene if the postprocess step fails ( the object pointer will be set to NULL).
- Parameters
-
pImp | Importer instance (pImp->mScene must be valid) |
◆ GetSharedData()
Get the shared data that is assigned to the step.
◆ IsActive()
virtual bool Assimp::BaseProcess::IsActive |
( |
unsigned int |
pFlags | ) |
const |
|
pure virtual |
Returns whether the processing step is present in the given flag.
- Parameters
-
pFlags | The processing flags the importer was called with. A bitwise combination of aiPostProcessSteps. |
- Returns
- true if the process is present in this flag fields, false if not.
Implemented in Assimp::TextureTransformStep, Assimp::SplitLargeMeshesProcess_Vertex, Assimp::FlipUVsProcess, Assimp::FlipWindingOrderProcess, Assimp::FindInstancesProcess, Assimp::SplitLargeMeshesProcess_Triangle, Assimp::OptimizeMeshesProcess, Assimp::LimitBoneWeightsProcess, Assimp::DeboneProcess, Assimp::MakeLeftHandedProcess, Assimp::MakeVerboseFormatProcess, Assimp::ValidateDSProcess, Assimp::SplitByBoneCountProcess, Assimp::CalcTangentsProcess, Assimp::JoinVerticesProcess, Assimp::OptimizeGraphProcess, Assimp::TriangulateProcess, Assimp::ComputeUVMappingProcess, Assimp::PretransformVertices, Assimp::FixInfacingNormalsProcess, Assimp::ImproveCacheLocalityProcess, Assimp::RemoveVCProcess, Assimp::FindInvalidDataProcess, Assimp::GenVertexNormalsProcess, Assimp::RemoveRedundantMatsProcess, Assimp::GenFaceNormalsProcess, Assimp::FindDegeneratesProcess, and Assimp::SortByPTypeProcess.
◆ RequireVerboseFormat()
bool BaseProcess::RequireVerboseFormat |
( |
| ) |
const |
|
virtual |
Check whether this step expects its input vertex data to be in verbose format.
◆ SetSharedData()
Assign a new SharedPostProcessInfo to the step.
This object allows multiple postprocess steps to share data.
- Parameters
-
◆ SetupProperties()
void BaseProcess::SetupProperties |
( |
const Importer * |
pImp | ) |
|
|
virtual |
Called prior to ExecuteOnScene().
The function is a request to the process to update its configuration basing on the Importer's configuration property list.
Reimplemented in Assimp::TextureTransformStep, Assimp::SplitLargeMeshesProcess_Vertex, Assimp::FindInstancesProcess, Assimp::SplitLargeMeshesProcess_Triangle, Assimp::OptimizeMeshesProcess, Assimp::LimitBoneWeightsProcess, Assimp::DeboneProcess, Assimp::RemoveVCProcess, Assimp::CalcTangentsProcess, Assimp::SplitByBoneCountProcess, Assimp::PretransformVertices, Assimp::ImproveCacheLocalityProcess, Assimp::OptimizeGraphProcess, Assimp::GenVertexNormalsProcess, Assimp::RemoveRedundantMatsProcess, Assimp::FindDegeneratesProcess, Assimp::FindInvalidDataProcess, and Assimp::SortByPTypeProcess.
◆ Importer
◆ progress
Currently active progress handler.
◆ shared
See the doc of #SharedPostProcessInfo for more details.
The documentation for this class was generated from the following files: