Irrlicht 3D Engine
ISceneLoader.h
Go to the documentation of this file.
1 // Copyright (C) 2010-2012 Nikolaus Gebhardt
2 // This file is part of the "Irrlicht Engine".
3 // For conditions of distribution and use, see copyright notice in irrlicht.h
4 
5 #ifndef __I_SCENE_LOADER_H_INCLUDED__
6 #define __I_SCENE_LOADER_H_INCLUDED__
7 
8 #include "IReferenceCounted.h"
9 #include "path.h"
10 
11 namespace irr
12 {
13 namespace io
14 {
15  class IReadFile;
16 } // end namespace io
17 namespace scene
18 {
19  class ISceneNode;
20  class ISceneUserDataSerializer;
21 
23 
26 class ISceneLoader : public virtual IReferenceCounted
27 {
28 public:
29 
31 
35  virtual bool isALoadableFileExtension(const io::path& filename) const = 0;
36 
38 
41  virtual bool isALoadableFileFormat(io::IReadFile* file) const = 0;
42 
44 
52  virtual bool loadScene(io::IReadFile* file, ISceneUserDataSerializer* userDataSerializer=0,
53  ISceneNode* rootNode=0) = 0;
54 
55 };
56 
57 
58 } // end namespace scene
59 } // end namespace irr
60 
61 #endif
62 
Interface providing read access to a file.
Definition: IReadFile.h:18
Scene node interface.
Definition: ISceneNode.h:40
virtual bool loadScene(io::IReadFile *file, ISceneUserDataSerializer *userDataSerializer=0, ISceneNode *rootNode=0)=0
Loads the scene into the scene manager.
Everything in the Irrlicht Engine can be found in this namespace.
Definition: aabbox3d.h:12
virtual bool isALoadableFileFormat(io::IReadFile *file) const =0
Returns true if the class might be able to load this file.
Class which can load a scene into the scene manager.
Definition: ISceneLoader.h:26
virtual bool isALoadableFileExtension(const io::path &filename) const =0
Returns true if the class might be able to load this file.
Base class of most objects of the Irrlicht Engine.
Interface to read and write user data to and from .irr files.