- Cal3D 0.9 API Reference -

Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   Related Pages  

loader.h

00001 //****************************************************************************//
00002 // loader.h                                                                   //
00003 // Copyright (C) 2001, 2002 Bruno 'Beosil' Heidelberger                       //
00004 //****************************************************************************//
00005 // This library is free software; you can redistribute it and/or modify it    //
00006 // under the terms of the GNU Lesser General Public License as published by   //
00007 // the Free Software Foundation; either version 2.1 of the License, or (at    //
00008 // your option) any later version.                                            //
00009 //****************************************************************************//
00010 
00011 #ifndef CAL_LOADER_H
00012 #define CAL_LOADER_H
00013 
00014 //****************************************************************************//
00015 // Includes                                                                   //
00016 //****************************************************************************//
00017 
00018 
00019 #include <string>
00020 #include <istream>
00021 #include "cal3d/global.h"
00022 #include "cal3d/datasource.h"
00023 
00024 //****************************************************************************//
00025 // Forward declarations                                                       //
00026 //****************************************************************************//
00027 
00028 class CalCoreModel;
00029 class CalCoreSkeleton;
00030 class CalCoreBone;
00031 class CalCoreAnimation;
00032 class CalCoreTrack;
00033 class CalCoreKeyframe;
00034 class CalCoreMesh;
00035 class CalCoreSubmesh;
00036 class CalCoreMaterial;
00037 
00038 //****************************************************************************//
00039 // Class declaration                                                          //
00040 //****************************************************************************//
00041 
00042  /*****************************************************************************/
00046 class CAL3D_API CalLoader
00047 {
00048 // member functions
00049 public:
00050   static CalCoreAnimation *loadCoreAnimation(const std::string& strFilename);
00051   static CalCoreMaterial *loadCoreMaterial(const std::string& strFilename);
00052   static CalCoreMesh *loadCoreMesh(const std::string& strFilename);
00053   static CalCoreSkeleton *loadCoreSkeleton(const std::string& strFilename);
00054 
00055   static CalCoreAnimation *loadCoreAnimation(std::istream& inputStream);
00056   static CalCoreMaterial *loadCoreMaterial(std::istream& inputStream);
00057   static CalCoreMesh *loadCoreMesh(std::istream& inputStream);
00058   static CalCoreSkeleton *loadCoreSkeleton(std::istream& inputStream);
00059 
00060   static CalCoreAnimation *loadCoreAnimation(void* inputBuffer);
00061   static CalCoreMaterial *loadCoreMaterial(void* inputBuffer);
00062   static CalCoreMesh *loadCoreMesh(void* inputBuffer);
00063   static CalCoreSkeleton *loadCoreSkeleton(void* inputBuffer);
00064 
00065   static CalCoreAnimation *loadCoreAnimation(CalDataSource& inputSrc);
00066   static CalCoreMaterial *loadCoreMaterial(CalDataSource& inputSrc);
00067   static CalCoreMesh *loadCoreMesh(CalDataSource& inputSrc);
00068   static CalCoreSkeleton *loadCoreSkeleton(CalDataSource& inputSrc);
00069 
00070 private:
00071   static CalCoreBone *loadCoreBones(CalDataSource& dataSrc);
00072   static CalCoreKeyframe *loadCoreKeyframe(CalDataSource& dataSrc);
00073   static CalCoreSubmesh *loadCoreSubmesh(CalDataSource& dataSrc);
00074   static CalCoreTrack *loadCoreTrack(CalDataSource& dataSrc);
00075 
00076   static CalCoreAnimation *loadXmlCoreAnimation(const std::string& strFilename);
00077   static CalCoreSkeleton *loadXmlCoreSkeleton(const std::string& strFilename);
00078   static CalCoreMesh *loadXmlCoreMesh(const std::string& strFilename);
00079   static CalCoreMaterial *loadXmlCoreMaterial(const std::string& strFilename);
00080 };
00081 
00082 #endif
00083 
00084 //****************************************************************************//

Generated at Sun Oct 12 18:38:47 2003 by The Cal3D Team with doxygen 1.2.14 © 1997-2001 Dimitri van Heesch