Blame view

app/app-prime-modbus/include/fanet/fabind.h 2.02 KB
8c2952457   김태훈   응용 프로그램 추가
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
  /**    
      @file     fabind.h
      @date     2008/10/08
      @author   오재경 freefrug@falinux.com  FALinux.Co.,Ltd.
      @brief    fa-bind 드라이버를 사용하기 위한 API 를 구현한다..
                
      
      @todo     
      @bug     
      @remark  
      @warning 
  */
  //----------------------------------------------------------------------------
  #ifndef _FABIND_H_
  #define _FABIND_H_
  
  #include <fa-bind-ioctl.h>
  
  typedef enum { MSG_HOWTO_NORMAL   = SR_TYPE_NORMAL, 
  	           MSG_HOWTO_EXPRESS  = SR_TYPE_EXPRESS,  
  	           MSG_HOWTO_EMERENCY = SR_TYPE_EMERENCY } msg_howto_t;
  
  
  #define   FABIND_LAST_RECV_PORT     0x7fff0000
  
  
  #endif // _FABIND_H_
  
  
  #ifdef __cplusplus 
  extern "C" { 
  #endif 	
  
  /// @{
  /// @brief  fabind 객체 함수 리스트 
  extern poll_obj_t  *fabind_open( int port, int group, int recv_queue_count );          /// fabind 드라이버 열고 객체를 초기화한다.
  extern void         fabind_close( poll_obj_t *obj );                                   /// fabind 객체를 해제한다.
  extern poll_obj_t  *fabind_get_byport( int port );                                     /// fabind 객체를 포트번호로 찾는다.
  extern int          fabind_write( poll_obj_t *obj, int port, char *buf, int len );     /// fabind 를 통해 데이타를 전송한다.
  extern int          fabind_read( poll_obj_t *obj, char *buf, int len, int *need_ack ); /// fabind 를 통해 데이타를 읽는다.
  extern int          fabind_write_and_response( poll_obj_t *obj, int port, char *tx_buf, char *rx_buf, int tx_cnt, int rx_cnt ); /// fabind 를 통해 데이타를 전송한 후 응답을 받는다.
  extern int          fabind_write_group( poll_obj_t *obj, int grp_port, char *buf, int len ); ///  fabind 를 통해 그룹단위로 데이타를 전송한다.
  extern int          fabind_get_recv_port( poll_obj_t *obj );                           /// fabind 를 통해 들어온 포트번호를 얻는다.
  
  extern int          fabind_write_timeout( poll_obj_t *obj, int port, char *buf, int len, int timeout_sec ); /// fabind 를 통해 데이타를 시간을 감시하며 전송한다.
  /// @}
  
  #ifdef __cplusplus 
  }
  #endif