MeVisLab Toolbox Reference
WEMRequirements.h
Go to the documentation of this file.
1 /*************************************************************************************
2 **
3 ** Copyright 2007, MeVis Medical Solutions AG
4 **
5 ** The user may use this file in accordance with the license agreement provided with
6 ** the Software or, alternatively, in accordance with the terms contained in a
7 ** written agreement between the user and MeVis Medical Solutions AG.
8 **
9 ** For further information use the contact form at https://www.mevislab.de/contact
10 **
11 **************************************************************************************/
12 
13 #pragma once
14 
15 #include "MLWEMIncludes.h"
16 
17 ML_START_NAMESPACE
18 
20 
21 class WEMPatch;
22 
24 
27 {
28 public:
29 
34 
36  inline bool areEdgesRequired() const { return _requireEdges; }
38  inline bool areNormalsRequired() const { return _requireNormals; }
40  inline bool isSinglePatchRequired() const { return _requireSinglePatch; }
42  inline PatchTypes getRequiredPatchType() const { return _requirePatchType; }
44  inline bool isPatchTypeRequired(PatchTypes patchType) const { return (_requirePatchType == patchType); }
46  inline OrientationTypes getRequiredOrientationType() const { return _requireOrientationType; }
48  inline bool isOrientationTypeRequired(OrientationTypes orientationType) const { return (_requireOrientationType == orientationType); }
49 
51  inline void requireEdges(bool requireEdgesFlag=true) { _requireEdges = requireEdgesFlag; }
53  inline void requireNormals(bool requireNormalsFlag=true) { _requireNormals = requireNormalsFlag; }
55  inline void requireSinglePatch(bool requireSinglePatchFlag=true) { _requireSinglePatch = requireSinglePatchFlag; }
57  inline void requirePatchType(PatchTypes patchType) { _requirePatchType = patchType; }
59  inline void requireOrientationType(OrientationTypes orientationType) { _requireOrientationType = orientationType; }
60 
61 private:
62 
64  bool _requireEdges;
66  bool _requireNormals;
68  bool _requireSinglePatch;
69 
71  PatchTypes _requirePatchType;
73  OrientationTypes _requireOrientationType;
74 };
75 
77 
78 ML_END_NAMESPACE
#define MLWEM_EXPORT
Definition: MLWEMSystem.h:18
This class represents WEMPatch requirements to be used by WEMProcessor.
void requireEdges(bool requireEdgesFlag=true)
Sets to require edges.
bool isOrientationTypeRequired(OrientationTypes orientationType) const
Returns whether the given orientation type is required.
void requirePatchType(PatchTypes patchType)
Sets to require the patch type.
~WEMRequirements()
Standard destructor.
void requireOrientationType(OrientationTypes orientationType)
Sets to require the orientation type.
PatchTypes getRequiredPatchType() const
Returns the required patch type.
bool isSinglePatchRequired() const
Returns whether a single patch is required.
WEMRequirements()
Standard constructor.
OrientationTypes getRequiredOrientationType() const
Returns the required orientation.
void requireSinglePatch(bool requireSinglePatchFlag=true)
Sets to require single patch.
bool isPatchTypeRequired(PatchTypes patchType) const
Returns whether the given patch type is required.
bool areEdgesRequired() const
Returns whether edges are required.
void requireNormals(bool requireNormalsFlag=true)
Sets to require normals.
bool areNormalsRequired() const
Returns whether normals are required.
OrientationTypes
Enumeration of orientation types.
PatchTypes
Enumeration of mesh types.