Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

objreader.H

Go to the documentation of this file.
00001 #ifndef OBJ_READER_H_IS_INCLUDED
00002 #define OBJ_READER_H_IS_INCLUDED
00003 
00004 /*!
00005  *  \file objreader.H
00006  *  \brief Contains the definition of the OBJReader class.  A class for reading
00007  *  .obj files into meshes.
00008  *
00009  *  \sa objreader.C
00010  *
00011  */
00012 
00013 #include <iostream>
00014 
00015 class BMESH;
00016 
00017 class OBJReaderImpl;
00018 
00019 /*!
00020  *  \brief A class that can read .obj files and create Jot meshes from them.
00021  *
00022  */
00023 class OBJReader {
00024 
00025  public:
00026       
00027    OBJReader();
00028       
00029    ~OBJReader();
00030       
00031    //! \brief Attempt to read the contents of a .obj file from the stream
00032    //! \p in.
00033    bool read(std::istream &in);
00034       
00035    //! \brief Create a new BMESH object containing the data read in with the
00036    //! read function.
00037    BMESH *get_mesh() const;
00038       
00039    //! \brief Clear the given mesh object and fill it with the data read in
00040    //! with the read function.
00041    void get_mesh(BMESH *mesh) const;
00042       
00043    unsigned long get_num_vertices() const;
00044    unsigned long get_num_texcoords() const;
00045    unsigned long get_num_normals() const;
00046    unsigned long get_num_faces() const;
00047    unsigned long get_num_materials() const;
00048    unsigned long get_num_material_libs() const;
00049       
00050  private:
00051       
00052    OBJReaderImpl *impl;
00053 
00054 };
00055 
00056 #endif // OBJ_READER_H_IS_INCLUDED

Generated on Mon Sep 18 11:39:32 2006 for jot by  doxygen 1.4.4