Files
sicspsi/strobj.c
koennecke eb72d5c486 - Adapted indenation to new agreed upon system
- Fixed bad status in poldi zug driver
2009-02-13 09:01:03 +00:00

57 lines
1.3 KiB
C

/*---------------------------------------------------------------------------
strobj.c
a string object based on pardef, logging is on by default
Markus Zolliker, March 2005
----------------------------------------------------------------------------
*/
#include <stdio.h>
#include "sics.h"
#include "splitter.h"
#include "pardef.h"
#include "initializer.h"
typedef struct {
ParData p;
char *str;
} StrObj;
static ParClass strObjClass = { "string", sizeof(StrObj) };
/*----------------------------------------------------------------------------*/
static void StrObjParDef(void *object)
{
StrObj *so = ParCast(&strObjClass, object);
ParName("");
ParAccess(usUser);
ParSave(1);
ParList(NULL);
ParStr(&so->str, NULL);
}
/*----------------------------------------------------------------------------*/
static int StrObjInit(SConnection * con, int argc, char *argv[],
int dynamic)
{
StrObj *so = NULL;
char *creationCmd = NULL;
if (dynamic) {
creationCmd = Arg2Tcl(argc, argv, NULL, 0);
}
so = ParMake(con, argv[1], &strObjClass, StrObjParDef, creationCmd);
if (so) {
so->str = NULL;
}
return so != NULL;
}
/*----------------------------------------------------------------------------*/
void StrObjStartup(void)
{
ParMakeClass(&strObjClass, NULL);
MakeDriver("string", StrObjInit, 0, "String Object");
}