OpenTREP Logo  0.6.0
C++ Open Travel Request Parsing Library
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
FacPlace.hpp
Go to the documentation of this file.
1 #ifndef __OPENTREP_FAC_FACPLACE_HPP
2 #define __OPENTREP_FAC_FACPLACE_HPP
3 
4 // //////////////////////////////////////////////////////////////////////
5 // Import section
6 // //////////////////////////////////////////////////////////////////////
7 // OpenTrep
9 
10 namespace OPENTREP {
11 
12  // Forward declarations.
13  class Place;
14  struct LocationKey;
15  struct Location;
16 
20  class FacPlace : public FacBomAbstract {
21  public:
22 
30  static FacPlace& instance();
31 
38  virtual ~FacPlace();
39 
47  Place& create();
48 
58  Place& create (const LocationKey&);
59 
69  Place& create (const Location&);
70 
77  Place& clone (const Place&);
78 
87  static void initLinkWithExtraPlace (Place&, Place&);
88 
96  static void initLinkWithAlternatePlace (Place&, Place&);
97 
98  private:
105  FacPlace ();
106  FacPlace (const FacPlace&);
107 
108  private:
112  static FacPlace* _instance;
113  };
114 }
115 #endif // __OPENTREP_FAC_FACPLACE_HPP
Class modelling the primary key of a location/POR (point of reference).
Definition: LocationKey.hpp:21
static FacPlace & instance()
Definition: FacPlace.cpp:29
static void initLinkWithAlternatePlace(Place &, Place &)
Definition: FacPlace.cpp:104
Structure modelling a (geographical) location.
Definition: Location.hpp:24
static void initLinkWithExtraPlace(Place &, Place &)
Definition: FacPlace.cpp:93
Place & clone(const Place &)
Definition: FacPlace.cpp:80
Class modelling a place/POR (point of reference).
Definition: Place.hpp:28
virtual ~FacPlace()
Definition: FacPlace.cpp:24
Place & create()
Definition: FacPlace.cpp:41