VR-Forces 4.1 Class Documentation
Home
Modules
Namespaces
Classes
Files
Examples
Behavior Models
File List
File Members
include
gdb
netwrkSpecEl.h
Go to the documentation of this file.
1
/*********************************************************************
2
** Copyright (c) 2001 MAK Technologies, Inc.
3
** All rights reserved.
4
*********************************************************************/
5
/*********************************************************************
6
** $RCSfile: netwrkSpecEl.h,v $ $Revision: 1.16 $ $State: Exp $
7
*********************************************************************/
8
#ifndef netwrkSpecEl_H_
9
#define netwrkSpecEl_H_
10
11
//
12
// \file netwrkSpecEl.h
13
// \brief Contains the DtNetworkSpecElement class declaration and some related utility functions.
14
//
15
16
#include "
gdb/gdbDefines.h
"
17
#include "
gdb/netwrkElemnt.h
"
18
#include "
gdb/specMgr.h
"
19
#include "
gdb/specification.h
"
20
21
#include <stdio.h>
22
#include <vlutil/vlPrint.h>
23
#include <matrix/LibMatrix.h>
24
#include <vlutil/vlNetTypes.h>
25
26
class
DtVectorNetwork
;
27
28
29
// DtNetworkSpecElement is the ABC for network elements that contain
30
// specifications (nodes, edges, segments). It adds a specification to the
31
// DtNetworkElement class.
32
class
DT_DLL_gdb
DtNetworkSpecElement
:
public
DtNetworkElement
33
{
34
public
:
35
36
// default constructor
37
DtNetworkSpecElement
();
38
39
// destructor
40
virtual
~
DtNetworkSpecElement
();
41
42
// copy constructor
43
DtNetworkSpecElement
(
const
DtNetworkSpecElement
& orig);
44
45
// assignment operator
46
DtNetworkSpecElement
& operator=(
const
DtNetworkSpecElement
& orig);
47
48
// Sets the specification of the network spec element. Also updates the elements
49
// specification ID as appropriate. If the allowDuplicates parameters is true,
50
// then the specification will not be shared among other similar network spec
51
// elements, even if it is exactly the same. The default is to not allow
52
// duplicates.
53
//
54
// \return A boolean indicating whether or not the specification was set.
55
// \note At some point in the future, this will change to throw an exception
56
// rather than return a boolean value.
57
virtual
bool
setSpecification(
const
DtSpecification
& newSpecification,
58
bool
allowDuplicates =
false
);
59
60
// get/set specification index
61
virtual
unsigned
int
specificationID()
const
;
62
virtual
void
setSpecificationID(
DtSpecificationID
specID);
63
64
// get/set specification manager
65
virtual
DtSpecificationManager
* specificationManager();
66
virtual
const
DtSpecificationManager
* specificationManager()
const
;
67
virtual
void
setSpecificationManager(
DtSpecificationManager
* specManager);
68
69
// get specification
70
virtual
const
DtSpecification
&
specification
()
const
;
71
72
virtual
DtString
type() = 0;
73
74
protected
:
75
76
DtSpecificationID
mySpecificationID
;
77
DtSpecificationManager
*
mySpecificationManager
;
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
)