pvDatabaseCPP  4.7.0
Public Member Functions | Static Public Member Functions | Friends | List of all members
epics::pvDatabase::ChannelProviderLocal Class Reference

ChannelProvider for PVDatabase. More...

#include <channelProviderLocal.h>

Inheritance diagram for epics::pvDatabase::ChannelProviderLocal:

Public Member Functions

 POINTER_DEFINITIONS (ChannelProviderLocal)
 
 ChannelProviderLocal ()
 Constructor. More...
 
virtual ~ChannelProviderLocal ()
 Destructor. More...
 
virtual std::string getProviderName ()
 Returns the channel provider name. More...
 
virtual epics::pvAccess::ChannelFind::shared_pointer channelFind (std::string const &channelName, epics::pvAccess::ChannelFindRequester::shared_pointer const &channelFindRequester)
 Returns either a null channelFind or a channelFind for records in the PVDatabase. More...
 
virtual epics::pvAccess::ChannelFind::shared_pointer channelList (epics::pvAccess::ChannelListRequester::shared_pointer const &channelListRequester)
 Calls method channelListRequester::channelListResult. More...
 
virtual epics::pvAccess::Channel::shared_pointer createChannel (std::string const &channelName, epics::pvAccess::ChannelRequester::shared_pointer const &channelRequester, short priority)
 Create a channel for a record. More...
 
virtual epics::pvAccess::Channel::shared_pointer createChannel (std::string const &channelName, epics::pvAccess::ChannelRequester::shared_pointer const &channelRequester, short priority, std::string const &address)
 Create a channel for a record. More...
 
int getTraceLevel ()
 get trace level (0,1,2) means (nothing,lifetime,process) More...
 
void setTraceLevel (int level)
 set trace level (0,1,2) means (nothing,lifetime,process) More...
 
virtual std::tr1::shared_ptr< ChannelProvider > getChannelProvider ()
 ChannelFind method. More...
 
virtual void cancel ()
 ChannelFind method. More...
 

Static Public Member Functions

static void initAs (const std::string &filePath, const std::string &substitutions="")
 Initialize access security configuration. More...
 
static bool isAsActive ()
 Is access security active? More...
 

Friends

class ChannelProviderLocalRun
 
epicsShareFunc ChannelProviderLocalPtr getChannelProviderLocal ()
 

Detailed Description

ChannelProvider for PVDatabase.

An implementation of channelProvider that provides access to records in PVDatabase.

Definition at line 55 of file channelProviderLocal.h.

Constructor & Destructor Documentation

◆ ChannelProviderLocal()

epics::pvDatabase::ChannelProviderLocal::ChannelProviderLocal ( )

Constructor.

Definition at line 71 of file channelProviderLocal.cpp.

◆ ~ChannelProviderLocal()

epics::pvDatabase::ChannelProviderLocal::~ChannelProviderLocal ( )
virtual

Destructor.

Definition at line 80 of file channelProviderLocal.cpp.

Member Function Documentation

◆ cancel()

virtual void epics::pvDatabase::ChannelProviderLocal::cancel ( )
inlinevirtual

ChannelFind method.

Definition at line 167 of file channelProviderLocal.h.

References epics::pvDatabase::getChannelProviderLocal().

◆ channelFind()

ChannelFind::shared_pointer epics::pvDatabase::ChannelProviderLocal::channelFind ( std::string const &  channelName,
epics::pvAccess::ChannelFindRequester::shared_pointer const &  channelFindRequester 
)
virtual

Returns either a null channelFind or a channelFind for records in the PVDatabase.

Parameters
channelNameThe name of the channel desired.
channelFindRequesterThe client callback.
Returns
shared pointer to ChannelFind. This is null if the channelName is not the name of a record in the PVDatabase. It is an implementation of SyncChannelFind if the channelName is the name of a record in the PVDatabase. The interface for SyncChannelFind is defined by pvAccessCPP. The channelFindResult method of channelFindRequester is called before the method returns.

Definition at line 97 of file channelProviderLocal.cpp.

