19 namespace epics {
namespace pvCopy{
23 class PVPluginRegistry;
26 typedef std::tr1::shared_ptr<PVCopy>
PVCopyPtr;
30 typedef std::map<std::string,PVPluginPtr>
PVPluginMap;
56 virtual PVFilterPtr create(
57 const std::string & requestValue,
58 const PVCopyPtr & pvCopy,
85 virtual std::string getName() = 0;
98 static void registerPlugin(
const std::string & name,
const PVPluginPtr & pvPlugin);
104 static PVPluginPtr find(
const std::string & name);
std::map< std::string, PVPluginPtr > PVPluginMap
std::tr1::shared_ptr< PVPlugin > PVPluginPtr
std::tr1::shared_ptr< PVFilter > PVFilterPtr
std::tr1::shared_ptr< PVCopy > PVCopyPtr
TODO only here because of the Lockable.
Mark external symbols and entry points for shared libraries.
Support for subset of fields in a pvStructure.
void copy(PVValueArray< T > &pvFrom, size_t fromOffset, size_t fromStride, PVValueArray< T > &pvTo, size_t toOffset, size_t toStride, size_t count)
Copy a subarray from one scalar array to another.
#define POINTER_DEFINITIONS(clazz)
A filter plugin that attaches to a field of a PVStrcture.
A registry for filter plugins for PVCopy.
std::tr1::shared_ptr< PVField > PVFieldPtr
std::tr1::shared_ptr< BitSet > BitSetPtr
A Filter that is called when a copy PVStructure is being updated.