QuantLib_Handle man page
Handle< T > — Shared handle to an observable.
Inherited by RelinkableHandle< T >.
Public Member Functions
const boost::shared_ptr< T > & currentLink () const
const boost::shared_ptr< T > & operator-> () const
const boost::shared_ptr< T > & operator* () const
bool empty () const
checks if the contained shared pointer points to anything
operator boost::shared_ptr< Observable > () const
allows registration as observable
template<class U > bool operator== (const Handle< U > &other)
template<class U > bool operator!= (const Handle< U > &other)
template<class U > bool operator< (const Handle< U > &other)
strict weak ordering
registerAsObserveris left as a backdoor in case the programmer cannot guarantee that the object pointed to will remain alive for the whole lifetime of the handle---namely, it should be set to
falsewhen the passed shared pointer does not own the pointee (this should only happen in a controlled environment, so that the programmer is aware of it). Failure to do so can very likely result in a program crash. If the programmer does want the handle to register as observer of such a shared pointer, it is his responsibility to ensure that the handle gets destroyed before the pointed object does.
Handle (const boost::shared_ptr< T > &p=boost::shared_ptr< T >(), bool registerAsObserver=true)
boost::shared_ptr< Link > link_
class QuantLib::Handle< T >" Shared handle to an observable.
All copies of an instance of this class refer to the same observable by means of a relinkable smart pointer. When such pointer is relinked to another observable, the change will be propagated to all the copies.
Class T must inherit from Observable
Examples: BermudanSwaption.cpp, Bonds.cpp, CallableBonds.cpp, CDS.cpp, ConvertibleBonds.cpp, DiscreteHedging.cpp, EquityOption.cpp, Replication.cpp, and swapvaluation.cpp.
Generated automatically by Doxygen for QuantLib from the source code.
currentLink(3), Handle(3) and link_(3) are aliases of QuantLib_Handle(3).