itom
Loading...
Searching...
No Matches
shapeDObject.h
1/* ********************************************************************
2itom software
3URL: http://www.uni-stuttgart.de/ito
4Copyright (C) 2020, Institut für Technische Optik (ITO),
5Universität Stuttgart, Germany
6
7This file is part of itom and its software development toolkit (SDK).
8
9itom is free software; you can redistribute it and/or modify it
10under the terms of the GNU Library General Public Licence as published by
11the Free Software Foundation; either version 2 of the Licence, or (at
12your option) any later version.
13
14In addition, as a special exception, the Institut für Technische
15Optik (ITO) gives you certain additional rights.
16These rights are described in the ITO LGPL Exception version 1.0,
17which can be found in the file LGPL_EXCEPTION.txt in this package.
18
19itom is distributed in the hope that it will be useful, but
20WITHOUT ANY WARRANTY; without even the implied warranty of
21MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library
22General Public Licence for more details.
23
24You should have received a copy of the GNU Library General Public License
25along with itom. If not, see <http://www.gnu.org/licenses/>.
26*********************************************************************** */
27
28#ifndef SHAPEDOBJECT_H
29#define SHAPEDOBJECT_H
30
31#include "../common/shape.h"
32#include "../shape/shapeCommon.h"
33#include "typeDefs.h"
34
35#include "../DataObject/dataobj.h"
36
37#if !defined(Q_MOC_RUN) || \
38 defined(ITOMSHAPE_MOC) // only moc this file in itomShapeLib but not in other libraries or
39 // executables linking against this itomCommonQtLib
40
41namespace ito {
42class ITOMSHAPE_EXPORT ShapeDObject
43{
44public:
45 static ito::DataObject maskFromMultipleShapes(
46 const ito::DataObject& dataObject, const QVector<ito::Shape>& shapes, bool inverse = false);
47 static ito::DataObject mask(
48 const ito::DataObject& dataObject, const ito::Shape& shape, bool inverse = false);
49
50protected:
51 static void maskHelper(
52 const ito::DataObject& dataObject,
53 ito::DataObject& mask,
54 const ito::Shape& shape,
55 bool inverse = false);
56
57};
58
59} // namespace ito
60
61#endif //#if !defined(Q_MOC_RUN) || defined(ITOMCOMMONQT_MOC)
62
63#endif // SHAPEDOBJECT_H
dataObject contains a n-dimensional matrix
Definition dataobj.h:591
Definition shapeDObject.h:43
Definition shape.h:53
Definition apiFunctionsGraph.cpp:40