EPICS ARCHIVER V4
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups
Public Member Functions | List of all members
ArchiveChannel Class Referenceabstract

One archived channel. More...

#include <ArchiveChannel.h>

Inheritance diagram for ArchiveChannel:
NamedBase Guardable ProcessVariableListener Named ProcessVariableStateListener ProcessVariableValueListener ArchiveChannelEA3

Public Member Functions

 ArchiveChannel (EngineConfig &config, ProcessVariableContext &ctx, ScanList &scan_list, const char *channel_name, double scan_period, bool monitor)
 Create channel with given name. More...
 
virtual ~ArchiveChannel ()
 Destructor.
 
virtual OrderedMutexgetMutex ()
 
virtual void pvConnected (ProcessVariable &pv, const epicsTime &when)
 Implements ProcessVariableStateListener by forwrding connect/disconnect info to ArchiveChannelStateListeners.
 
virtual void pvDisconnected (ProcessVariable &pv, const epicsTime &when)
 Implements ProcessVariableStateListener by forwrding connect/disconnect info to ArchiveChannelStateListeners.
 
virtual void pvValue (ProcessVariable &pv, const RawValue::Data *data)
 Implements ProcessVariableValueListener for handling enable/disable.
 
void configure (ProcessVariableContext &ctx, ScanList &scan_list, double scan_period, bool monitor)
 Configure or re-configure channel. More...
 
void addToGroup (Guard &group_guard, class GroupInfo *group, Guard &channel_guard, bool disabling)
 Add channel to a group. More...
 
const stdList< class GroupInfo * > getGroups (Guard &guard) const
 
const stdList< class GroupInfo * > getGroupsToDisable (Guard &guard) const
 
void start (Guard &guard)
 Start the sample mechanism. More...
 
bool isRunning (Guard &guard)
 
bool isConnected (Guard &guard) const
 
void disable (Guard &guard, const epicsTime &when)
 Temporarily disable sampling. More...
 
void enable (Guard &guard, const epicsTime &when)
 Re-enable sampling. More...
 
bool isDisabling (Guard &guard) const
 
bool isDisabled (Guard &guard) const
 
std::string getSampleInfo (Guard &guard)
 
void stop (Guard &guard)
 Stop sampling. More...
 
unsigned long write (Guard &guard, Index &index)
 Write samples to index. More...
 
void addToFUX (Guard &guard, class FUX::Element *doc)
 Append this channel to a FUX document. More...
 
- Public Member Functions inherited from NamedBase
 NamedBase (const char *name)
 Create a Named thing with given name. More...
 
const stdString & getName () const
 
- Public Member Functions inherited from ProcessVariableStateListener
virtual ~ProcessVariableStateListener ()
 Constructor.
 

Detailed Description

One archived channel.

Constructor & Destructor Documentation

ArchiveChannel::ArchiveChannel ( EngineConfig config,
ProcessVariableContext ctx,
ScanList scan_list,
const char *  channel_name,
double  scan_period,
bool  monitor 
)

Create channel with given name.

Member Function Documentation

void ArchiveChannel::addToFUX ( Guard guard,
class FUX::Element doc 
)

Append this channel to a FUX document.

void ArchiveChannel::addToGroup ( Guard group_guard,
class GroupInfo group,
Guard channel_guard,
bool  disabling 
)

Add channel to a group.

void ArchiveChannel::configure ( ProcessVariableContext ctx,
ScanList scan_list,
double  scan_period,
bool  monitor 
)

Configure or re-configure channel.

When re-configured, the scan period will be minimized, any 'monitor' overrides a 'non-monitor' configure call.

Do not lock the ArchiveChannel while calling configure!

void ArchiveChannel::disable ( Guard guard,
const epicsTime &  when 
)

Temporarily disable sampling.

See Also
enable()
void ArchiveChannel::enable ( Guard guard,
const epicsTime &  when 
)

Re-enable sampling.

See Also
disable()
const stdList< class GroupInfo * > ArchiveChannel::getGroups ( Guard guard) const
inline
Returns
Returns list of groups where this channel is a member.
const stdList< class GroupInfo * > ArchiveChannel::getGroupsToDisable ( Guard guard) const
inline
Returns
Returns list of groups to disable.
virtual OrderedMutex& ArchiveChannel::getMutex ( )
virtual
See Also
Guardable

Implements Guardable.

std::string ArchiveChannel::getSampleInfo ( Guard guard)
Returns
Returns string that describes the current sample mechanism and its state.
bool ArchiveChannel::isConnected ( Guard guard) const
Returns
Returns true if started and successfully connected.
bool ArchiveChannel::isDisabled ( Guard guard) const
inline
Returns
Returns true if currently disabled.
bool ArchiveChannel::isDisabling ( Guard guard) const
inline
Returns
Returns true if currently disabling.
See Also
getGroupsToDisable
bool ArchiveChannel::isRunning ( Guard guard)
Returns
Returns true if start() has been called but not stop().
See Also
start()
void ArchiveChannel::start ( Guard guard)

Start the sample mechanism.

void ArchiveChannel::stop ( Guard guard)

Stop sampling.

unsigned long ArchiveChannel::write ( Guard guard,
Index index 
)

Write samples to index.

Returns
Returns numbe of samples written.

The documentation for this class was generated from the following file: