Choreonoid  1.8
SceneLoader.h
Go to the documentation of this file.
1 
5 #ifndef CNOID_UTIL_SCENE_LOADER_H
6 #define CNOID_UTIL_SCENE_LOADER_H
7 
8 #include "AbstractSceneLoader.h"
9 #include <memory>
10 #include "exportdecl.h"
11 
12 namespace cnoid {
13 
14 class SceneLoaderImpl;
15 
16 class CNOID_EXPORT SceneLoader : public AbstractSceneLoader
17 {
18 public:
20  static void registerLoader(const char* extensions, std::function<std::shared_ptr<AbstractSceneLoader>()> factory);
21 
23  static std::string availableFileExtensions();
24 
25  SceneLoader();
26  virtual ~SceneLoader();
27  virtual void setMessageSink(std::ostream& os) override;
28  virtual void setDefaultDivisionNumber(int n) override;
29  virtual void setDefaultCreaseAngle(double theta) override;
30  virtual SgNode* load(const std::string& filename) override;
31 
32  SgNode* load(const std::string& filename, bool& out_isSupportedFormat);
33 
34 private:
35  SceneLoaderImpl* impl;
36 };
37 
38 }
39 
40 #endif
cnoid::AbstractSceneLoader
Definition: AbstractSceneLoader.h:13
cnoid
Definition: AbstractSceneLoader.h:11
cnoid::SceneLoader
Definition: SceneLoader.h:16
AbstractSceneLoader.h
cnoid::SgNode
Definition: SceneGraph.h:157