Sds link
- 構文
- int sds_link (int lispmsg);
- 機能
- LISPにSDSアプリケーションの準備ができているか知らせる。
- エラーがあった場合、コマンドラインに "Error: SDS error in evaluation" を表示する。
- 引数
-
- lispmsg : LISPへのメッセージ。
- 戻り値
- 準備ができていれば RSRSLT、そうでなければ RSERR
- サンプル
/* Prototype for an sds application */ #include <stdio.h> #include "sdslib.h" /* MAIN -- the main routine */ void main(argc, argv) int argc; char *argv[]; { int stat; short scode = RSRSLT; /* Default result code */ sds_init(argc, argv); /* Initialize the interface */ for ( ;; ) { /* Infinite loop */ if ((stat = sds_link(scode)) < 0) { printf("TEMPLATE: bad status from sds_link() = %d\n", stat); /* Can't use sds_printf() to display this message, because the link failed */ fflush(stdout); exit(1); /* exit() only req'd for abnormal termination */ } scode = RSRSLT; /* Default return value */ /* The cases in this switch check for AutoLISP request codes */ switch (stat) { case RQXLOAD: scode = loadfuncs() == GOOD ? RSRSLT : RSERR; break; case RQSUBR: /* Usually implemented to call an external function */ break; case RQXUNLD: /* Usually implemented just to return RSRSLT, */ case RQSAVE: /* not often needed */ case RQEND: case RQQUIT: default: /* Return RSRSLT */ break; } } } /* LOADFUNCS -- Define external functions by calling sds_defun */ static int loadfuncs() { return GOOD; }