21 #include "osiUnistd.h" 31 void date(
const char *format)
34 char nowText[80] = {
'\0'};
37 puts(
"Current time not available.");
40 if (format ==
NULL || format[0] ==
'\0')
41 format =
"%Y/%m/%d %H:%M:%S.%06f";
47 static const iocshArg *
const dateArgs[] = {&dateArg0};
48 static const iocshFuncDef dateFuncDef = {
"date", 1, dateArgs};
65 static const iocshArg *
const echoArgs[1] = {&echoArg0};
66 static const iocshFuncDef echoFuncDef = {
"echo",1,echoArgs};
74 static const iocshArg *
const chdirArgs[1] = {&chdirArg0};
75 static const iocshFuncDef chdirFuncDef = {
"cd",1,chdirArgs};
78 if (args[0].sval ==
NULL ||
80 fprintf(
stderr,
"Invalid directory path, ignored\n");
89 char *pwd = getcwd ( buf,
sizeof(buf) - 1 );
98 static const iocshArg *
const epicsEnvSetArgs[2] = {&epicsEnvSetArg0,&epicsEnvSetArg1};
99 static const iocshFuncDef epicsEnvSetFuncDef = {
"epicsEnvSet",2,epicsEnvSetArgs};
100 static void epicsEnvSetCallFunc(
const iocshArgBuf *args)
102 char *name = args[0].
sval;
106 fprintf(
stderr,
"Missing environment variable name argument.\n");
110 fprintf(
stderr,
"Missing environment variable value argument.\n");
118 static const iocshArg *
const epicsEnvUnsetArgs[1] = {&epicsEnvUnsetArg0};
119 static const iocshFuncDef epicsEnvUnsetFuncDef = {
"epicsEnvUnset",1,epicsEnvUnsetArgs};
120 static void epicsEnvUnsetCallFunc(
const iocshArgBuf *args)
122 char *name = args[0].
sval;
125 fprintf(
stderr,
"Missing environment variable name argument.\n");
137 static const iocshFuncDef epicsParamShowFuncDef = {
"epicsParamShow",0,
NULL};
138 static void epicsParamShowCallFunc(
const iocshArgBuf *args)
144 static const iocshFuncDef epicsPrtEnvParamsFuncDef = {
"epicsPrtEnvParams",0,0};
145 static void epicsPrtEnvParamsCallFunc(
const iocshArgBuf *args)
152 static const iocshArg *
const epicsEnvShowArgs[1] = {&epicsEnvShowArg0};
153 static const iocshFuncDef epicsEnvShowFuncDef = {
"epicsEnvShow",1,epicsEnvShowArgs};
154 static void epicsEnvShowCallFunc(
const iocshArgBuf *args)
161 static void registryDumpCallFunc(
const iocshArgBuf *args)
167 static const iocshFuncDef iocLogInitFuncDef = {
"iocLogInit",0};
168 static void iocLogInitCallFunc(
const iocshArgBuf *args)
180 static const iocshArg *
const iocLogDisableArgs[1] = {&iocLogDisableArg0};
181 static const iocshFuncDef iocLogDisableFuncDef = {
"setIocLogDisable",1,iocLogDisableArgs};
182 static void iocLogDisableCallFunc(
const iocshArgBuf *args)
189 static const iocshArg *
const iocLogShowArgs[1] = {&iocLogShowArg0};
190 static const iocshFuncDef iocLogShowFuncDef = {
"iocLogShow",1,iocLogShowArgs};
191 static void iocLogShowCallFunc(
const iocshArgBuf *args)
198 static const iocshArg *
const eltcArgs[1] = {&eltcArg0};
199 static const iocshFuncDef eltcFuncDef = {
"eltc",1,eltcArgs};
207 static const iocshArg *
const errlogInitArgs[1] = {&errlogInitArg0};
209 {
"errlogInit",1,errlogInitArgs};
210 static void errlogInitCallFunc(
const iocshArgBuf *args)
218 static const iocshArg *
const errlogInit2Args[] =
219 {&errlogInit2Arg0, &errlogInit2Arg1};
221 {
"errlogInit2", 2, errlogInit2Args};
222 static void errlogInit2CallFunc(
const iocshArgBuf *args)
234 static const iocshArg *
const errlogArgs[1] = {&errlogArg0};
235 static const iocshFuncDef errlogFuncDef = {
"errlog",1,errlogArgs};
236 static void errlogCallFunc(
const iocshArgBuf *args)
244 static const iocshArg *
const iocLogPrefixArgs[1] = {&iocLogPrefixArg0};
245 static const iocshFuncDef iocLogPrefixFuncDef = {
"iocLogPrefix",1,iocLogPrefixArgs};
246 static void iocLogPrefixCallFunc(
const iocshArgBuf *args)
253 static const iocshArg *
const epicsThreadShowAllArgs[1] = {&epicsThreadShowAllArg0};
255 {
"epicsThreadShowAll",1,epicsThreadShowAllArgs};
256 static void epicsThreadShowAllCallFunc(
const iocshArgBuf *args)
263 static const iocshArg *
const threadArgs[1] = { &threadArg0 };
264 static const iocshFuncDef threadFuncDef = {
"epicsThreadShow",1,threadArgs};
265 static void threadCallFunc(
const iocshArgBuf *args)
273 int argc = args[0].
aval.
ac;
274 char **argv = args[0].
aval.
av;
277 if ((i < argc) && (*(cp = argv[i]) ==
'-')) {
278 level = atoi (cp + 1);
285 for ( ; i < argc ; i++) {
287 ltmp = strtoul (cp, &endp, 0);
291 fprintf(
stderr,
"\t'%s' is not a known thread name\n", cp);
308 static const iocshArg *
const taskwdShowArgs[1] = {&taskwdShowArg0};
310 {
"taskwdShow",1,taskwdShowArgs};
311 static void taskwdShowCallFunc(
const iocshArgBuf *args)
319 static const iocshArg *
const epicsMutexShowAllArgs[2] =
320 {&epicsMutexShowAllArg0,&epicsMutexShowAllArg1};
322 {
"epicsMutexShowAll",2,epicsMutexShowAllArgs};
323 static void epicsMutexShowAllCallFunc(
const iocshArgBuf *args)
330 static const iocshArg *
const epicsThreadSleepArgs[1] = {&epicsThreadSleepArg0};
332 {
"epicsThreadSleep",1,epicsThreadSleepArgs};
333 static void epicsThreadSleepCallFunc(
const iocshArgBuf *args)
340 static const iocshArg *
const epicsThreadResumeArgs[1] = { &epicsThreadResumeArg0 };
341 static const iocshFuncDef epicsThreadResumeFuncDef = {
"epicsThreadResume",1,epicsThreadResumeArgs};
342 static void epicsThreadResumeCallFunc(
const iocshArgBuf *args)
349 int argc = args[0].
aval.
ac;
350 char **argv = args[0].
aval.
av;
353 for (i = 1 ; i < argc ; i++) {
355 ltmp = strtoul(cp, &endp, 0);
359 fprintf(
stderr,
"'%s' is not a valid thread name\n", cp);
366 if (nameBuf[0] ==
'\0') {
367 fprintf(
stderr,
"'%s' is not a valid thread id\n", cp);
373 fprintf(
stderr,
"Thread %s is not suspended\n", cp);
382 static const iocshArg *
const generalTimeReportArgs[1] = { &generalTimeReportArg0 };
383 static const iocshFuncDef generalTimeReportFuncDef = {
"generalTimeReport",1,generalTimeReportArgs};
384 static void generalTimeReportCallFunc(
const iocshArgBuf *args)
390 static const iocshFuncDef installLastResortEventProviderFuncDef = {
"installLastResortEventProvider", 0,
NULL};
391 static void installLastResortEventProviderCallFunc(
const iocshArgBuf *args)
407 iocshRegister(&epicsParamShowFuncDef, epicsParamShowCallFunc);
408 iocshRegister(&epicsPrtEnvParamsFuncDef, epicsPrtEnvParamsCallFunc);
421 iocshRegister(&epicsThreadShowAllFuncDef,epicsThreadShowAllCallFunc);
424 iocshRegister(&epicsMutexShowAllFuncDef,epicsMutexShowAllCallFunc);
425 iocshRegister(&epicsThreadSleepFuncDef,epicsThreadSleepCallFunc);
426 iocshRegister(&epicsThreadResumeFuncDef,epicsThreadResumeCallFunc);
428 iocshRegister(&generalTimeReportFuncDef,generalTimeReportCallFunc);
429 iocshRegister(&installLastResortEventProviderFuncDef, installLastResortEventProviderCallFunc);
The generalTime framework provides a mechanism for several time providers to be present within the sy...
LIBCOM_API int asCheckClientIP
int errlogInit2(int bufsize, int maxMsgSize)
struct iocshArgBuf::@13 aval
Routines to get and set EPICS environment parameters.
void epicsStdCall iocshRegister(const iocshFuncDef *piocshFuncDef, iocshCallFunc func)
struct epicsThreadOSD * epicsThreadId
LIBCOM_API void epicsStdCall epicsThreadShowAll(unsigned int level)
LIBCOM_API long epicsStdCall epicsPrtEnvParams(void)
Prints all configuration parameters and their current value.
LIBCOM_API void epicsStdCall epicsThreadShow(epicsThreadId id, unsigned int level)
#define IOCSH_STATIC_FUNC
LIBCOM_API void epicsStdCall epicsEnvSet(const char *name, const char *value)
Set an environment variable's value.
int errlogInit(int bufsize)
IOCSH_STATIC_FUNC void echo(char *str)
int dbTranslateEscape(char *dst, const char *src)
LIBCOM_API void epicsStdCall epicsEnvUnset(const char *name)
Clear the value of an environment variable.
LIBCOM_API size_t epicsStdCall epicsTimeToStrftime(char *pBuff, size_t bufLength, const char *pFormat, const epicsTimeStamp *pTS)
Convert epicsTimeStamp to string. See epicsTime::strftime()
int epicsStdCall iocLogInit(void)
IOCSH_STATIC_FUNC void setIocLogDisable(int val)
APIs for the epicsMutex mutual exclusion semaphore.
int errlogPrintfNoConsole(const char *pFormat,...)
int epicsStdCall epicsTimeGetCurrent(epicsTimeStamp *pDest)
Get current time into *pDest.
LIBCOM_API void epicsStdCall epicsThreadResume(epicsThreadId id)
int iocshSetError(int err)
Signal error from an IOC shell function.
LIBCOM_API void epicsStdCall epicsThreadGetName(epicsThreadId id, char *name, size_t size)
IOCSH_STATIC_FUNC void epicsParamShow()
void date(const char *format)
void epicsStdCall iocshRegisterVariable(const iocshVarDef *piocshVarDef)
void epicsStdCall libComRegister(void)
void epicsStdCall iocLogPrefix(const char *prefix)
EPICS time stamp, for use from C code.
LIBCOM_API void epicsStdCall epicsThreadSleep(double seconds)
Block the calling thread for at least the specified time.
LIBCOM_API int epicsStdCall epicsThreadIsSuspended(epicsThreadId id)
int installLastResortEventProvider(void)
Install a Time Event time provider that returns the current time for any Time event number...
void epicsStdCall iocLogShow(unsigned level)
EPICS time-stamps (epicsTimeStamp), epicsTime C++ class and C functions for handling wall-clock times...
C++ and C descriptions for a thread.
LIBCOM_API epicsThreadId epicsStdCall epicsThreadGetId(const char *name)
void epicsStdCall epicsMutexShowAll(int onlyLocked, unsigned int level)
Display information about all epicsMutex semaphores.
LIBCOM_API int epicsStdCall registryDump(void)
IOCSH_STATIC_FUNC void errlog(const char *message)
LIBCOM_API void taskwdShow(int level)
long generalTimeReport(int level)
Provide information about the installed providers and their current best times.
LIBCOM_API void epicsStdCall epicsEnvShow(const char *name)
Print value of an environment variable, or all variables.