X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fplugins%2Foddbuf%2Foddbuf_periodic.c;fp=src%2Fplugins%2Foddbuf%2Foddbuf_periodic.c;h=0000000000000000000000000000000000000000;hb=a287a30dda5ab7902569b06342c68d5df7082a66;hp=c88e74915a6860684aaa953a15f5378dcc5330d9;hpb=5b786fb89483a77614dd40e8959463816d79fcbb;p=vpp.git diff --git a/src/plugins/oddbuf/oddbuf_periodic.c b/src/plugins/oddbuf/oddbuf_periodic.c deleted file mode 100644 index c88e74915a6..00000000000 --- a/src/plugins/oddbuf/oddbuf_periodic.c +++ /dev/null @@ -1,117 +0,0 @@ -/* - * oddbuf_periodic.c - skeleton plug-in periodic function - * - * Copyright (c) - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at: - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#include -#include -#include - -static void -handle_event1 (oddbuf_main_t * pm, f64 now, uword event_data) -{ - clib_warning ("received ODDBUF_EVENT1"); -} - -static void -handle_event2 (oddbuf_main_t * pm, f64 now, uword event_data) -{ - clib_warning ("received ODDBUF_EVENT2"); -} - -static void -handle_periodic_enable_disable (oddbuf_main_t * pm, f64 now, uword event_data) -{ - clib_warning ("Periodic timeouts now %s", - event_data ? "enabled" : "disabled"); - pm->periodic_timer_enabled = event_data; -} - -static void -handle_timeout (oddbuf_main_t * pm, f64 now) -{ - clib_warning ("timeout at %.2f", now); -} - -static uword -oddbuf_periodic_process (vlib_main_t * vm, - vlib_node_runtime_t * rt, vlib_frame_t * f) -{ - oddbuf_main_t *pm = &oddbuf_main; - f64 now; - f64 timeout = 10.0; - uword *event_data = 0; - uword event_type; - int i; - - while (1) - { - if (pm->periodic_timer_enabled) - vlib_process_wait_for_event_or_clock (vm, timeout); - else - vlib_process_wait_for_event (vm); - - now = vlib_time_now (vm); - - event_type = vlib_process_get_events (vm, (uword **) & event_data); - - switch (event_type) - { - /* Handle ODDBUF_EVENT1 */ - case ODDBUF_EVENT1: - for (i = 0; i < vec_len (event_data); i++) - handle_event1 (pm, now, event_data[i]); - break; - - /* Handle ODDBUF_EVENT2 */ - case ODDBUF_EVENT2: - for (i = 0; i < vec_len (event_data); i++) - handle_event2 (pm, now, event_data[i]); - break; - /* Handle the periodic timer on/off event */ - case ODDBUF_EVENT_PERIODIC_ENABLE_DISABLE: - for (i = 0; i < vec_len (event_data); i++) - handle_periodic_enable_disable (pm, now, event_data[i]); - break; - - /* Handle periodic timeouts */ - case ~0: - handle_timeout (pm, now); - break; - } - vec_reset_length (event_data); - } - return 0; /* or not */ -} - -void -oddbuf_create_periodic_process (oddbuf_main_t * omp) -{ - /* Already created the process node? */ - if (omp->periodic_node_index > 0) - return; - - /* No, create it now and make a note of the node index */ - omp->periodic_node_index = vlib_process_create (omp->vlib_main, "oddbuf-periodic-process", oddbuf_periodic_process, 16 /* log2_n_stack_bytes */ - ); -} - -/* - * fd.io coding-style-patch-verification: ON - * - * Local Variables: - * eval: (c-set-style "gnu") - * End: - */