- New batch file management module
- New oscillator module - Bug fixes SKIPPED: psi/buffer.c psi/el734hp.c psi/el737hpdriv.c psi/make_gen psi/nextrics.c psi/nxamor.c psi/pimotor.c psi/polterwrite.c psi/psi.c psi/swmotor2.c psi/tasscan.c psi/tricssupport.c psi/tricssupport.h psi/tecs/make_gen psi/utils/ecb_load_new/ecb_load.c psi/utils/ecb_load_new/ecb_load.h psi/utils/ecb_load_new/ecbdriv_els.c psi/utils/ecb_load_new/gpib_els.c psi/utils/ecb_load_new/makefile psi/utils/ecb_load_new/makefile_EGPIB psi/utils/ecb_load_new/makefile_GPIB
This commit is contained in:
95
exebuf.h
Normal file
95
exebuf.h
Normal file
@ -0,0 +1,95 @@
|
||||
|
||||
#line 205 "exe.w"
|
||||
|
||||
/**
|
||||
* Buffer handling code for the Exe Buffer batch file processing
|
||||
* module.
|
||||
*
|
||||
* copyright: see file COPYRIGHT
|
||||
*
|
||||
* Mark Koennecke, November 2004
|
||||
*/
|
||||
#ifndef EXEBUF
|
||||
#define EXEBUF
|
||||
#include <sics.h>
|
||||
#include "dynstring.h"
|
||||
|
||||
#line 44 "exe.w"
|
||||
|
||||
typedef struct __EXEBUF *pExeBuf;
|
||||
|
||||
/**
|
||||
* create an exe buffer
|
||||
* @param The name to use for the exe buffer
|
||||
* @return A new exe buffer or NULL if out of memory
|
||||
*/
|
||||
pExeBuf exeBufCreate(char *name);
|
||||
/**
|
||||
* delete an exe buffer
|
||||
* @param data The exe buffer to delete
|
||||
*/
|
||||
void exeBufKill(void *data);
|
||||
void exeBufDelete(pExeBuf data);
|
||||
/**
|
||||
* add a a line to the exe buffer
|
||||
* @param self The exe buffer the line is to be added to
|
||||
* @param line The text to add
|
||||
* @return 1 on success, 0 when out of memory
|
||||
*/
|
||||
int exeBufAppend(pExeBuf self, char *line);
|
||||
/**
|
||||
* load an exe buffer from a file
|
||||
* @param self The exe buffer to load
|
||||
* @param filename The name of the file to load
|
||||
* @return 1 on success, 0 if the file could not be opened or
|
||||
* memory is exhausted.
|
||||
*/
|
||||
int exeBufLoad(pExeBuf self, char *filename);
|
||||
/**
|
||||
* save an exe buffer to a file.
|
||||
* @param self The exe buffer to laod
|
||||
* @param filename The name of the file to laod
|
||||
* @return 1 on success, 0 if the file could not be opened.
|
||||
*/
|
||||
int exeBufSave(pExeBuf self, char *filename);
|
||||
/**
|
||||
* process an exe buffer
|
||||
* @param self The exe buffer to process
|
||||
* @param pSics The SICS interpreter to use for processing
|
||||
* @param pCon The connection object providing the environment for
|
||||
* processing this buffer.
|
||||
* @pCall The callback interface to use for automatic notifications
|
||||
* @return 1 on success, 0 on error
|
||||
*/
|
||||
int exeBufProcess(pExeBuf self, SicsInterp *pSics,
|
||||
SConnection *pCon, pICallBack pCall);
|
||||
/**
|
||||
* retrieves the executing range
|
||||
* @param self The exe buffer to query
|
||||
* @param start The start of the executing range
|
||||
* @param end The end of the executing range
|
||||
* @param lineno The current line number
|
||||
*/
|
||||
void exeBufRange(pExeBuf self, int *start, int *end, int *lineno);
|
||||
/**
|
||||
* retrieves some portion of text
|
||||
* @param self The exe buffer to query
|
||||
* @param start The start index from which to copy
|
||||
* @param end The end pointer until which to copy
|
||||
* @return A dynamic string holding the currently executing text. It is
|
||||
* the clients task to delete this buffer sfter use. Or NULL if out of
|
||||
* memory.
|
||||
*/
|
||||
pDynString exeBufText(pExeBuf self, int start, int end);
|
||||
/**
|
||||
* retrieves the name of the batch buffer
|
||||
* @param self The exe buffer to query
|
||||
* @return A pointer to the buffer name. Do not delete! The name
|
||||
* is still owned by the exe beuffer.
|
||||
*/
|
||||
char *exeBufName(pExeBuf self);
|
||||
|
||||
#line 218 "exe.w"
|
||||
|
||||
|
||||
#endif
|
Reference in New Issue
Block a user