VTK  9.2.20220703
vtkArrayRange.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkArrayRange.h
5 
6 -------------------------------------------------------------------------
7  Copyright 2008 Sandia Corporation.
8  Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
9  the U.S. Government retains certain rights in this software.
10 -------------------------------------------------------------------------
11 
12  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
13  All rights reserved.
14  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
15 
16  This software is distributed WITHOUT ANY WARRANTY; without even
17  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
18  PURPOSE. See the above copyright notice for more information.
19 
20 =========================================================================*/
21 
60 #ifndef vtkArrayRange_h
61 #define vtkArrayRange_h
62 
63 #include "vtkArrayCoordinates.h"
64 #include "vtkCommonCoreModule.h" // For export macro
65 #include "vtkSystemIncludes.h"
66 
67 class VTKCOMMONCORE_EXPORT vtkArrayRange
68 {
69 public:
71 
76 
83 
88 
93 
98 
103  bool Contains(const vtkArrayRange& range) const;
104 
108  bool Contains(const CoordinateT coordinate) const;
109 
111 
114  VTKCOMMONCORE_EXPORT friend bool operator==(const vtkArrayRange& lhs, const vtkArrayRange& rhs);
115  VTKCOMMONCORE_EXPORT friend bool operator!=(const vtkArrayRange& lhs, const vtkArrayRange& rhs);
117 
121  VTKCOMMONCORE_EXPORT friend ostream& operator<<(ostream& stream, const vtkArrayRange& rhs);
122 
123 private:
127  CoordinateT Begin;
128 
130 
133  CoordinateT End;
135 };
136 
137 #endif
138 // VTK-HeaderTest-Exclude: vtkArrayRange.h
Stores a half-open range of array coordinates.
Definition: vtkArrayRange.h:68
vtkArrayRange()
Creates an empty range.
bool Contains(const CoordinateT coordinate) const
Returns true iff the given coordinate falls within this range.
VTKCOMMONCORE_EXPORT friend bool operator==(const vtkArrayRange &lhs, const vtkArrayRange &rhs)
Equality comparisons.
CoordinateT GetBegin() const
Returns the beginning of the range.
CoordinateT GetSize() const
Returns the size of the range (the distance End - Begin).
VTKCOMMONCORE_EXPORT friend bool operator!=(const vtkArrayRange &lhs, const vtkArrayRange &rhs)
Equality comparisons.
vtkArrayRange(CoordinateT begin, CoordinateT end)
Creates a half-open range [begin, end).
bool Contains(const vtkArrayRange &range) const
Returns true iff the given range is a non-overlapping subset of this range.
CoordinateT GetEnd() const
Returns one-past-the-end of the range.
vtkArrayCoordinates::CoordinateT CoordinateT
Definition: vtkArrayRange.h:70
VTKCOMMONCORE_EXPORT friend ostream & operator<<(ostream &stream, const vtkArrayRange &rhs)
Serialization.
@ range
Definition: vtkX3D.h:244