1 #pragma once 2 #include "model.h" 3 4 #include <string> 5 #include <ostream> 6 7 class JOEPACK; 8 struct JOEObject; 9 10 // This class handles all of the loading code 11 class MODEL_JOE03 : public MODEL 12 { 13 public: ~MODEL_JOE03()14 virtual ~MODEL_JOE03() 15 { 16 Clear(); 17 } 18 19 virtual bool Load(const std::string & strFileName, std::ostream & error_output, bool genlist=true) 20 { 21 return Load(strFileName, error_output, genlist, 0); 22 } 23 CanSave()24 virtual bool CanSave() const 25 { 26 return false; 27 } 28 29 bool Load(const std::string & strFileName, std::ostream & error_output, bool genlist, JOEPACK * pack); 30 31 bool LoadFromHandle(FILE * f, JOEPACK * pack, std::ostream & error_output); 32 33 private: 34 static const int JOE_MAX_FACES; 35 static const int JOE_VERSION; 36 static const float MODEL_SCALE; 37 38 std::string modelpath; 39 std::string modelname; 40 41 // This reads in the data from the MD2 file and stores it in the member variable 42 void ReadData(FILE * m_FilePointer, JOEPACK * pack, JOEObject & Object); 43 }; 44