Sds init

提供:GizmoLabs - だいたい CAD LISP なサイト
構文
int sds_init (int argc, char *argv[ ... ]);


機能
SDSアプリケーションを初期化する。
引数
  • argc と *argv[ ... ] : main()関数を通る SDS アプリケーションのコード
戻り値
いろいろな値。SDSアプリケーションが動作しない場合は、コマンドラインにコントロールを返す。
サンプル
/*
 SDS アプリケーションプロトタイプ */
#include <stdio.h>
#include "sdslib.h"
/* MAIN -- メインルーチン */
void
main(argc, argv)
     int argc;
     char *argv[];
{
  int stat;
  short scode = RSRSLT; /* デフォルトの戻り値 */
  sds_init(argc, argv); /* インターフェスのイニシャライズ */
  for ( ;; ) {
    /* Infinite loop */
    if ((stat = sds_link(scode)) < 0) {
      printf("テンプレート: BAD ステータス from sds_link() = %d\n", stat);
      /* リンクが失敗しているので sds_printf() でメッセージは表示しない */
      fflush(stdout);
      exit(1); /* 異常終了なので exit(1) */
    }
    scode = RSRSLT; /* Default return value */
    /* このスイッチは AutoLISP要求コードがないかどうかチェック。 */
    switch (stat) {
      case RQXLOAD:
           scode = loadfuncs() == GOOD ? RSRSLT :
           RSERR;
           break;
      case RQSUBR: /* 外部関数をロードするために使用される */
           break;/
      case RQXUNLD: /* RSRSLTを返すために使用される。 */
      case RQSAVE: /* 必要でないかもしれない */
      case RQEND:
      case RQQUIT:
      default: /* RSRSLTを返す */
           break;
    }
  }
}

/* LOADFUNCS -- sds_defun で外部関数定義しておく */
static int loadfuncs()
{
  return GOOD;
}