unity_narrow.h 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. /*
  2. * Copyright (C) 2012 Martin Willi
  3. * Copyright (C) 2012 revosec AG
  4. *
  5. * This program is free software; you can redistribute it and/or modify it
  6. * under the terms of the GNU General Public License as published by the
  7. * Free Software Foundation; either version 2 of the License, or (at your
  8. * option) any later version. See <http://www.fsf.org/copyleft/gpl.txt>.
  9. *
  10. * This program is distributed in the hope that it will be useful, but
  11. * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
  12. * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
  13. * for more details.
  14. */
  15. /**
  16. * @defgroup unity_narrow unity_narrow
  17. * @{ @ingroup unity
  18. */
  19. #ifndef UNITY_NARROW_H_
  20. #define UNITY_NARROW_H_
  21. #include <bus/listeners/listener.h>
  22. #include "unity_handler.h"
  23. typedef struct unity_narrow_t unity_narrow_t;
  24. /**
  25. * Listener that narrows Quick Modes to the Unity Split-Include subnets.
  26. */
  27. struct unity_narrow_t {
  28. /**
  29. * Implements listener_t.
  30. */
  31. listener_t listener;
  32. /**
  33. * Destroy a unity_narrow_t.
  34. */
  35. void (*destroy)(unity_narrow_t *this);
  36. };
  37. /**
  38. * Create a unity_narrow instance.
  39. */
  40. unity_narrow_t *unity_narrow_create(unity_handler_t *handler);
  41. #endif /** UNITY_NARROW_H_ @}*/