VR-Forces 4.6.1 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
networkSpecificationElement.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 networkSpecificationElement_H_
9 #define networkSpecificationElement_H_
10 
11 //
12 // \file netwrkSpecEl.h
13 // \brief Contains the DtNetworkSpecificationElement class declaration and some related utility functions.
14 //
15 
16 #include "gdb/gdbDefines.h"
17 #include "gdb/networkElement.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 // DtNetworkSpecificationElement is the ABC for network elements that contain
30 // specifications (nodes, edges, segments). It adds a specification to the
31 // DtNetworkElement class.
33 {
34 public:
35 
36  // default constructor
38 
39  // destructor
41 
42  // copy constructor
44 
45  // assignment operator
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 
78 };
79 
80 #endif

Document ID: Generated on Wed Jul 25 16:57:45 EDT 2018 from SVN revision 190790
Copyright © 2005-2018 VT MÄK. All Rights Reserved (www.mak.com)