9 #ifdef epicsExportSharedSymbols 10 # define ntcontinuumEpicsExportSharedSymbols 11 # undef epicsExportSharedSymbols 14 #ifdef ntcontinuumEpicsExportSharedSymbols 15 # define epicsExportSharedSymbols 16 # undef ntcontinuumEpicsExportSharedSymbols 24 namespace epics {
namespace nt {
39 public std::tr1::enable_shared_from_this<NTContinuumBuilder>
48 shared_pointer addDescriptor();
54 shared_pointer addAlarm();
60 shared_pointer addTimeStamp();
67 epics::pvData::StructureConstPtr createStructure();
74 epics::pvData::PVStructurePtr createPVStructure();
81 NTContinuumPtr create();
89 shared_pointer add(std::string
const & name, epics::pvData::FieldConstPtr
const & field);
101 epics::pvData::StringArray extraFieldNames;
102 epics::pvData::FieldConstPtrArray extraFields;
104 friend class ::epics::nt::NTContinuum;
123 static const std::string
URI;
136 static shared_pointer wrap(epics::pvData::PVStructurePtr
const & pvStructure);
147 static shared_pointer wrapUnsafe(epics::pvData::PVStructurePtr
const & pvStructure);
160 static bool is_a(epics::pvData::StructureConstPtr
const & structure);
173 static bool is_a(epics::pvData::PVStructurePtr
const & pvStructure);
184 static bool isCompatible(
185 epics::pvData::StructureConstPtr
const &structure);
196 static bool isCompatible(
197 epics::pvData::PVStructurePtr
const &pvStructure);
214 static NTContinuumBuilderPtr createBuilder();
227 bool attachTimeStamp(epics::pvData::PVTimeStamp &pvTimeStamp)
const;
235 bool attachAlarm(epics::pvData::PVAlarm &pvAlarm)
const;
241 epics::pvData::PVStructurePtr getPVStructure()
const;
247 epics::pvData::PVStringPtr getDescriptor()
const;
253 epics::pvData::PVStructurePtr getTimeStamp()
const;
259 epics::pvData::PVStructurePtr getAlarm()
const;
265 epics::pvData::PVDoubleArrayPtr getBase()
const;
271 epics::pvData::PVDoubleArrayPtr getValue()
const;
277 epics::pvData::PVStringArrayPtr getUnits()
const;
280 NTContinuum(epics::pvData::PVStructurePtr
const & pvStructure);
281 epics::pvData::PVStructurePtr pvNTContinuum;
282 epics::pvData::PVDoubleArrayPtr pvValue;
std::tr1::shared_ptr< detail::NTContinuumBuilder > NTContinuumBuilderPtr
Convenience Class for NTContinuum.
Interface for in-line creating of NTContinuum.
static const std::string URI
std::tr1::shared_ptr< NTContinuum > NTContinuumPtr