termsender.h

来自「SRI international 发布的OAA框架软件」· C头文件 代码 · 共 59 行

H
59
字号
#ifndef TERMSENDER_H
#define TERMSENDER_H

#include "libicl.h"
#include "glib.h"

#ifdef __cplusplus
extern "C" {
#endif

  struct TermSenderStruct;
  typedef struct TermSenderStruct TermSender;

  typedef void (*TermSenderSendTerm)(TermSender*, ICLTerm*);
  typedef void (*TermSenderCleanup)(TermSender*);

  enum TermSenderTypeEnum {
    UNKNOWNTERMSENDERTYPE = -1,
    STRINGTERMSENDERTYPE = 0,
    BINARYTERMSENDERTYPE = 1
  }
  ;
  typedef enum TermSenderTypeEnum TermSenderType;

  enum TermSenderErrorNum {
    TERMSENDER_BININVALIDELEMENT = -102,
    TERMSENDER_BINUNKNOWNTYPETWICE = -101,
    TERMSENDER_BINUNKNOWNTYPEONCE = -100,
    TERMSENDER_NOTINITIALIZED = -3,
    TERMSENDER_BADSEND = -2,
    TERMSENDER_NULLTOSEND = -1,
    TERMSENDER_OKAY = 0
  }
  ;

  EXTERN TermSender* termSender_create();
  EXTERN void termSender_free(TermSender* t);
  /**
   * Return -1 on error--check sender.error
   */
  EXTERN int termSender_sendTerm(TermSender* sender, ICLTerm* term);

  EXTERN void termSender_setError(TermSender* t, gint errnum);
  EXTERN gint termSender_getError(TermSender* t);
  EXTERN void termSender_setSocket(TermSender* t, gint newsocket);
  EXTERN gint termSender_getSocket(TermSender* t);
  EXTERN void termSender_setType(TermSender* t, TermSenderType type);
  EXTERN TermSenderType termSender_getType(TermSender* t);
  EXTERN void termSender_setSenderSpecificData(TermSender* t, gpointer g);
  EXTERN gpointer termSender_getSenderSpecificData(TermSender* t);
  EXTERN void termSender_setSendTermCallback(TermSender* t, TermSenderSendTerm s);
  EXTERN void termSender_setCleanupCallback(TermSender* t, TermSenderCleanup c);

#ifdef __cplusplus
}
#endif

#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?