VR-Forces Development_Version Class Documentation
Home
Modules
Namespaces
Classes
Files
Examples
Behavior Models
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
include
gdb
networkEdgeReversePointConstIter.h
Go to the documentation of this file.
1
/*********************************************************************
2
** Copyright (c) 2004 MAK Technologies, Inc.
3
** All rights reserved.
4
*********************************************************************/
5
/*********************************************************************
6
** $RCSfile: networkEdgeReversePointConstIter.h,v $ $Revision: 1.5 $ $State: Exp $
7
*********************************************************************/
8
#ifndef networkEdgeReversePointConstIter_H_
9
#define networkEdgeReversePointConstIter_H_
10
11
//
12
// \file networkEdgeReversePointConstIter.h
13
// \brief Contains the DtNetworkEdgeReversePointConstIter class declaration.
14
//
15
16
#include "
gdb/gdbDefines.h
"
17
#include "
gdb/networkEdge.h
"
18
#include "
gdb/networkEdgePointConstIter.h
"
19
20
class
DtPoint
;
21
class
DtString
;
22
23
// DtNetworkEdgeReversePointConstIter is a bidirectional iterator over the points
24
// representing a DtNetworkEdge, traversing in the REVERSE direction.
25
// \invariant At all times, this iterator must point to a valid DtNetworkEdge.
26
class
DT_DLL_gdb
DtNetworkEdgeReversePointConstIter
:
public
DtNetworkEdgePointConstIter
27
{
28
public
:
29
30
// constructor
31
// \param edge The DtNetworkEdge to iterate over
32
DtNetworkEdgeReversePointConstIter
(
const
DtNetworkEdge
& edge);
33
34
// constructor that allows the user to specify that
35
// the iterator is initialized to the end of the
36
// points of the edge.
37
// \param edge The DtNetworkEdge to iterate over
38
// \param isEnd Is the iterator at the end or not.
39
DtNetworkEdgeReversePointConstIter
(
const
DtNetworkEdge
& edge,
40
bool
isEnd);
41
42
// Constructs a reverse point iterator starting at the specified
43
// segment along the edge, which means the current point will be the ending point
44
// of the specified segment.
45
// \param edge The DtNetworkEdge to iterate over
46
// \param initialPoint The point in the edge to initialize to.
47
// \note If the initialPoint is NOT in the edge, then the iterator is
48
// initialized to the first point as if no point had been specified.
49
DtNetworkEdgeReversePointConstIter
(
const
DtNetworkEdge
& edge,
50
const
DtPoint
& initialPoint);
51
52
// destructor
53
virtual
~
DtNetworkEdgeReversePointConstIter
();
54
55
// assignment operator
56
DtNetworkEdgeReversePointConstIter
&
operator=
(
const
DtNetworkEdgeReversePointConstIter
& orig);
57
58
// copy constructor
59
DtNetworkEdgeReversePointConstIter
(
const
DtNetworkEdgeReversePointConstIter
& orig);
60
61
void
operator++
();
62
void
operator--
();
63
const
DtPoint
&
operator*
()
const
;
64
const
DtPoint
*
operator->
()
const
;
65
66
bool
operator==
(
const
DtNetworkEdgePointConstIter
& other)
const
;
67
bool
operator!=
(
const
DtNetworkEdgePointConstIter
& other)
const
;
68
69
bool
operator==
(
const
DtNetworkEdgeReversePointConstIter
& other)
const
;
70
bool
operator!=
(
const
DtNetworkEdgeReversePointConstIter
& other)
const
;
71
72
// \return the DtString "DtNetworkEdgeReversePointConstIter"
73
virtual
const
DtString
type
()
const
;
74
75
protected
:
76
// Used to keep track of where we are in the parent edge since the last segment
77
// in either direction will have both a starting and ending point.
78
DtNetworkEdge::DtPointContainer::const_reverse_iterator
myReversePointConstIter
;
79
80
private
:
81
// default constructor
82
DtNetworkEdgeReversePointConstIter
();
83
};
84
85
86
#endif
Document ID: Generated on Tue Mar 8 22:13:38 EST 2016 from SVN revision 162938
Copyright © 2005-2015 VT MÄK. All Rights Reserved (
www.mak.com
)