1
//---------------------------------------------------------------------------
3
// Project: OpenWalnut ( http://www.openwalnut.org )
5
// Copyright 2009 OpenWalnut Community, BSV-Leipzig and CNCF-CBS
6
// For more information see http://www.openwalnut.org/copying
8
// This file is part of OpenWalnut.
10
// OpenWalnut is free software: you can redistribute it and/or modify
11
// it under the terms of the GNU Lesser General Public License as published by
12
// the Free Software Foundation, either version 3 of the License, or
13
// (at your option) any later version.
15
// OpenWalnut is distributed in the hope that it will be useful,
16
// but WITHOUT ANY WARRANTY; without even the implied warranty of
17
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18
// GNU Lesser General Public License for more details.
20
// You should have received a copy of the GNU Lesser General Public License
21
// along with OpenWalnut. If not, see <http://www.gnu.org/licenses/>.
23
//---------------------------------------------------------------------------
25
#ifndef WMEXPORTGEOMETRY_H
26
#define WMEXPORTGEOMETRY_H
32
#include "core/kernel/WModule.h"
33
#include "core/kernel/WModuleInputData.h"
34
#include "core/kernel/WModuleOutputData.h"
39
* Someone should add some documentation here.
40
* Probably the best person would be the module's
41
* creator, i.e. "wiebel".
43
* This is only an empty template for a new module. For
44
* an example module containing many interesting concepts
45
* and extensive documentation have a look at "src/modules/template"
49
class WMExportGeometry: public WModule
61
virtual ~WMExportGeometry();
64
* Gives back the name of this module.
65
* \return the module's name.
67
virtual const std::string getName() const;
70
* Gives back a description of this module.
71
* \return description to module.
73
virtual const std::string getDescription() const;
76
* Due to the prototype design pattern used to build modules, this method returns a new instance of this method. NOTE: it
77
* should never be initialized or modified in some other way. A simple new instance is required.
79
* \return the prototype used to create every module in OpenWalnut.
81
virtual boost::shared_ptr< WModule > factory() const;
84
* Get the icon for this module in XPM format.
87
virtual const char** getXPMIcon() const;
92
* Entry point after loading the module. Runs in separate thread.
94
virtual void moduleMain();
97
* Initialize the connectors this module is using.
99
virtual void connectors();
102
* Initialize the properties for this module.
104
virtual void properties();
109
* Routine that acutally writes the file.
114
* An input connector used to get mehses from other modules.
116
boost::shared_ptr< WModuleInputData< WTriangleMesh > > m_input;
118
WPropFilename m_savePath; //!< Path where geometry should be stored
121
#endif // WMEXPORTGEOMETRY_H