Graphite  Version 3
An experimental 3D geometry processing program
scene_graph_devel_commands.h
Go to the documentation of this file.
1 
2 /*
3  * OGF/Graphite: Geometry and Graphics Programming Library + Utilities
4  * Copyright (C) 2000-2005 INRIA - Project ALICE
5  *
6  * This program is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation; either version 2 of the License, or
9  * (at your option) any later version.
10  *
11  * This program is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with this program; if not, write to the Free Software
18  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19  *
20  * If you modify this software, you should include a notice giving the
21  * name of the person performing the modification, the date of modification,
22  * and the reason for such modification.
23  *
24  * Contact: Bruno Levy
25  *
26  * levy@loria.fr
27  *
28  * ISA Project
29  * LORIA, INRIA Lorraine,
30  * Campus Scientifique, BP 239
31  * 54506 VANDOEUVRE LES NANCY CEDEX
32  * FRANCE
33  *
34  * Note that the GNU General Public License does not permit incorporating
35  * the Software into proprietary programs.
36  */
37 
38 
39 
40 #ifndef H_OGF_DEVEL_COMMANDS_SCENE_GRAPH_DEVEL_COMMANDS_H
41 #define H_OGF_DEVEL_COMMANDS_SCENE_GRAPH_DEVEL_COMMANDS_H
42 
46 
52 namespace OGF {
53 
59  public:
64 
69 
70  gom_slots:
76  void load_plugin(const std::string& plugin_name);
77 
89  const std::string& plugin_name,
90  const std::string& author = "Nicolas Bourbaki",
91  const std::string& contact = "",
92  bool autoload = true
93  );
94 
104  const DynamicModuleName& plugin_name,
105  const GrobClassName& type,
106  const std::string& name
107  );
108 
117  const DynamicModuleName& plugin_name,
118  const std::string& name
119  );
120 
121 
132  const DynamicModuleName& plugin_name,
133  const GrobClassName& type,
134  const std::string& name,
135  const std::string& base_class_name=""
136  );
137 
148  const DynamicModuleName& plugin_name,
149  const GrobClassName& type,
150  const std::string& name,
151  const std::string& base_class_name = ""
152  );
153 
165  const DynamicModuleName& plugin_name,
166  const std::string& grob_name,
167  const std::string& file_extension = "",
168  const std::string& base_class_name = ""
169  );
170 
180  const DynamicModuleName& plugin_name,
181  const std::string& subdirectory,
182  const std::string& class_name
183  );
184 
194  const DynamicModuleName& plugin_name,
195  const std::string& subdirectory,
196  const std::string& name
197  );
198  };
199 }
200 
201 #endif
202 
203 
A template class for strings that need to have a specific type in the GOM system.
Definition: properties.h:218
Base class for Commands that act on the whole SceneGraph.
Commands to create new plugins, Grob class names, Tool, Commands and Shader.
virtual ~SceneGraphDevelCommands()
SceneGraphDevelCommands destructor.
void create_tool(const DynamicModuleName &plugin_name, const GrobClassName &type, const std::string &name, const std::string &base_class_name="")
Creates a new tool in a plugin.
void create_shader(const DynamicModuleName &plugin_name, const GrobClassName &type, const std::string &name, const std::string &base_class_name="")
Creates a new Shader class in a plugin.
SceneGraphDevelCommands()
SceneGraphDevelCommands constructor.
void create_scene_graph_commands(const DynamicModuleName &plugin_name, const std::string &name)
Creates a new Commands class for the SceneGraph in a plugin.
void create_commands(const DynamicModuleName &plugin_name, const GrobClassName &type, const std::string &name)
Creates a new Commands class in a plugin.
void create_grob(const DynamicModuleName &plugin_name, const std::string &grob_name, const std::string &file_extension="", const std::string &base_class_name="")
Creates a new Grob class in a plugin.
void create_file(const DynamicModuleName &plugin_name, const std::string &subdirectory, const std::string &name)
Creates a new file in a plugin.
void create_class(const DynamicModuleName &plugin_name, const std::string &subdirectory, const std::string &class_name)
Creates a new class in a plugin.
void create_plugin(const std::string &plugin_name, const std::string &author="Nicolas Bourbaki", const std::string &contact="", bool autoload=true)
Creates C++ skeleton sources for a new plugin.
Global Graphite namespace.
Definition: common.h:76
classes for Commands that act on the whole SceneGraph.
Definitions common to all include files in the devel library.