6 #ifndef NTSCALARMULTICHANNEL_H 7 #define NTSCALARMULTICHANNEL_H 12 #ifdef epicsExportSharedSymbols 13 # define ntscalarMultiChannelEpicsExportSharedSymbols 14 # undef epicsExportSharedSymbols 20 #ifdef ntscalarMultiChannelEpicsExportSharedSymbols 21 # define epicsExportSharedSymbols 22 # undef ntscalarMultiChannelEpicsExportSharedSymbols 30 namespace epics {
namespace nt {
47 public std::tr1::enable_shared_from_this<NTScalarMultiChannelBuilder>
64 shared_pointer addDescriptor();
70 shared_pointer addAlarm();
76 shared_pointer addTimeStamp();
82 shared_pointer addSeverity();
88 shared_pointer addStatus();
94 shared_pointer addMessage();
100 shared_pointer addSecondsPastEpoch();
106 shared_pointer addNanoseconds();
112 shared_pointer addUserTag();
118 shared_pointer addIsConnected();
139 NTScalarMultiChannelPtr create();
161 bool secondsPastEpoch;
170 friend class ::epics::nt::NTScalarMultiChannel;
189 static const std::string
URI;
250 static bool isCompatible(
261 static bool isCompatible(
278 static NTScalarMultiChannelBuilderPtr createBuilder();
305 {
return pvNTScalarMultiChannel;}
312 {
return pvDescriptor;}
319 {
return pvTimeStamp;}
342 template<
typename PVT>
353 {
return pvChannelName;};
360 {
return pvIsConnected;};
388 {
return pvSecondsPastEpoch;}
395 {
return pvNanoseconds;}
std::tr1::shared_ptr< PVIntArray > PVIntArrayPtr
epics::pvData::PVStringPtr getDescriptor() const
epics::pvData::PVScalarArrayPtr getValue() const
std::tr1::shared_ptr< PVBooleanArray > PVBooleanArrayPtr
epics::pvData::PVIntArrayPtr getStatus() const
TODO only here because of the Lockable.
std::tr1::shared_ptr< const Structure > StructureConstPtr
Mark external symbols and entry points for shared libraries.
std::tr1::shared_ptr< PVStringArray > PVStringArrayPtr
epics::pvData::PVBooleanArrayPtr getIsConnected() const
std::tr1::shared_ptr< PVT > getValue() const
epics::pvData::PVStructurePtr getAlarm() const
Interface for in-line creating of NTScalarMultiChannel.
epics::pvData::PVStringArrayPtr getMessage() const
#define POINTER_DEFINITIONS(clazz)
epics::pvData::PVIntArrayPtr getSeverity() const
std::tr1::shared_ptr< detail::NTScalarMultiChannelBuilder > NTScalarMultiChannelBuilderPtr
epics::pvData::PVStringArrayPtr getChannelName() const
Methods for accessing a timeStamp structure.
Methods for accessing an alarm structure.
std::vector< FieldConstPtr > FieldConstPtrArray
epics::pvData::PVIntArrayPtr getUserTag() const
std::tr1::shared_ptr< const Field > FieldConstPtr
std::tr1::shared_ptr< PVLongArray > PVLongArrayPtr
std::tr1::shared_ptr< PVStructure > PVStructurePtr
std::tr1::shared_ptr< PVString > PVStringPtr
std::vector< std::string > StringArray
epics::pvData::PVLongArrayPtr getSecondsPastEpoch() const
shared_ptr< T > dynamic_pointer_cast(shared_ptr< U > const &r) BOOST_NOEXCEPT
static const std::string URI
Convenience Class for NTScalarMultiChannel.
epics::pvData::PVIntArrayPtr getNanoseconds() const
epics::pvData::PVStructurePtr getPVStructure() const
std::tr1::shared_ptr< PVScalarArray > PVScalarArrayPtr
epics::pvData::PVStructurePtr getTimeStamp() const
std::tr1::shared_ptr< NTScalarMultiChannel > NTScalarMultiChannelPtr