VR-Forces 4.1 Class Documentation
Home
Modules
Namespaces
Classes
Files
Examples
Behavior Models
File List
File Members
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/netwrkEdge.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 Jan 29 18:21:16 EST 2013 from SVN revision 123193
Copyright © 2005-2013 VT MÄK Inc. All Rights Reserved (
www.mak.com
)