From fb2519f6f9d79c7626a0281ad24925b4976cd81d Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Tue, 21 May 2013 19:22:51 -0400 Subject: Add ability to get underlying eager pointer in weak pointers --- odb/tr1/lazy-ptr.hxx | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'odb/tr1/lazy-ptr.hxx') diff --git a/odb/tr1/lazy-ptr.hxx b/odb/tr1/lazy-ptr.hxx index d877998..5e040cf 100644 --- a/odb/tr1/lazy-ptr.hxx +++ b/odb/tr1/lazy-ptr.hxx @@ -98,6 +98,11 @@ namespace odb // void unload () const; + // Get the underlying eager pointer. If this is an unloaded pointer + // to a persistent object, then the returned pointer will be NULL. + // + std::tr1::shared_ptr get_eager () const; + template lazy_shared_ptr (DB&, const ID&); template lazy_shared_ptr (DB&, Y*); template lazy_shared_ptr (DB&, Y*, D); @@ -207,6 +212,11 @@ namespace odb // void unload () const; + // Get the underlying eager pointer. If this is an unloaded pointer + // to a persistent object, then the returned pointer will be NULL. + // + std::tr1::weak_ptr get_eager () const; + template lazy_weak_ptr (DB&, const ID&); template lazy_weak_ptr (DB&, const std::tr1::shared_ptr&); template lazy_weak_ptr (DB&, const std::tr1::weak_ptr&); -- cgit v1.1