#include <Proxy.h>
Inheritance diagram for PSEvt::Proxy< T >:
Public Member Functions | |
virtual | ~Proxy () |
Protected Member Functions | |
Proxy () | |
virtual boost::shared_ptr< void > | getImpl (ProxyDictI *dict, const Pds::Src &source, const std::string &key) |
Get untyped object from the proxy. | |
virtual boost::shared_ptr< T > | getTypedImpl (ProxyDictI *dict, const Pds::Src &source, const std::string &key)=0 |
Get the correctly-typed object from the proxy. |
Proxy dictionary stores proxies of type ProxyI which are not type-safe (they work with void pointers). To make code safer this class implements ProxyI interface and introduces type-safe method to generate typed data. User-level interface should use this type instead of ProxyI.
This software was developed for the LCLS project. If you use all or part of it, please give an appropriate acknowledgment.
Definition at line 64 of file Proxy.h.
virtual PSEvt::Proxy< T >::~Proxy | ( | ) | [inline, virtual] |
PSEvt::Proxy< T >::Proxy | ( | ) | [inline, protected] |
virtual boost::shared_ptr<void> PSEvt::Proxy< T >::getImpl | ( | ProxyDictI * | dict, | |
const Pds::Src & | source, | |||
const std::string & | key | |||
) | [inline, protected, virtual] |
Get untyped object from the proxy.
The parameters passed to the proxy can be used by the proxy to find additional information from the same (or different) detector.
This is implementation of ProxyI interface which forwards call to the type-safe method getTypedImpl().
[in] | dict | Proxy dictionary containing this proxy. |
[in] | source | Detector address information |
[in] | key | String key, additional key supplied by user. |
Implements PSEvt::ProxyI.
Definition at line 90 of file Proxy.h.
References PSEvt::Proxy< T >::getTypedImpl().
virtual boost::shared_ptr<T> PSEvt::Proxy< T >::getTypedImpl | ( | ProxyDictI * | dict, | |
const Pds::Src & | source, | |||
const std::string & | key | |||
) | [protected, pure virtual] |
Get the correctly-typed object from the proxy.
[in] | dict | Proxy dictionary containing this proxy. |
[in] | source | Detector address information |
[in] | key | String key, additional key supplied by user. |
Implemented in PSEvt::DataProxy< T >.
Referenced by PSEvt::Proxy< T >::getImpl().