diff options
Diffstat (limited to 'src/3rdparty/assimp/code/ObjFileMtlImporter.h')
-rw-r--r-- | src/3rdparty/assimp/code/ObjFileMtlImporter.h | 114 |
1 files changed, 56 insertions, 58 deletions
diff --git a/src/3rdparty/assimp/code/ObjFileMtlImporter.h b/src/3rdparty/assimp/code/ObjFileMtlImporter.h index 207c56063..f2c1ba820 100644 --- a/src/3rdparty/assimp/code/ObjFileMtlImporter.h +++ b/src/3rdparty/assimp/code/ObjFileMtlImporter.h @@ -2,11 +2,11 @@ Open Asset Import Library (assimp) ---------------------------------------------------------------------- -Copyright (c) 2006-2012, assimp team +Copyright (c) 2006-2016, assimp team All rights reserved. -Redistribution and use of this software in source and binary forms, -with or without modification, are permitted provided that the +Redistribution and use of this software in source and binary forms, +with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above @@ -23,16 +23,16 @@ following conditions are met: derived from this software without specific prior written permission of the assimp team. -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ----------------------------------------------------------------------*/ @@ -43,70 +43,68 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include <string> struct aiColor3D; +struct aiString; -namespace Assimp -{ - -namespace ObjFile -{ -struct Model; -struct Material; +namespace Assimp { +namespace ObjFile { + struct Model; + struct Material; } /** - * @class ObjFileMtlImporter - * @brief Loads the material description from a mtl file. + * @class ObjFileMtlImporter + * @brief Loads the material description from a mtl file. */ class ObjFileMtlImporter { public: - static const size_t BUFFERSIZE = 2048; - typedef std::vector<char> DataArray; - typedef std::vector<char>::iterator DataArrayIt; - typedef std::vector<char>::const_iterator ConstDataArrayIt; + static const size_t BUFFERSIZE = 2048; + typedef std::vector<char> DataArray; + typedef std::vector<char>::iterator DataArrayIt; + typedef std::vector<char>::const_iterator ConstDataArrayIt; public: - //! \brief Default constructor - ObjFileMtlImporter( std::vector<char> &buffer, const std::string &strAbsPath, - ObjFile::Model *pModel ); - - //! \brief DEstructor - ~ObjFileMtlImporter(); + //! \brief Default constructor + ObjFileMtlImporter( std::vector<char> &buffer, const std::string &strAbsPath, + ObjFile::Model *pModel ); + + //! \brief DEstructor + ~ObjFileMtlImporter(); private: - /// Copy constructor, empty. - ObjFileMtlImporter(const ObjFileMtlImporter &rOther); - /// \brief Assignment operator, returns only a reference of this instance. - ObjFileMtlImporter &operator = (const ObjFileMtlImporter &rOther); - /// Load the whole material description - void load(); - /// Get color data. - void getColorRGBA( aiColor3D *pColor); - /// Get illumination model from loaded data - void getIlluminationModel( int &illum_model ); - /// Gets a float value from data. - void getFloatValue( float &value ); - /// Creates a new material from loaded data. - void createMaterial(); - /// Get texture name from loaded data. - void getTexture(); - void getTextureOption(bool &clamp); + /// Copy constructor, empty. + ObjFileMtlImporter(const ObjFileMtlImporter &rOther); + /// \brief Assignment operator, returns only a reference of this instance. + ObjFileMtlImporter &operator = (const ObjFileMtlImporter &rOther); + /// Load the whole material description + void load(); + /// Get color data. + void getColorRGBA( aiColor3D *pColor); + /// Get illumination model from loaded data + void getIlluminationModel( int &illum_model ); + /// Gets a float value from data. + void getFloatValue( float &value ); + /// Creates a new material from loaded data. + void createMaterial(); + /// Get texture name from loaded data. + void getTexture(); + void getTextureOption(bool &clamp, int &clampIndex, aiString *&out); private: - //! Absolute pathname - std::string m_strAbsPath; - //! Data iterator showing to the current position in data buffer - DataArrayIt m_DataIt; - //! Data iterator to end of buffer - DataArrayIt m_DataItEnd; - //! USed model instance - ObjFile::Model *m_pModel; - //! Current line in file - unsigned int m_uiLine; - //! Helper buffer - char m_buffer[BUFFERSIZE]; + //! Absolute pathname + std::string m_strAbsPath; + //! Data iterator showing to the current position in data buffer + DataArrayIt m_DataIt; + //! Data iterator to end of buffer + DataArrayIt m_DataItEnd; + //! USed model instance + ObjFile::Model *m_pModel; + //! Current line in file + unsigned int m_uiLine; + //! Helper buffer + char m_buffer[BUFFERSIZE]; }; // ------------------------------------------------------------------------------------------------ |