◆ channelList()

ChannelFind::shared_pointer epics::pvDatabase::ChannelProviderLocal::channelList ( epics::pvAccess::ChannelListRequester::shared_pointer const &  channelListRequester)
virtual

Calls method channelListRequester::channelListResult.

This provides the caller with a list of the record names on the PVDatabase. A record name is the same as a channel name.

Parameters
channelListRequesterThe client callback.
Returns
shared pointer to ChannelFind. The interface for SyncChannelFind is defined by pvAccessCPP.

Definition at line 129 of file channelProviderLocal.cpp.

References createChannel().

◆ createChannel() [1/2]

virtual epics::pvAccess::Channel::shared_pointer epics::pvDatabase::ChannelProviderLocal::createChannel ( std::string const &  channelName,
epics::pvAccess::ChannelRequester::shared_pointer const &  channelRequester,
short  priority 
)
virtual

Create a channel for a record.

This method just calls the next method with a address of "".

Parameters
channelNameThe name of the channel desired.
channelRequesterThe client callback.
priorityThe priority.
Returns
shared pointer to Channel.

Referenced by channelList().

◆ createChannel() [2/2]

virtual epics::pvAccess::Channel::shared_pointer epics::pvDatabase::ChannelProviderLocal::createChannel ( std::string const &  channelName,
epics::pvAccess::ChannelRequester::shared_pointer const &  channelRequester,
short  priority,
std::string const &  address 
)
virtual

Create a channel for a record.

Parameters
channelNameThe name of the channel desired.
channelRequesterThe callback to call with the result.
priorityThe priority. This is ignored.
addressThe address. This is ignored.
Returns
shared pointer to Channel. This is null if the channelName is not the name of a record in the PVDatabase. Otherwise it is a newly created channel inteface. ChannelRequester::channelCreated is called to give the result.

◆ getChannelProvider()

std::tr1::shared_ptr< ChannelProvider > epics::pvDatabase::ChannelProviderLocal::getChannelProvider ( )
virtual

ChannelFind method.

Returns
pointer to self.

Definition at line 87 of file channelProviderLocal.cpp.

◆ getProviderName()

string epics::pvDatabase::ChannelProviderLocal::getProviderName ( )
virtual

Returns the channel provider name.

Returns
local

Definition at line 92 of file channelProviderLocal.cpp.

◆ getTraceLevel()

int epics::pvDatabase::ChannelProviderLocal::getTraceLevel ( )
inline

get trace level (0,1,2) means (nothing,lifetime,process)

Returns
the level

Definition at line 151 of file channelProviderLocal.h.

◆ initAs()

void epics::pvDatabase::ChannelProviderLocal::initAs ( const std::string &  filePath,
const std::string &  substitutions = "" 
)
static

Initialize access security configuration.

Parameters
filePathAS definition file path
substitutionsmacro substitutions
Exceptions
std::runtime_errorin case of configuration problem

Definition at line 180 of file channelProviderLocal.cpp.

◆ isAsActive()

bool epics::pvDatabase::ChannelProviderLocal::isAsActive ( )
static

Is access security active?

Returns
true is AS is active

Definition at line 188 of file channelProviderLocal.cpp.

◆ POINTER_DEFINITIONS()

epics::pvDatabase::ChannelProviderLocal::POINTER_DEFINITIONS ( ChannelProviderLocal  )

◆ setTraceLevel()

void epics::pvDatabase::ChannelProviderLocal::setTraceLevel ( int  level)
inline

set trace level (0,1,2) means (nothing,lifetime,process)

Parameters
levelThe level

Definition at line 156 of file channelProviderLocal.h.

Friends And Related Function Documentation

◆ ChannelProviderLocalRun

friend class ChannelProviderLocalRun
friend

Definition at line 172 of file channelProviderLocal.h.

◆ getChannelProviderLocal

epicsShareFunc ChannelProviderLocalPtr getChannelProviderLocal ( )
friend

Definition at line 57 of file channelProviderLocal.cpp.


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