add decorated names for stupid win32

This commit is contained in:
Marty Kraimer
2000-02-24 22:07:15 +00:00
parent 4b931c83ed
commit fd910c14e6
8 changed files with 48 additions and 23 deletions

View File

@@ -17,6 +17,7 @@ of this distribution.
#include "cantProceed.h"
#include "osiFindGlobalSymbol.h"
#include "gpHash.h"
#define epicsExportSharedSymbols
#include "registry.h"
static void *gphPvt = 0;
@@ -28,7 +29,7 @@ static void registryInit(int tableSize)
if(!gphPvt) cantProceed("registry why did gphInitPvt fail\n");
}
int registrySetTableSize(int size)
epicsShareFunc int epicsShareAPI registrySetTableSize(int size)
{
if(gphPvt) {
printf("registryInit already called\n");
@@ -39,7 +40,8 @@ int registrySetTableSize(int size)
}
int registryAdd(void *registryID,const char *name,void *data)
epicsShareFunc int epicsShareAPI registryAdd(
void *registryID,const char *name,void *data)
{
GPHENTRY *pentry;
if(!gphPvt) registryInit(0);
@@ -49,7 +51,8 @@ int registryAdd(void *registryID,const char *name,void *data)
return(TRUE);
}
void *registryFind(void *registryID,const char *name)
epicsShareFunc void * epicsShareAPI registryFind(
void *registryID,const char *name)
{
GPHENTRY *pentry;
if(name==0) return(0);
@@ -60,13 +63,13 @@ void *registryFind(void *registryID,const char *name)
return(pentry->userPvt);
}
void registryFree()
epicsShareFunc void epicsShareAPI registryFree()
{
if(!gphPvt) return;
gphFreeMem(gphPvt);
}
int registryDump(void)
epicsShareFunc int epicsShareAPI registryDump(void)
{
if(!gphPvt) return(0);
gphDump(gphPvt);

View File

@@ -1,18 +1,21 @@
#ifndef INCregistryh
#define INCregistryh
#include "shareLib.h"
#ifdef __cplusplus
extern "C" {
#endif
#define DEFAULT_TABLE_SIZE 1024
int registryAdd(void *registryID,const char *name,void *data);
void *registryFind(void *registryID,const char *name);
epicsShareFunc int epicsShareAPI registryAdd(
void *registryID,const char *name,void *data);
epicsShareFunc void *epicsShareAPI registryFind(
void *registryID,const char *name);
int registrySetTableSize(int size);
void registryFree();
int registryDump(void);
epicsShareFunc int epicsShareAPI registrySetTableSize(int size);
epicsShareFunc void epicsShareAPI registryFree();
epicsShareFunc int epicsShareAPI registryDump(void);
#ifdef __cplusplus
}

View File

@@ -14,18 +14,21 @@ of this distribution.
#include "registry.h"
#include "dbBase.h"
#include "devSup.h"
#define epicsExportSharedSymbols
#include "registryDeviceSupport.h"
const char *deviceSupport = "device support";
static void *registryID = &deviceSupport;
int registryDeviceSupportAdd(const char *name,struct dset *pdset)
epicsShareFunc int epicsShareAPI registryDeviceSupportAdd(
const char *name,struct dset *pdset)
{
return(registryAdd(registryID,name,(void *)pdset));
}
struct dset *registryDeviceSupportFind(const char *name)
epicsShareFunc struct dset * epicsShareAPI registryDeviceSupportFind(
const char *name)
{
return((struct dset *)registryFind(registryID,name));
}

View File

@@ -1,13 +1,16 @@
#ifndef INCregistryDeviceSupporth
#define INCregistryDeviceSupporth
#include "shareLib.h"
#ifdef __cplusplus
extern "C" {
#endif
int registryDeviceSupportAdd(const char *name,struct dset *pdset);
struct dset *registryDeviceSupportFind(const char *name);
epicsShareFunc int epicsShareAPI registryDeviceSupportAdd(
const char *name,struct dset *pdset);
epicsShareFunc struct dset * epicsShareAPI registryDeviceSupportFind(
const char *name);
#ifdef __cplusplus
}

View File

@@ -14,18 +14,21 @@ of this distribution.
#include "registry.h"
#include "dbBase.h"
#include "drvSup.h"
#define epicsExportSharedSymbols
#include "registryDriverSupport.h"
const char *driverSupport = "driver support";
static void *registryID = &driverSupport;
int registryDriverSupportAdd(const char *name,struct drvet *pdrvet)
epicsShareFunc int epicsShareAPI registryDriverSupportAdd(
const char *name,struct drvet *pdrvet)
{
return(registryAdd(registryID,name,(void *)pdrvet));
}
struct drvet *registryDriverSupportFind(const char *name)
epicsShareFunc struct drvet * epicsShareAPI registryDriverSupportFind(
const char *name)
{
return((struct drvet *)registryFind(registryID,name));
}

View File

@@ -1,14 +1,17 @@
#ifndef INCregistryDriverSupporth
#define INCregistryDriverSupporth
#include "shareLib.h"
#ifdef __cplusplus
extern "C" {
#endif
/* c interface definitions */
int registryDriverSupportAdd(const char *name,struct drvet *pdrvet);
struct drvet *registryDriverSupportFind(const char *name);
epicsShareFunc int epicsShareAPI registryDriverSupportAdd(
const char *name,struct drvet *pdrvet);
epicsShareFunc struct drvet * epicsShareAPI registryDriverSupportFind(
const char *name);
#ifdef __cplusplus
}

View File

@@ -13,18 +13,21 @@ of this distribution.
#include "registry.h"
#include "dbBase.h"
#define epicsExportSharedSymbols
#include "registryRecordType.h"
const char *recordType = "record type";
static void *registryID = &recordType;
int registryRecordTypeAdd(const char *name,recordTypeLocation *prtl)
epicsShareFunc int epicsShareAPI registryRecordTypeAdd(
const char *name,recordTypeLocation *prtl)
{
return(registryAdd(registryID,name,(void *)prtl));
}
recordTypeLocation *registryRecordTypeFind(const char *name)
epicsShareFunc recordTypeLocation * epicsShareAPI registryRecordTypeFind(
const char *name)
{
return((recordTypeLocation *)registryFind(registryID,name));
}

View File

@@ -1,6 +1,7 @@
#ifndef INCregistryRecordTypeh
#define INCregistryRecordTypeh
#include "shareLib.h"
struct dbRecordType;
struct rset;
struct dbBase;
@@ -18,11 +19,14 @@ typedef struct recordTypeLocation {
extern "C" {
#endif
int registryRecordTypeAdd(const char *name,recordTypeLocation *prtl);
recordTypeLocation *registryRecordTypeFind(const char *name);
epicsShareFunc int epicsShareAPI registryRecordTypeAdd(
const char *name,recordTypeLocation *prtl);
epicsShareFunc recordTypeLocation * epicsShareAPI registryRecordTypeFind(
const char *name);
/* The following function is generated by registerRecordDeviceDriver/pl */
int registerRecordDeviceDriver(struct dbBase *pdbbase);
epicsShareFunc int epicsShareAPI registerRecordDeviceDriver(
struct dbBase *pdbbase);
#ifdef __cplusplus
}