VTK
vtkImageMaskBits.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkImageMaskBits.h
5
6 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7 All rights reserved.
8 See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9
10 This software is distributed WITHOUT ANY WARRANTY; without even
11 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12 PURPOSE. See the above copyright notice for more information.
13
14=========================================================================*/
27#ifndef vtkImageMaskBits_h
28#define vtkImageMaskBits_h
29
30#include "vtkImagingMathModule.h" // For export macro
31#include "vtkImageLogic.h" //For VTK_AND, VTK_OR ...
33
34class VTKIMAGINGMATH_EXPORT vtkImageMaskBits : public vtkThreadedImageAlgorithm
35{
36public:
39 void PrintSelf(ostream& os, vtkIndent indent);
40
42
45 vtkSetVector4Macro(Masks, unsigned int);
46 void SetMask(unsigned int mask)
47 {this->SetMasks(mask, mask, mask, mask);}
48 void SetMasks(unsigned int mask1, unsigned int mask2)
49 {this->SetMasks(mask1, mask2, 0xffffffff, 0xffffffff);}
50 void SetMasks(unsigned int mask1, unsigned int mask2, unsigned int mask3)
51 {this->SetMasks(mask1, mask2, mask3, 0xffffffff);}
52 vtkGetVector4Macro(Masks, unsigned int);
54
56
59 vtkSetMacro(Operation,int);
60 vtkGetMacro(Operation,int);
61 void SetOperationToAnd() {this->SetOperation(VTK_AND);};
62 void SetOperationToOr() {this->SetOperation(VTK_OR);};
63 void SetOperationToXor() {this->SetOperation(VTK_XOR);};
64 void SetOperationToNand() {this->SetOperation(VTK_NAND);};
65 void SetOperationToNor() {this->SetOperation(VTK_NOR);};
67
68protected:
71
72 void ThreadedExecute (vtkImageData *inData, vtkImageData *outData,
73 int ext[6], int id);
74
75 unsigned int Masks[4];
77private:
78 vtkImageMaskBits(const vtkImageMaskBits&) VTK_DELETE_FUNCTION;
79 void operator=(const vtkImageMaskBits&) VTK_DELETE_FUNCTION;
80};
81
82#endif
topologically and geometrically regular array of data
Definition: vtkImageData.h:46
applies a bit-mask pattern to each component.
static vtkImageMaskBits * New()
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
void SetMasks(unsigned int mask1, unsigned int mask2)
void SetMask(unsigned int mask)
void SetMasks(unsigned int mask1, unsigned int mask2, unsigned int mask3)
void ThreadedExecute(vtkImageData *inData, vtkImageData *outData, int ext[6], int id)
a simple class to control print indentation
Definition: vtkIndent.h:40
Generic filter that has one input.
#define VTK_NAND
Definition: vtkImageLogic.h:35
#define VTK_AND
Definition: vtkImageLogic.h:32
#define VTK_XOR
Definition: vtkImageLogic.h:34
#define VTK_NOR
Definition: vtkImageLogic.h:36
#define VTK_OR
Definition: vtkImageLogic.h:33
vtkSetMacro(IgnoreDriverBugs, bool)
Updates the extensions string.