50 lines
1.2 KiB
C++
50 lines
1.2 KiB
C++
/* exampleServer.h */
|
|
/**
|
|
* Copyright - See the COPYRIGHT that is included with this distribution.
|
|
* EPICS pvData is distributed subject to a Software License Agreement found
|
|
* in file LICENSE that is included with this distribution.
|
|
*/
|
|
/**
|
|
* @author mrk
|
|
* @date 2013.04.02
|
|
*/
|
|
#ifndef EXAMPLECOUNTER_H
|
|
#define EXAMPLECOUNTER_H
|
|
|
|
|
|
#include <pv/pvDatabase.h>
|
|
#include <pv/timeStamp.h>
|
|
#include <pv/pvTimeStamp.h>
|
|
|
|
namespace epics { namespace exampleServer {
|
|
|
|
|
|
class ExampleServer;
|
|
typedef std::tr1::shared_ptr<ExampleServer> ExampleServerPtr;
|
|
|
|
class ExampleServer :
|
|
public epics::pvDatabase::PVRecord
|
|
{
|
|
public:
|
|
POINTER_DEFINITIONS(ExampleServer);
|
|
static ExampleServerPtr create(
|
|
epics::pvData::String const & recordName);
|
|
virtual ~ExampleServer();
|
|
virtual void destroy();
|
|
virtual bool init();
|
|
virtual void process();
|
|
private:
|
|
ExampleServer(epics::pvData::String const & recordName,
|
|
epics::pvData::PVStructurePtr const & pvStructure);
|
|
|
|
epics::pvData::PVStringPtr pvArgumentValue;
|
|
epics::pvData::PVStringPtr pvResultValue;
|
|
epics::pvData::PVTimeStamp pvTimeStamp;
|
|
epics::pvData::TimeStamp timeStamp;
|
|
};
|
|
|
|
|
|
}}
|
|
|
|
#endif /* EXAMPLECOUNTER_H */
|