3f84031e |
1 | // This Test Port skeleton source file was generated by the\r |
2 | // TTCN-3 Compiler of the TTCN-3 Test Executor version CRL 113 200/4 R2A\r |
3 | // for Arpad Lovassy (earplov@esekilxxen1841) on Tue Jul 22 16:49:55 2014\r |
4 | \r |
5 | // Copyright Ericsson Telecom AB 2000-2014\r |
6 | \r |
7 | // You may modify this file. Complete the body of empty functions and// add your member functions here.\r |
8 | \r |
9 | #include "PCOType.hh"\r |
10 | #include "memory.h"\r |
11 | \r |
12 | #include <stdio.h>\r |
13 | \r |
14 | namespace MyExample {\r |
15 | \r |
16 | PCOType::PCOType(const char *par_port_name)\r |
17 | : PCOType_BASE(par_port_name)\r |
18 | {\r |
19 | \r |
20 | }\r |
21 | \r |
22 | PCOType::~PCOType()\r |
23 | {\r |
24 | \r |
25 | }\r |
26 | \r |
27 | void PCOType::set_parameter(const char * /*parameter_name*/,\r |
28 | const char * /*parameter_value*/)\r |
29 | {\r |
30 | \r |
31 | }\r |
32 | \r |
33 | void PCOType::Event_Handler(const fd_set *read_fds,\r |
34 | const fd_set *write_fds, const fd_set *error_fds,\r |
35 | double time_since_last_call)\r |
36 | {\r |
37 | size_t buf_len = 0, buf_size = 32;\r |
38 | char *buf = (char*)Malloc(buf_size);\r |
39 | for ( ; ; ) {\r |
40 | int c = getc(stdin);\r |
41 | if (c == EOF) {\r |
42 | if (buf_len > 0) incoming_message(CHARSTRING(buf_len, buf));\r |
43 | Uninstall_Handler();\r |
44 | break;\r |
45 | } else if (c == '\n') {\r |
46 | incoming_message(CHARSTRING(buf_len, buf));\r |
47 | break;\r |
48 | } else {\r |
49 | if (buf_len >= buf_size) {\r |
50 | buf_size *= 2;\r |
51 | buf = (char*)Realloc(buf, buf_size);\r |
52 | }\r |
53 | buf[buf_len++] = c;\r |
54 | }\r |
55 | }\r |
56 | Free(buf);\r |
57 | }\r |
58 | \r |
59 | /*void PCOType::Handle_Fd_Event(int fd, boolean is_readable,\r |
60 | boolean is_writable, boolean is_error) {}*/\r |
61 | \r |
62 | void PCOType::Handle_Fd_Event_Error(int /*fd*/)\r |
63 | {\r |
64 | \r |
65 | }\r |
66 | \r |
67 | void PCOType::Handle_Fd_Event_Writable(int /*fd*/)\r |
68 | {\r |
69 | \r |
70 | }\r |
71 | \r |
72 | void PCOType::Handle_Fd_Event_Readable(int /*fd*/)\r |
73 | {\r |
74 | \r |
75 | }\r |
76 | \r |
77 | /*void PCOType::Handle_Timeout(double time_since_last_call) {}*/\r |
78 | \r |
79 | void PCOType::user_map(const char *system_port)\r |
80 | {\r |
81 | fd_set readfds;\r |
82 | FD_ZERO(&readfds);\r |
83 | FD_SET(fileno(stdin), &readfds);\r |
84 | Install_Handler(&readfds, NULL, NULL, 0.0);\r |
85 | }\r |
86 | \r |
87 | void PCOType::user_unmap(const char *system_port)\r |
88 | {\r |
89 | Uninstall_Handler();\r |
90 | }\r |
91 | \r |
92 | void PCOType::user_start()\r |
93 | {\r |
94 | \r |
95 | }\r |
96 | \r |
97 | void PCOType::user_stop()\r |
98 | {\r |
99 | \r |
100 | }\r |
101 | \r |
102 | void PCOType::outgoing_send(const CHARSTRING& send_par)\r |
103 | {\r |
104 | puts((const char*)send_par);\r |
105 | fflush(stdout);\r |
106 | }\r |
107 | \r |
108 | } /* end of namespace */\r |