VR-Forces 4.7 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vectorNetworkRecord.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 1999 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 /*******************************************************************************
6 ** $RCSfile: vecNetwrkRecord.h,v $ $Revision: 1.10 $ $State: Exp $
7 *******************************************************************************/
8 
9 #ifndef vectorNetworkRecord_H_
10 #define vectorNetworkRecord_H_
11 
12 #include "gdb/gdbDefines.h"
13 #include <vlutil/vlNetTypes.h>
14 
15 //forward declarations
16 class DtSimpleList;
18 
19 // class DtVectorNetworkRecord:
20 //
21 // DtVectorNetworkRecord is used to pass info to DtTerrainDatabase
22 // to be used during a search into the vector network
23 
25 {
26 public:
27 
28  // default constructor
30 
31  // destructor
32  virtual ~DtVectorNetworkRecord();
33 
34  // copy constructor
36 
37  // assignment operator
38  DtVectorNetworkRecord& operator=(const DtVectorNetworkRecord& orig);
39 
40  // set/get the value for range of interest
41  virtual void setInterestRange(double range);
42  virtual double interestRange() const;
43 
44  // set/get if we want to evaluate elevation in features
45  virtual void setEvalInZ(bool inZ);
46  virtual bool evalInZ() const;
47 
48  // Functions to add attributes to evaluate them against the
49  // specifications of the vector network.
50  // They can be used to be equal, lees than, greater than or different,
51  //
52  // add: Clone the attribute and add its own copy.
53  // take: return the list and give it up to be owned (and deleted)
54  // by some one else. After use a take function there is not more
55  // function available in the record.
56  // XXX: return the current list
57 
58  virtual void addEqualCondAttr(DtSpecificationAttribute* attr);
59  virtual DtSimpleList* equalCondAttrList() const;
60  virtual DtSimpleList* takeEqualCondAttrList();
61 
62  virtual void addDiffCondAttr(DtSpecificationAttribute* attr);
63  virtual DtSimpleList* diffCondAttrList() const;
64  virtual DtSimpleList* takeDiffCondAttrList();
65 
66  virtual void addLessThanCondAttr(DtSpecificationAttribute* attr);
67  virtual DtSimpleList* lessThanCondAttrList() const;
68  virtual DtSimpleList* takeLessThanCondAttrList();
69 
70  virtual void addGreaterThanCondAttr(DtSpecificationAttribute* attr);
71  virtual DtSimpleList* greaterThanCondAttrList() const;
72  virtual DtSimpleList* takeGreaterThanCondAttrList();
73 
74 protected:
75 
76  virtual bool testInvariant() const;
77 
78  // empty the condition lists and free memory
79  virtual void emptyLists();
80 
81  // copy lists
82  virtual void copyLists(const DtVectorNetworkRecord& orig);
83 
84  double myRange;
85  bool myInZ;
90 };
91 
92 #endif
93 

Document ID: Generated on Fri Apr 26 21:53:14 EDT 2019 from SVN revision 197883
Copyright © 2005-2019 VT MAK. All Rights Reserved (www.mak.com)