Overture  Version 25
LoftedSurfaceMapping.h
Go to the documentation of this file.
1 #ifndef LOFTED_SURFACE_MAPPING_H
2 #define LOFTED_SURFACE_MAPPING_H "LoftedSurfaceMapping.h"
3 
4 #include "Mapping.h"
5 
6 //-------------------------------------------------------------
7 //
8 // This Class defines Lofted Surfaces
9 //
10 //-------------------------------------------------------------
11 
13 {
14 public:
15 
17 
18  // Copy constructor is deep by default
19  LoftedSurfaceMapping( const LoftedSurfaceMapping &, const CopyType copyType=DEEP );
20 
22 
24 
27 
28  virtual void mapS( const RealArray & r, RealArray & x, RealArray &xr = Overture::nullRealArray(),
30 
31  virtual int get( const GenericDataBase & dir, const aString & name); // get from a database file
32  virtual int put( GenericDataBase & dir, const aString & name) const; // put to a database file
33 
34  void getParameters(IntegerArray & ipar, RealArray & rpar ) const;
35  void setParameters(const IntegerArray & ipar, const RealArray & rpar );
36 
39 
40  int update( MappingInformation & mapInfo ) ;
41 
42 protected:
43 
45 
46  // we store parameters for the lofted mapping here:
49 
50  int profileSetup(MappingInformation & mapInfo);
51  int sectionSetup(MappingInformation & mapInfo);
52 
53  private:
54  //
55  // Virtual member functions used only through class ReferenceCounting:
56  //
58  { return operator=((LoftedSurfaceMapping &)x); }
59  virtual void reference( const ReferenceCounting& x)
60  { reference((LoftedSurfaceMapping &)x); } // *** Conversion to this class for the virtual = ****
61  virtual ReferenceCounting* virtualConstructor( const CopyType ct = DEEP ) const
62  { return ::new LoftedSurfaceMapping(*this, ct); }
63 
64 };
65 
66 
67 #endif
68 
69