pvAccessCPP  7.1.1
Classes | Public Member Functions | Static Public Member Functions | List of all members
epics::pvAccess::ServerContext Class Referenceabstract

The class representing a PVA Server context. More...

#include <server/pv/serverContext.h>

Inherited by epics::pvAccess::ServerContextImpl.

Classes

class  Config
 Options for a server insatnce. More...
 

Public Member Functions

 POINTER_DEFINITIONS (ServerContext)
 
virtual ~ServerContext ()
 Destructor.
 
virtual const ServerGUIDgetGUID ()=0
 Returns GUID (12-byte array). More...
 
virtual const Version & getVersion ()=0
 Get context implementation version. More...
 
virtual void run (epics::pvData::uint32 seconds)=0
 Run server (process events). More...
 
virtual void shutdown ()=0
 
void printInfo (int lvl=0)
 Prints detailed information about the context to the standard output stream.
 
virtual void printInfo (std::ostream &str, int lvl=0)=0
 Prints detailed information about the context to the specified output stream. More...
 
virtual epicsTimeStamp & getStartTime ()=0
 
virtual epics::pvData::int32 getServerPort ()=0
 Get server port. More...
 
virtual epics::pvData::int32 getBroadcastPort ()=0
 Get broadcast port. More...
 
virtual Configuration::shared_pointer getCurrentConfig ()=0
 Return a Configuration with the actual values being used, including defaults used, and bounds limits applied.
 
virtual const std::vector< ChannelProvider::shared_pointer > & getChannelProviders ()=0
 
virtual void setBeaconServerStatusProvider (BeaconServerStatusProvider::shared_pointer const &beaconServerStatusProvider)=0
 Set beacon server status provider. More...
 

Static Public Member Functions

static ServerContext::shared_pointer create (const Config &conf=Config())
 Start a new PVA server. More...
 

Detailed Description

The class representing a PVA Server context.

Definition at line 27 of file serverContext.h.

Member Function Documentation

◆ create()

static ServerContext::shared_pointer epics::pvAccess::ServerContext::create ( const Config conf = Config())
static

Start a new PVA server.

By default the server will select ChannelProviders using the EPICS_PVAS_PROVIDER_NAMES Configuration key.

If a list of provided is given with Config::providers() then this overrides any Configuration.

If a specific Configuration is given with Config::config() then this overrides the default Configuration.

Returns
shared_ptr<ServerContext> which will automatically shutdown() when the last reference is released.

◆ getBroadcastPort()

virtual epics::pvData::int32 epics::pvAccess::ServerContext::getBroadcastPort ( )
pure virtual

Get broadcast port.

Returns
broadcast port.

◆ getGUID()

virtual const ServerGUID& epics::pvAccess::ServerContext::getGUID ( )
pure virtual

Returns GUID (12-byte array).

Returns
GUID.

◆ getServerPort()

virtual epics::pvData::int32 epics::pvAccess::ServerContext::getServerPort ( )
pure virtual

Get server port.

Returns
server port.

◆ getVersion()

virtual const Version& epics::pvAccess::ServerContext::getVersion ( )
pure virtual

Get context implementation version.

Returns
version of the context implementation.

◆ printInfo()

virtual void epics::pvAccess::ServerContext::printInfo ( std::ostream str,
int  lvl = 0 
)
pure virtual

Prints detailed information about the context to the specified output stream.

Parameters
lvldetail level
strstream to which to print the info

◆ run()

virtual void epics::pvAccess::ServerContext::run ( epics::pvData::uint32  seconds)
pure virtual

Run server (process events).

Parameters
secondstime in seconds the server will process events (method will block), if 0 the method would block until destroy() is called.
Exceptions
BaseExceptionif server is already destroyed.

◆ setBeaconServerStatusProvider()

virtual void epics::pvAccess::ServerContext::setBeaconServerStatusProvider ( BeaconServerStatusProvider::shared_pointer const &  beaconServerStatusProvider)
pure virtual

Set beacon server status provider.

Parameters
beaconServerStatusProviderBeaconServerStatusProvider implementation to set.

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