Overture  Version 25
RocketMapping.h
Go to the documentation of this file.
1 #ifndef ROCKET_MAPPING_H
2 #define ROCKET_MAPPING_H
3 
4 #include "SplineMapping.h"
5 
6 //-------------------------------------------------------------
7 // Define cross-sections for rocket related geometries
8 //-------------------------------------------------------------
10 {
11 
12 public:
13 
15  {
19  };
20 
21  RocketMapping(const int & rangeDimension=2 );
22 
23  // Copy constructor is deep by default
24  RocketMapping( const RocketMapping &, const CopyType copyType=DEEP );
25 
27 
28  RocketMapping & operator =( const RocketMapping & X0 );
29 
30  virtual int get( const GenericDataBase & dir, const aString & name); // get from a database file
31  virtual int put( GenericDataBase & dir, const aString & name) const; // put to a database file
32 
35 
36  int update( MappingInformation & mapInfo ) ;
37 
38  protected:
39 
42 
43  int numVertex;
47 
48  // for slot
50  int numPoints;
51 
52  // for star:
55 
56  // for circle:
58 
59  // compute spline points for a slot
60  int computePoints();
61  int computeSlotPoints();
62  int computeStarPoints();
63  int computeCirclePoints();
64 
65  private:
66 
67  //
68  // Virtual member functions used only through class ReferenceCounting:
69  //
71  { return operator=((RocketMapping &)x); }
72  virtual void reference( const ReferenceCounting& x)
73  { reference((RocketMapping &)x); } // *** Conversion to this class for the virtual = ****
74  virtual ReferenceCounting* virtualConstructor( const CopyType ct = DEEP ) const
75  { return ::new RocketMapping(*this, ct); }
76 
77 };
78 
79 
80 #endif