Expand READONLY macro, deprecate.

This commit is contained in:
Andrew Johnson
2009-06-05 19:56:33 +00:00
parent be6b1c4e31
commit a66a192ed5
9 changed files with 84 additions and 96 deletions
+1 -1
View File
@@ -110,7 +110,7 @@ LOCAL void eventCallback(struct event_handler_args arg)
ASGINP *pasginp = (ASGINP *)arg.usr;
ASG *pasg;
CAPVT *pcapvt;
READONLY struct dbr_sts_double *pdata;
const struct dbr_sts_double *pdata;
if(caStatus!=ECA_NORMAL) {
if(chid) {
+6 -6
View File
@@ -97,7 +97,7 @@ typedef struct event_handler_args {
chanId chid; /* channel id */
long type; /* the type of the item returned */
long count; /* the element count of the item returned */
READONLY void *dbr; /* a pointer to the item returned */
const void *dbr; /* a pointer to the item returned */
int status; /* ECA_XXX status of the requested op from the server */
} evargs;
typedef void caEventCallBackFunc (struct event_handler_args);
@@ -116,8 +116,8 @@ struct exception_handler_args {
void *addr; /* user's address to write results of CA_OP_GET */
long stat; /* channel access ECA_XXXX status code */
long op; /* CA_OP_GET, CA_OP_PUT, ..., CA_OP_OTHER */
READONLY char *ctx; /* a character string containing context info */
READONLY char *pFile; /* source file name (may be NULL) */
const char *ctx; /* a character string containing context info */
const char *pFile; /* source file name (may be NULL) */
unsigned lineNo; /* source file line number (may be zero) */
};
@@ -289,7 +289,7 @@ epicsShareFunc int epicsShareAPI ca_clear_channel
* pValue R new channel value string copied from this location
*/
#define ca_bput(chan, pValue) \
ca_array_put(DBR_STRING, 1u, chan, (READONLY dbr_string_t *) (pValue))
ca_array_put(DBR_STRING, 1u, chan, (const dbr_string_t *) (pValue))
/*
* ca_rput()
@@ -300,7 +300,7 @@ ca_array_put(DBR_STRING, 1u, chan, (READONLY dbr_string_t *) (pValue))
* pValue R new channel value copied from this location
*/
#define ca_rput(chan,pValue) \
ca_array_put(DBR_FLOAT, 1u, chan, (READONLY dbr_float_t *) pValue)
ca_array_put(DBR_FLOAT, 1u, chan, (const dbr_float_t *) pValue)
/*
* ca_put()
@@ -814,7 +814,7 @@ epicsShareFunc int epicsShareAPI ca_v42_ok (chid chan);
*
* returns the CA version string
*/
epicsShareFunc READONLY char * epicsShareAPI ca_version (void);
epicsShareFunc const char * epicsShareAPI ca_version (void);
/*
* ca_replace_printf_handler ()
+2 -2
View File
@@ -149,9 +149,9 @@
extern "C" {
#endif
epicsShareFunc READONLY char * epicsShareAPI ca_message(long ca_status);
epicsShareFunc const char * epicsShareAPI ca_message(long ca_status);
epicsShareExtern READONLY char * ca_message_text [];
epicsShareExtern const char * ca_message_text [];
#ifdef __cplusplus
}
+12 -12
View File
@@ -128,12 +128,12 @@ typedef epicsOldString dbr_class_name_t;
* of type DBR types. In some cases we select the a
* larger type to avoid loss of information
*/
epicsShareExtern READONLY int epicsTypeToDBR_XXXX [lastEpicsType+1];
epicsShareExtern const int epicsTypeToDBR_XXXX [lastEpicsType+1];
/*
* The DBR_XXXX types are indicies into this array
*/
epicsShareExtern READONLY epicsType DBR_XXXXToEpicsType [LAST_BUFFER_TYPE+1];
epicsShareExtern const epicsType DBR_XXXXToEpicsType [LAST_BUFFER_TYPE+1];
/* values returned for each field type
* DBR_STRING returns a NULL terminated string
@@ -529,10 +529,10 @@ struct dbr_ctrl_double{
((unsigned)((COUNT)<=0?dbr_size[TYPE]:dbr_size[TYPE]+((COUNT)-1)*dbr_value_size[TYPE]))
/* size for each type - array indexed by the DBR_ type code */
epicsShareExtern READONLY unsigned short dbr_size[LAST_BUFFER_TYPE+1];
epicsShareExtern const unsigned short dbr_size[LAST_BUFFER_TYPE+1];
/* size for each type's value - array indexed by the DBR_ type code */
epicsShareExtern READONLY unsigned short dbr_value_size[LAST_BUFFER_TYPE+1];
epicsShareExtern const unsigned short dbr_value_size[LAST_BUFFER_TYPE+1];
/* class for each type's value */
enum dbr_value_class {
@@ -541,7 +541,7 @@ enum dbr_value_class {
dbr_class_string,
dbr_class_max};
epicsShareExtern READONLY enum dbr_value_class dbr_value_class[LAST_BUFFER_TYPE+1];
epicsShareExtern const enum dbr_value_class dbr_value_class[LAST_BUFFER_TYPE+1];
/*
* ptr to value given a pointer to the structure and the DBR type
@@ -555,7 +555,7 @@ epicsShareExtern READONLY enum dbr_value_class dbr_value_class[LAST_BUFFER_TYPE+
#define dbr_value_ptr_from_structure(PDBR, STRUCTURE)\
((void *)(((char *)PDBR)+BYTE_OS(STRUCTURE, value)))
epicsShareExtern READONLY unsigned short dbr_value_offset[LAST_BUFFER_TYPE+1];
epicsShareExtern const unsigned short dbr_value_offset[LAST_BUFFER_TYPE+1];
/* union for each fetch buffers */
@@ -724,13 +724,13 @@ union db_access_val{
(type) + 4*(dbf_text_dim-2) : -1 )
epicsShareExtern READONLY char *dbf_text[LAST_TYPE+3];
epicsShareExtern READONLY short dbf_text_dim;
epicsShareExtern READONLY char *dbf_text_invalid;
epicsShareExtern const char *dbf_text[LAST_TYPE+3];
epicsShareExtern const short dbf_text_dim;
epicsShareExtern const char *dbf_text_invalid;
epicsShareExtern READONLY char *dbr_text[LAST_BUFFER_TYPE+1];
epicsShareExtern READONLY short dbr_text_dim;
epicsShareExtern READONLY char *dbr_text_invalid;
epicsShareExtern const char *dbr_text[LAST_BUFFER_TYPE+1];
epicsShareExtern const short dbr_text_dim;
epicsShareExtern const char *dbr_text_invalid;
#endif /*db_accessHFORdb_accessC*/
#ifdef __cplusplus
+3 -3
View File
@@ -486,15 +486,15 @@ LOCAL void *bucketLookupAndRemoveItem (BUCKET *prb, bucketSET *pBSET, const void
return pApp;
}
epicsShareFunc void * epicsShareAPI bucketLookupAndRemoveItemUnsignedId (BUCKET *prb, READONLY unsigned *pId)
epicsShareFunc void * epicsShareAPI bucketLookupAndRemoveItemUnsignedId (BUCKET *prb, const unsigned *pId)
{
return bucketLookupAndRemoveItem(prb, &BSET[bidtUnsigned], pId);
}
epicsShareFunc void * epicsShareAPI bucketLookupAndRemoveItemPointerId (BUCKET *prb, void * READONLY *pId)
epicsShareFunc void * epicsShareAPI bucketLookupAndRemoveItemPointerId (BUCKET *prb, void * const *pId)
{
return bucketLookupAndRemoveItem(prb, &BSET[bidtPointer], pId);
}
epicsShareFunc void * epicsShareAPI bucketLookupAndRemoveItemStringId (BUCKET *prb, READONLY char *pId)
epicsShareFunc void * epicsShareAPI bucketLookupAndRemoveItemStringId (BUCKET *prb, const char *pId)
{
return bucketLookupAndRemoveItem(prb, &BSET[bidtString], pId);
}
+14 -14
View File
@@ -36,8 +36,8 @@ typedef enum {bidtUnsigned, bidtPointer, bidtString} buckTypeOfId;
typedef struct item{
struct item *pItem;
READONLY void *pId;
READONLY void *pApp;
const void *pId;
const void *pApp;
buckTypeOfId type;
}ITEM;
@@ -58,23 +58,23 @@ epicsShareFunc int epicsShareAPI bucketShow (BUCKET *pb);
* the item is deleted from the bucket !!
*/
epicsShareFunc int epicsShareAPI bucketAddItemUnsignedId (BUCKET *prb,
READONLY unsigned *pId, READONLY void *pApp);
const unsigned *pId, const void *pApp);
epicsShareFunc int epicsShareAPI bucketAddItemPointerId (BUCKET *prb,
void * READONLY *pId, READONLY void *pApp);
void * const *pId, const void *pApp);
epicsShareFunc int epicsShareAPI bucketAddItemStringId (BUCKET *prb,
READONLY char *pId, READONLY void *pApp);
const char *pId, const void *pApp);
epicsShareFunc int epicsShareAPI bucketRemoveItemUnsignedId (BUCKET *prb, READONLY unsigned *pId);
epicsShareFunc int epicsShareAPI bucketRemoveItemPointerId (BUCKET *prb, void * READONLY *pId);
epicsShareFunc int epicsShareAPI bucketRemoveItemStringId (BUCKET *prb, READONLY char *pId);
epicsShareFunc int epicsShareAPI bucketRemoveItemUnsignedId (BUCKET *prb, const unsigned *pId);
epicsShareFunc int epicsShareAPI bucketRemoveItemPointerId (BUCKET *prb, void * const *pId);
epicsShareFunc int epicsShareAPI bucketRemoveItemStringId (BUCKET *prb, const char *pId);
epicsShareFunc void * epicsShareAPI bucketLookupItemUnsignedId (BUCKET *prb, READONLY unsigned *pId);
epicsShareFunc void * epicsShareAPI bucketLookupItemPointerId (BUCKET *prb, void * READONLY *pId);
epicsShareFunc void * epicsShareAPI bucketLookupItemStringId (BUCKET *prb, READONLY char *pId);
epicsShareFunc void * epicsShareAPI bucketLookupItemUnsignedId (BUCKET *prb, const unsigned *pId);
epicsShareFunc void * epicsShareAPI bucketLookupItemPointerId (BUCKET *prb, void * const *pId);
epicsShareFunc void * epicsShareAPI bucketLookupItemStringId (BUCKET *prb, const char *pId);
epicsShareFunc void * epicsShareAPI bucketLookupAndRemoveItemUnsignedId (BUCKET *prb, READONLY unsigned *pId);
epicsShareFunc void * epicsShareAPI bucketLookupAndRemoveItemPointerId (BUCKET *prb, void * READONLY *pId);
epicsShareFunc void * epicsShareAPI bucketLookupAndRemoveItemStringId (BUCKET *prb, READONLY char *pId);
epicsShareFunc void * epicsShareAPI bucketLookupAndRemoveItemUnsignedId (BUCKET *prb, const unsigned *pId);
epicsShareFunc void * epicsShareAPI bucketLookupAndRemoveItemPointerId (BUCKET *prb, void * const *pId);
epicsShareFunc void * epicsShareAPI bucketLookupAndRemoveItemStringId (BUCKET *prb, const char *pId);
/*
+3 -3
View File
@@ -42,7 +42,7 @@ $tool=~ s'.*/'';
#
open SRC, "<$env_defs" or die "Cannot open $env_defs";
while (<SRC>) {
if (m/epicsShareExtern\s+READONLY\s+ENV_PARAM\s+([A-Za-z_]\w*)\s*;/) {
if (m/epicsShareExtern\s+const\s+ENV_PARAM\s+([A-Za-z_]\w*)\s*;/) {
$need_var{$1} = 1;
}
}
@@ -100,14 +100,14 @@ foreach $var (@vars) {
print "Warning: No default value found for $var\n"
unless exists $value{$var};
print OUT "epicsShareDef READONLY ENV_PARAM $var =\n",
print OUT "epicsShareDef const ENV_PARAM $var =\n",
"\t{\"$var\", \"$default\"};\n";
}
# Now create an array pointing to all parameters
print OUT "\n",
"epicsShareDef READONLY ENV_PARAM* env_param_list[] = {\n";
"epicsShareDef const ENV_PARAM* env_param_list[] = {\n";
# Contents are the addresses of each parameter
foreach $var (@vars) {
+33 -45
View File
@@ -3,35 +3,27 @@
* National Laboratory.
* Copyright (c) 2002 The Regents of the University of California, as
* Operator of Los Alamos National Laboratory.
* EPICS BASE Versions 3.13.7
* and higher are distributed subject to a Software License Agreement found
* EPICS BASE is distributed subject to a Software License Agreement found
* in file LICENSE that is included with this distribution.
\*************************************************************************/
/* $Id$
/* $Id$
* Author: Roger A. Cole
* Date: 07-20-91
*
* make options
* -DNDEBUG don't compile assert() checking
* -DDEBUG compile various debug code, including checks on
* malloc'd memory
*/
/*+/mod***********************************************************************
/****************************************************************************
* TITLE envDefs.h - definitions for environment get/set routines
*
* DESCRIPTION
* This file defines the environment parameters for EPICS. These
* ENV_PARAM's are initialized by $epics/share/bin/envSetupParams for
* ENV_PARAM's are created in envData.c by bldEnvData for
* use by EPICS programs running under UNIX and VxWorks.
*
* User programs can define their own environment parameters for their
* own use--the only caveat is that such parameters aren't automatically
* setup by EPICS.
*
* SEE ALSO
* $epics/share/bin/envSetupParams, envSubr.c
*
*-***************************************************************************/
*****************************************************************************/
#ifndef envDefsH
#define envDefsH
@@ -48,40 +40,36 @@ typedef struct envParam {
} ENV_PARAM;
/*
* bldEnvData looks for "epicsShareExtern READONLY ENV_PARAM"
* bldEnvData looks for "epicsShareExtern const ENV_PARAM"
*/
epicsShareExtern READONLY ENV_PARAM EPICS_CA_ADDR_LIST;
epicsShareExtern READONLY ENV_PARAM EPICS_CA_CONN_TMO;
epicsShareExtern READONLY ENV_PARAM EPICS_CA_AUTO_ADDR_LIST;
epicsShareExtern READONLY ENV_PARAM EPICS_CA_REPEATER_PORT;
epicsShareExtern READONLY ENV_PARAM EPICS_CA_SERVER_PORT;
epicsShareExtern READONLY ENV_PARAM EPICS_CA_MAX_ARRAY_BYTES;
epicsShareExtern READONLY ENV_PARAM EPICS_CA_MAX_SEARCH_PERIOD;
epicsShareExtern READONLY ENV_PARAM EPICS_CAS_INTF_ADDR_LIST;
epicsShareExtern READONLY ENV_PARAM EPICS_CAS_IGNORE_ADDR_LIST;
epicsShareExtern READONLY ENV_PARAM EPICS_CAS_AUTO_BEACON_ADDR_LIST;
epicsShareExtern READONLY ENV_PARAM EPICS_CAS_BEACON_ADDR_LIST;
epicsShareExtern READONLY ENV_PARAM EPICS_CAS_SERVER_PORT;
epicsShareExtern READONLY ENV_PARAM EPICS_CA_BEACON_PERIOD; /* deprecated */
epicsShareExtern READONLY ENV_PARAM EPICS_CAS_BEACON_PERIOD;
epicsShareExtern READONLY ENV_PARAM EPICS_CAS_BEACON_PORT;
epicsShareExtern READONLY ENV_PARAM EPICS_TIMEZONE;
epicsShareExtern READONLY ENV_PARAM EPICS_TS_NTP_INET;
epicsShareExtern READONLY ENV_PARAM EPICS_IOC_LOG_PORT;
epicsShareExtern READONLY ENV_PARAM EPICS_IOC_LOG_INET;
epicsShareExtern READONLY ENV_PARAM EPICS_IOC_LOG_FILE_LIMIT;
epicsShareExtern READONLY ENV_PARAM EPICS_IOC_LOG_FILE_NAME;
epicsShareExtern READONLY ENV_PARAM EPICS_IOC_LOG_FILE_COMMAND;
epicsShareExtern READONLY ENV_PARAM EPICS_CMD_PROTO_PORT;
epicsShareExtern READONLY ENV_PARAM EPICS_AR_PORT;
epicsShareExtern READONLY ENV_PARAM IOCSH_PS1;
epicsShareExtern READONLY ENV_PARAM IOCSH_HISTSIZE;
epicsShareExtern const ENV_PARAM EPICS_CA_ADDR_LIST;
epicsShareExtern const ENV_PARAM EPICS_CA_CONN_TMO;
epicsShareExtern const ENV_PARAM EPICS_CA_AUTO_ADDR_LIST;
epicsShareExtern const ENV_PARAM EPICS_CA_REPEATER_PORT;
epicsShareExtern const ENV_PARAM EPICS_CA_SERVER_PORT;
epicsShareExtern const ENV_PARAM EPICS_CA_MAX_ARRAY_BYTES;
epicsShareExtern const ENV_PARAM EPICS_CA_MAX_SEARCH_PERIOD;
epicsShareExtern const ENV_PARAM EPICS_CAS_INTF_ADDR_LIST;
epicsShareExtern const ENV_PARAM EPICS_CAS_IGNORE_ADDR_LIST;
epicsShareExtern const ENV_PARAM EPICS_CAS_AUTO_BEACON_ADDR_LIST;
epicsShareExtern const ENV_PARAM EPICS_CAS_BEACON_ADDR_LIST;
epicsShareExtern const ENV_PARAM EPICS_CAS_SERVER_PORT;
epicsShareExtern const ENV_PARAM EPICS_CA_BEACON_PERIOD; /* deprecated */
epicsShareExtern const ENV_PARAM EPICS_CAS_BEACON_PERIOD;
epicsShareExtern const ENV_PARAM EPICS_CAS_BEACON_PORT;
epicsShareExtern const ENV_PARAM EPICS_TIMEZONE;
epicsShareExtern const ENV_PARAM EPICS_TS_NTP_INET;
epicsShareExtern const ENV_PARAM EPICS_IOC_LOG_PORT;
epicsShareExtern const ENV_PARAM EPICS_IOC_LOG_INET;
epicsShareExtern const ENV_PARAM EPICS_IOC_LOG_FILE_LIMIT;
epicsShareExtern const ENV_PARAM EPICS_IOC_LOG_FILE_NAME;
epicsShareExtern const ENV_PARAM EPICS_IOC_LOG_FILE_COMMAND;
epicsShareExtern const ENV_PARAM EPICS_CMD_PROTO_PORT;
epicsShareExtern const ENV_PARAM EPICS_AR_PORT;
epicsShareExtern const ENV_PARAM IOCSH_PS1;
epicsShareExtern const ENV_PARAM IOCSH_HISTSIZE;
/*
* bldEnvData looks for "epicsShareExtern ENV_PARAM" so
* this always needs to be divided into two lines
*/
epicsShareExtern READONLY ENV_PARAM *env_param_list[];
epicsShareExtern const ENV_PARAM *env_param_list[];
struct in_addr;
+10 -10
View File
@@ -131,7 +131,7 @@ typedef enum {
* of type name strings.
*/
#ifdef epicsTypesGLOBAL
epicsShareDef READONLY char *epicsTypeNames [lastEpicsType+1] = {
epicsShareDef const char *epicsTypeNames [lastEpicsType+1] = {
"epicsInt8",
"epicsUInt8",
"epicsInt16",
@@ -145,7 +145,7 @@ epicsShareDef READONLY char *epicsTypeNames [lastEpicsType+1] = {
"epicsOldString",
};
#else /* epicsTypesGLOBAL */
epicsShareExtern READONLY char *epicsTypeNames [lastEpicsType+1];
epicsShareExtern const char *epicsTypeNames [lastEpicsType+1];
#endif /* epicsTypesGLOBAL */
/*
@@ -153,7 +153,7 @@ epicsShareExtern READONLY char *epicsTypeNames [lastEpicsType+1];
* of type code name strings.
*/
#ifdef epicsTypesGLOBAL
epicsShareDef READONLY char *epicsTypeCodeNames [lastEpicsType+1] = {
epicsShareDef const char *epicsTypeCodeNames [lastEpicsType+1] = {
"epicsInt8T",
"epicsUInt8T",
"epicsInt16T",
@@ -167,11 +167,11 @@ epicsShareDef READONLY char *epicsTypeCodeNames [lastEpicsType+1] = {
"epicsOldStringT",
};
#else /* epicsTypesGLOBAL */
epicsShareExtern READONLY char *epicsTypeCodeNames [lastEpicsType+1];
epicsShareExtern const char *epicsTypeCodeNames [lastEpicsType+1];
#endif /* epicsTypesGLOBAL */
#ifdef epicsTypesGLOBAL
epicsShareDef READONLY unsigned epicsTypeSizes [lastEpicsType+1] = {
epicsShareDef const unsigned epicsTypeSizes [lastEpicsType+1] = {
sizeof (epicsInt8),
sizeof (epicsUInt8),
sizeof (epicsInt16),
@@ -185,7 +185,7 @@ epicsShareDef READONLY unsigned epicsTypeSizes [lastEpicsType+1] = {
sizeof (epicsOldString),
};
#else /* epicsTypesGLOBAL */
epicsShareExtern READONLY unsigned epicsTypeSizes [lastEpicsType+1];
epicsShareExtern const unsigned epicsTypeSizes [lastEpicsType+1];
#endif /* epicsTypesGLOBAL */
/*
@@ -200,7 +200,7 @@ typedef enum {
epicsStringC,
epicsOldStringC} epicsTypeClass;
#ifdef epicsTypesGLOBAL
epicsShareDef READONLY epicsTypeClass epicsTypeClasses [lastEpicsType+1] = {
epicsShareDef const epicsTypeClass epicsTypeClasses [lastEpicsType+1] = {
epicsIntC,
epicsUIntC,
epicsIntC,
@@ -214,12 +214,12 @@ epicsShareDef READONLY epicsTypeClass epicsTypeClasses [lastEpicsType+1] = {
epicsOldStringC
};
#else /* epicsTypesGLOBAL */
epicsShareExtern READONLY epicsTypeClass epicsTypeClasses [lastEpicsType+1];
epicsShareExtern const epicsTypeClass epicsTypeClasses [lastEpicsType+1];
#endif /* epicsTypesGLOBAL */
#ifdef epicsTypesGLOBAL
epicsShareDef READONLY char *epicsTypeAnyFieldName [lastEpicsType+1] = {
epicsShareDef const char *epicsTypeAnyFieldName [lastEpicsType+1] = {
"int8",
"uInt8",
"int16",
@@ -233,7 +233,7 @@ epicsShareDef READONLY char *epicsTypeAnyFieldName [lastEpicsType+1] = {
"", /* Old Style Strings will not be in epicsAny type */
};
#else /* epicsTypesGLOBAL */
epicsShareExtern READONLY char *epicsTypeAnyFieldName [lastEpicsType+1];
epicsShareExtern const char *epicsTypeAnyFieldName [lastEpicsType+1];
#endif /* epicsTypesGLOBAL */
#endif /* INCepicsTypesh */