![]() |
Rosetta Core
2014.35
|
Base class for Pose/Conformation observers that are stored in a Pose's DataCache. More...
#include <CacheableObserver.hh>
Public Member Functions | |
CacheableObserver () | |
default constructor More... | |
CacheableObserver (CacheableObserver const &rval) | |
copy constructor More... | |
virtual | ~CacheableObserver () |
default destructor More... | |
CacheableObserver & | operator= (CacheableObserver const &rval) |
copy assignment More... | |
virtual CacheableObserverOP | clone ()=0 |
clone this object More... | |
virtual CacheableObserverOP | create ()=0 |
create a new instance of this object More... | |
void | attach_to (Pose &pose) |
attach to Pose/Conformation Derived classes do not overload this method – see attach_impl() instead. More... | |
void | detach_from () |
detach from Pose/Conformation More... | |
virtual bool | is_attached () const =0 |
is this observer attached to a Pose/Conformation? More... | |
Protected Member Functions | |
virtual void | attach_impl (Pose &pose)=0 |
attach to Pose/Conformation More... | |
virtual void | detach_impl ()=0 |
detach from Pose/Conformation More... | |
Private Types | |
typedef utility::pointer::ReferenceCount | Super |
Base class for Pose/Conformation observers that are stored in a Pose's DataCache.
Classes derived from CacheableObserver whose instances are stored inside a Pose's ObserverCache will be cloned and re-attached to the new Pose instance upon Pose copy construction/assignment. CacheableObservers should not need to attach themselves independently unless necessary – attach/detach should be done through the ObserverCache's interface. For example, the ObserverCache can attach the observer upon calling ObserverCache::set().
core::pose::datacache::CacheableObserver::CacheableObserver | ( | ) |
default constructor
core::pose::datacache::CacheableObserver::CacheableObserver | ( | CacheableObserver const & | rval | ) |
copy constructor
|
virtual |
default destructor
|
protectedpure virtual |
attach to Pose/Conformation
Implemented in core::pose::datacache::SpecialSegmentsObserver, and core::pose::datacache::LengthEventCollector.
Referenced by attach_to().
void core::pose::datacache::CacheableObserver::attach_to | ( | Pose & | pose | ) |
attach to Pose/Conformation Derived classes do not overload this method – see attach_impl() instead.
References attach_impl(), and detach_from().
|
pure virtual |
clone this object
Implemented in core::pose::datacache::SpecialSegmentsObserver, and core::pose::datacache::LengthEventCollector.
|
pure virtual |
create a new instance of this object
Implemented in core::pose::datacache::SpecialSegmentsObserver, and core::pose::datacache::LengthEventCollector.
void core::pose::datacache::CacheableObserver::detach_from | ( | ) |
detach from Pose/Conformation
References detach_impl().
Referenced by attach_to(), core::pose::datacache::LengthEventCollector::~LengthEventCollector(), and core::pose::datacache::SpecialSegmentsObserver::~SpecialSegmentsObserver().
|
protectedpure virtual |
detach from Pose/Conformation
Implemented in core::pose::datacache::SpecialSegmentsObserver, and core::pose::datacache::LengthEventCollector.
Referenced by detach_from().
|
pure virtual |
is this observer attached to a Pose/Conformation?
Implemented in core::pose::datacache::SpecialSegmentsObserver, and core::pose::datacache::LengthEventCollector.
CacheableObserver & core::pose::datacache::CacheableObserver::operator= | ( | CacheableObserver const & | rval | ) |
copy assignment
Referenced by core::pose::datacache::LengthEventCollector::operator=(), and core::pose::datacache::SpecialSegmentsObserver::operator=().