import/export

This commit is contained in:
Michael Davidsaver
2017-07-12 16:17:49 +02:00
parent 7e2d85e5a2
commit 91c9cf8b38
13 changed files with 51 additions and 22 deletions

View File

@ -14,12 +14,14 @@
#include "weakmap.h"
#include "weakset.h"
#include <shareLib.h>
struct ChannelCache;
struct ChannelCacheEntry;
struct MonitorUser;
struct GWChannel;
struct MonitorCacheEntry : public epics::pvData::MonitorRequester
struct epicsShareClass MonitorCacheEntry : public epics::pvData::MonitorRequester
{
POINTER_DEFINITIONS(MonitorCacheEntry);
static size_t num_instances;
@ -63,7 +65,7 @@ struct MonitorCacheEntry : public epics::pvData::MonitorRequester
virtual void message(std::string const & message, epics::pvData::MessageType messageType);
};
struct MonitorUser : public epics::pvData::Monitor
struct epicsShareClass MonitorUser : public epics::pvData::Monitor
{
POINTER_DEFINITIONS(MonitorUser);
static size_t num_instances;
@ -102,7 +104,7 @@ struct MonitorUser : public epics::pvData::Monitor
virtual void message(std::string const & message, epics::pvData::MessageType messageType);
};
struct ChannelCacheEntry
struct epicsShareClass ChannelCacheEntry
{
POINTER_DEFINITIONS(ChannelCacheEntry);
static size_t num_instances;

View File

@ -5,7 +5,9 @@
#include "chancache.h"
struct GWChannel : public epics::pvAccess::Channel
#include <shareLib.h>
struct epicsShareClass GWChannel : public epics::pvAccess::Channel
{
POINTER_DEFINITIONS(GWChannel);
static size_t num_instances;

View File

@ -4,7 +4,9 @@
#include "chancache.h"
#include "channel.h"
struct GWServerChannelProvider : public
#include <shareLib.h>
struct epicsShareClass GWServerChannelProvider : public
epics::pvAccess::ChannelProvider,
epics::pvAccess::ChannelFind,
std::tr1::enable_shared_from_this<GWServerChannelProvider>

View File

@ -6,6 +6,7 @@
#include <epicsString.h>
#include <epicsAtomic.h>
#define epicsExportSharedSymbols
#include "helper.h"
#include "pdbsingle.h"
#include "pdbgroup.h"

View File

@ -8,6 +8,8 @@
#include "weakmap.h"
#include <shareLib.h>
struct PDBProvider;
struct PDBPV
@ -25,7 +27,7 @@ struct PDBPV
const epics::pvAccess::ChannelRequester::shared_pointer& req) =0;
};
struct PDBProvider : public epics::pvAccess::ChannelProvider,
struct epicsShareClass PDBProvider : public epics::pvAccess::ChannelProvider,
public std::tr1::enable_shared_from_this<PDBProvider>
{
POINTER_DEFINITIONS(PDBProvider);

View File

@ -2,6 +2,7 @@
#include <epicsAtomic.h>
#include <dbAccess.h>
#define epicsExportSharedSymbols
#include "errlogstream.h"
#include "helper.h"
#include "pdbgroup.h"

View File

@ -12,12 +12,14 @@
#include "pvif.h"
#include "pdb.h"
#include <shareLib.h>
struct PDBGroupMonitor;
void pdb_group_event(void *user_arg, struct dbChannel *chan,
int eventsRemaining, struct db_field_log *pfl);
struct PDBGroupPV : public PDBPV
struct epicsShareClass PDBGroupPV : public PDBPV
{
POINTER_DEFINITIONS(PDBGroupPV);
weak_pointer weakself;
@ -65,7 +67,7 @@ struct PDBGroupPV : public PDBPV
const epics::pvAccess::ChannelRequester::shared_pointer& req);
};
struct PDBGroupChannel : public BaseChannel,
struct epicsShareClass PDBGroupChannel : public BaseChannel,
public std::tr1::enable_shared_from_this<PDBGroupChannel>
{
POINTER_DEFINITIONS(PDBGroupChannel);

View File

@ -14,9 +14,11 @@
#include "pvif.h"
#include "pdb.h"
#include <shareLib.h>
struct PDBSingleMonitor;
struct PDBSinglePV : public PDBPV
struct epicsShareClass PDBSinglePV : public PDBPV
{
POINTER_DEFINITIONS(PDBSinglePV);
weak_pointer weakself;

View File

@ -4,6 +4,16 @@
#include <pv/pvIntrospect.h> /* for pvdVersion.h */
#include <pv/standardField.h>
#include <dbAccess.h>
#include <dbChannel.h>
#include <dbStaticLib.h>
#include <dbLock.h>
#include <dbEvent.h>
#include <pv/bitSet.h>
#include <pv/pvData.h>
#define epicsExportSharedSymbols
#include "pvif.h"

View File

@ -12,6 +12,8 @@
#include <pv/bitSet.h>
#include <pv/pvData.h>
#include <shareLib.h>
epics::pvData::ScalarType DBR2PVD(short dbr);
short PVD2DBR(epics::pvData::ScalarType pvt);
@ -28,7 +30,7 @@ union dbrbuf {
char dbf_STRING[MAX_STRING_SIZE];
};
struct DBCH {
struct epicsShareClass DBCH {
dbChannel *chan;
DBCH() :chan(0) {}
explicit DBCH(dbChannel *ch); // calls dbChannelOpen()
@ -235,7 +237,7 @@ struct DBManyLocker
}
};
struct PVIF {
struct epicsShareClass PVIF {
PVIF(dbChannel *ch, const epics::pvData::PVStructurePtr& p);
virtual ~PVIF() {}

View File

@ -40,7 +40,7 @@ struct TestMonitor {
TestPV::shared_pointer test1;
ScalarAccessor<pvd::int32> test1_x, test1_y;
GWServerChannelProvider::shared_pointer gateway;
pva::ChannelProvider::shared_pointer gateway;
TestChannelRequester::shared_pointer client_req;
pva::Channel::shared_pointer client;

View File

@ -1,6 +1,7 @@
#include <epicsAtomic.h>
#define epicsExportSharedSymbols
#include <utilities.h>
#include <helper.h>

View File

@ -15,6 +15,8 @@
#include "weakmap.h"
#include "weakset.h"
#include <shareLib.h>
struct TestPV;
struct TestPVChannel;
struct TestPVMonitor;
@ -94,7 +96,7 @@ struct ScalarAccessor {
}
};
struct TestChannelRequester : public epics::pvAccess::ChannelRequester
struct epicsShareClass TestChannelRequester : public epics::pvAccess::ChannelRequester
{
POINTER_DEFINITIONS(TestChannelRequester);
DUMBREQUESTER(TestChannelRequester)
@ -112,7 +114,7 @@ struct TestChannelRequester : public epics::pvAccess::ChannelRequester
bool waitForConnect();
};
struct TestChannelFieldRequester : public epics::pvAccess::GetFieldRequester
struct epicsShareClass TestChannelFieldRequester : public epics::pvAccess::GetFieldRequester
{
POINTER_DEFINITIONS(TestChannelFieldRequester);
DUMBREQUESTER(TestChannelFieldRequester)
@ -134,7 +136,7 @@ struct TestChannelFieldRequester : public epics::pvAccess::GetFieldRequester
}
};
struct TestChannelGetRequester : public epics::pvAccess::ChannelGetRequester
struct epicsShareClass TestChannelGetRequester : public epics::pvAccess::ChannelGetRequester
{
POINTER_DEFINITIONS(TestChannelGetRequester);
DUMBREQUESTER(TestChannelGetRequester)
@ -161,7 +163,7 @@ struct TestChannelGetRequester : public epics::pvAccess::ChannelGetRequester
epics::pvData::BitSet::shared_pointer const & bitSet);
};
struct TestChannelPutRequester : public epics::pvAccess::ChannelPutRequester
struct epicsShareClass TestChannelPutRequester : public epics::pvAccess::ChannelPutRequester
{
POINTER_DEFINITIONS(TestChannelPutRequester);
DUMBREQUESTER(TestChannelPutRequester)
@ -192,7 +194,7 @@ struct TestChannelPutRequester : public epics::pvAccess::ChannelPutRequester
epics::pvData::BitSet::shared_pointer const & bitSet);
};
struct TestChannelMonitorRequester : public epics::pvData::MonitorRequester
struct epicsShareClass TestChannelMonitorRequester : public epics::pvData::MonitorRequester
{
POINTER_DEFINITIONS(TestChannelMonitorRequester);
DUMBREQUESTER(TestChannelMonitorRequester)
@ -219,7 +221,7 @@ struct TestChannelMonitorRequester : public epics::pvData::MonitorRequester
bool waitForEvent();
};
struct TestPVChannel : public BaseChannel
struct epicsShareClass TestPVChannel : public BaseChannel
{
POINTER_DEFINITIONS(TestPVChannel);
DUMBREQUESTER(TestPVChannel)
@ -247,7 +249,7 @@ struct TestPVChannel : public BaseChannel
virtual void printInfo(std::ostream& out) {}
};
struct TestPVMonitor : public epics::pvData::Monitor
struct epicsShareClass TestPVMonitor : public epics::pvData::Monitor
{
POINTER_DEFINITIONS(TestPVMonitor);
std::tr1::weak_ptr<TestPVMonitor> weakself;
@ -276,7 +278,7 @@ struct TestPVMonitor : public epics::pvData::Monitor
epics::pvData::MonitorElementPtr overflow;
};
struct TestPV
struct epicsShareClass TestPV
{
POINTER_DEFINITIONS(TestPV);
std::tr1::weak_ptr<TestPV> weakself;
@ -306,7 +308,7 @@ struct TestPV
friend struct TestProvider;
};
struct TestProvider : public epics::pvAccess::ChannelProvider, std::tr1::enable_shared_from_this<TestProvider>
struct epicsShareClass TestProvider : public epics::pvAccess::ChannelProvider, std::tr1::enable_shared_from_this<TestProvider>
{
POINTER_DEFINITIONS(TestProvider);
@ -336,7 +338,7 @@ struct TestProvider : public epics::pvAccess::ChannelProvider, std::tr1::enable_
static void testCounts();
};
struct TestIOC {
struct epicsShareClass TestIOC {
bool hasInit;
TestIOC() : hasInit(false) {
testdbPrepare();