Computer Assisted Medical Intervention Tool Kit  version 5.2
 
Loading...
Searching...
No Matches
MMLComponentExtension.h
Go to the documentation of this file.
1/*****************************************************************************
2 * $CAMITK_LICENCE_BEGIN$
3 *
4 * CamiTK - Computer Assisted Medical Intervention ToolKit
5 * (c) 2001-2024 Univ. Grenoble Alpes, CNRS, Grenoble INP - UGA, TIMC, 38000 Grenoble, France
6 *
7 * Visit http://camitk.imag.fr for more information
8 *
9 * This file is part of CamiTK.
10 *
11 * CamiTK is free software: you can redistribute it and/or modify
12 * it under the terms of the GNU Lesser General Public License version 3
13 * only, as published by the Free Software Foundation.
14 *
15 * CamiTK 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 version 3 for more details.
19 *
20 * You should have received a copy of the GNU Lesser General Public License
21 * version 3 along with CamiTK. If not, see <http://www.gnu.org/licenses/>.
22 *
23 * $CAMITK_LICENCE_END$
24 ****************************************************************************/
25
26#ifndef MMLCOMPONENTEXTENSION_H
27#define MMLCOMPONENTEXTENSION_H
28
29#include <QObject>
30#include <ComponentExtension.h>
31#include "MMLComponentAPI.h"
43 Q_OBJECT
44 Q_INTERFACES(camitk::ComponentExtension)
45 Q_PLUGIN_METADATA(IID "fr.imag.camitk.modeling.component.mmlcomponent")
46
47public:
49 MMLComponentExtension() : ComponentExtension() {};
50
52 virtual QString getName() const override;
53
55 virtual QString getDescription() const override;
56
58 virtual QStringList getFileExtensions() const override;
59
63 virtual camitk::Component* open(const QString&) override;
64
66 virtual bool save(camitk::Component* component) const override;
67
68protected:
70 virtual ~MMLComponentExtension() = default;
71};
72
73#endif
#define MMLCOMPONENT_API
Definition MMLComponentAPI.h:54
This MML ComponentPlugin allows you to manipulate MML document.
Definition MMLComponentExtension.h:42
virtual ~MMLComponentExtension()=default
the destructor
MMLComponentExtension()
the constructor (do nothing really)
Definition MMLComponentExtension.h:49
This class describes what is a generic Component extension.
Definition ComponentExtension.h:60
virtual QString getName() const =0
virtual bool save(Component *component) const
save a given Component (does not have to be top-level) into one of the currently managed format (chec...
Definition ComponentExtension.cpp:40
virtual QString getDescription() const =0
get the plugin description
virtual Component * open(const QString &)=0
get a new instance from data stored in a file (this is the most important method to redefine in your ...
virtual QStringList getFileExtensions() const =0
get the list of managed extensions (each file with an extension in the list can be loaded by this Com...
A Component represents something that could be included in the explorer view, the interactive 3D view...
Definition sdk/libraries/core/component/Component.h:303