VR-Forces 4.1 Class Documentation
Home
Modules
Namespaces
Classes
Files
Examples
Behavior Models
File List
File Members
include
gdb
networkEdgeForwardPointConstIter.h
Go to the documentation of this file.
1
/*********************************************************************
2
** Copyright (c) 2004 MAK Technologies, Inc.
3
** All rights reserved.
4
*********************************************************************/
5
/*********************************************************************
6
** $RCSfile: networkEdgeForwardPointConstIter.h,v $ $Revision: 1.5 $ $State: Exp $
7
*********************************************************************/
8
#ifndef networkEdgeForwardPointConstIter_H_
9
#define networkEdgeForwardPointConstIter_H_
10
11
#include "
gdb/gdbDefines.h
"
12
#include "
gdb/netwrkEdge.h
"
13
#include "
gdb/networkEdgePointConstIter.h
"
14
15
class
DtPoint
;
16
class
DtString
;
17
18
// DtNetworkEdgeForwardPointConstIter is a bidirectional const iterator over the points
19
// representing a DtNetworkEdge, traversing in the FORWARD direction.
20
// INVARIANT: At all times, this iterator must point to a valid DtNetworkEdge.
21
class
DT_DLL_gdb
DtNetworkEdgeForwardPointConstIter
:
public
DtNetworkEdgePointConstIter
22
{
23
public
:
24
25
// constructor
26
// \param edge The DtNetworkEdge to iterate over
27
DtNetworkEdgeForwardPointConstIter
(
const
DtNetworkEdge
& edge);
28
29
// constructor that allows the user to specify that
30
// the iterator is initialized to the end of the
31
// points of the edge.
32
// \param edge The DtNetworkEdge to iterate over
33
// \param isend Is the iterator at the end or not.
34
DtNetworkEdgeForwardPointConstIter
(
const
DtNetworkEdge
& edge,
35
bool
isEnd);
36
37
// Constructs a forward point iterator starting at the specified
38
// segment along the edge, which means the current point will be the starting point
39
// of the specified segment.
40
// \param edge The DtNetworkEdge to iterate over
41
// \param initialPoint The point in the edge to intialize to.
42
// \note If the initialPoint is NOT in the edge, then the iterator is
43
// initialized to the first point as if no point had been specified.
44
DtNetworkEdgeForwardPointConstIter
(
const
DtNetworkEdge
& edge,
45
const
DtPoint
& initialPoint);
46
47
// destructor
48
virtual
~
DtNetworkEdgeForwardPointConstIter
();
49
50
// assignment operator
51
DtNetworkEdgeForwardPointConstIter
&
operator=
(
const
DtNetworkEdgeForwardPointConstIter
& orig);
52
53
// copy constructor
54
DtNetworkEdgeForwardPointConstIter
(
const
DtNetworkEdgeForwardPointConstIter
& orig);
55
56
void
operator++
();
57
void
operator--
();
58
const
DtPoint
&
operator*
()
const
;
59
const
DtPoint
*
operator->
()
const
;
60
61
bool
operator==
(
const
DtNetworkEdgePointConstIter
& other)
const
;
62
bool
operator!=
(
const
DtNetworkEdgePointConstIter
& other)
const
;
63
64
bool
operator==
(
const
DtNetworkEdgeForwardPointConstIter
& other)
const
;
65
bool
operator!=
(
const
DtNetworkEdgeForwardPointConstIter
& other)
const
;
66
67
virtual
const
DtString
type
()
const
;
68
69
protected
:
70
// Used to keep track of where we are in the parent edge since the last segment
71
// in either direction will have both a starting and ending point.
72
DtNetworkEdge::DtPointContainer::const_iterator
myConstPointIter
;
73
74
private
:
75
// default constructor
76
DtNetworkEdgeForwardPointConstIter
();
77
};
78
79
80
#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
)