87{
89 double rate;
96
97
98
99 printf("ID of event to request: ");
102
103 printf("Host to connect: ");
105
106 printf("Get all events (0/1): ");
109
110 printf("Receive via callback ([y]/n): ");
113
114
116 all_flag ?
"Power Consumer" :
"Consumer", NULL);
118 return 1;
119
120
122
123
125
126
130
131
133
134
136
138 start_time = 0;
140
141 do {
144 else {
145
151
152
155
156
160 }
161 }
162
163
167
168
171 if (size <= 0)
172 size += buffer_header.
size;
173 printf(
"Level: %5.1lf %%, ", 100 - 100.0 * size / buffer_header.
size);
174
175 printf(
"Rate: %1.2lf MB/sec, ser mismatches: %d\n", rate,
count_mismatches);
178 }
179
181
183
184 return 1;
185}
INT transition(INT run_number, char *error)
void process_event(HNDLE hBuf, HNDLE request_id, EVENT_HEADER *pheader, void *pevent)
char event_buffer[MAX_EVENT_SIZE]
void process_message(HNDLE hBuf, HNDLE id, EVENT_HEADER *pheader, void *message)
INT bm_open_buffer(const char *buffer_name, INT buffer_size, INT *buffer_handle)
INT bm_request_event(HNDLE buffer_handle, short int event_id, short int trigger_mask, INT sampling_type, HNDLE *request_id, EVENT_HANDLER *func)
INT bm_set_cache_size(INT buffer_handle, size_t read_size, size_t write_size)
INT bm_receive_event(INT buffer_handle, void *destination, INT *buf_size, int timeout_msec)
INT cm_register_transition(INT transition, INT(*func)(INT, char *), INT sequence_number)
INT cm_yield(INT millisec)
INT cm_connect_experiment(const char *host_name, const char *exp_name, const char *client_name, void(*func)(char *))
INT cm_disconnect_experiment(void)
char * ss_gets(char *string, int size)
INT cm_msg_register(EVENT_HANDLER *func)
int cm_query_transition(int *transition, int *run_number, int *trans_time)
char host_name[HOST_NAME_LENGTH]
INT bm_get_buffer_info(INT buffer_handle, BUFFER_HEADER *buffer_header)