Napatech Software Suite: examples/flowmatch/flowmatch_example_receiver.h Source File examplesflowmatch flowmatch_example_receiver.h Go to the documentation of this file. 1 /* 2 * 3 * Copyright 2023 Napatech A/S. All Rights Reserved. 4 * 5 * 1. Copying, modification, and distribution of this file, or executable 6 * versions of this file, is governed by the terms of the Napatech Software 7 * license agreement under which this file was made available. If you do not 8 * agree to the terms of the license do not install, copy, access or 9 * otherwise use this file. 10 * 11 * 2. Under the Napatech Software license agreement you are granted a 12 * limited, non-exclusive, non-assignable, copyright license to copy, modify 13 * and distribute this file in conjunction with Napatech SmartNIC's and 14 * similar hardware manufactured or supplied by Napatech A/S. 15 * 16 * 3. The full Napatech Software license agreement is included in this 17 * distribution, please see "NP-0405 Napatech Software license 18 * agreement.pdf" 19 * 20 * 4. Redistributions of source code must retain this copyright notice, 21 * list of conditions and the following disclaimer. 22 * 23 * THIS SOFTWARE IS PROVIDED "AS IS" WITHOUT ANY WARRANTIES, EXPRESS OR 24 * IMPLIED, AND NAPATECH DISCLAIMS ALL IMPLIED WARRANTIES INCLUDING ANY 25 * IMPLIED WARRANTY OF TITLE, MERCHANTABILITY, NONINFRINGEMENT, OR OF 26 * FITNESS FOR A PARTICULAR PURPOSE. TO THE EXTENT NOT PROHIBITED BY 27 * APPLICABLE LAW, IN NO EVENT SHALL NAPATECH BE LIABLE FOR PERSONAL INJURY, 28 * OR ANY INCIDENTAL, SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES WHATSOEVER, 29 * INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF PROFITS, CORRUPTION OR 30 * LOSS OF DATA, FAILURE TO TRANSMIT OR RECEIVE ANY DATA OR INFORMATION, 31 * BUSINESS INTERRUPTION OR ANY OTHER COMMERCIAL DAMAGES OR LOSSES, ARISING 32 * OUT OF OR RELATED TO YOUR USE OR INABILITY TO USE NAPATECH SOFTWARE OR 33 * SERVICES OR ANY THIRD PARTY SOFTWARE OR APPLICATIONS IN CONJUNCTION WITH 34 * THE NAPATECH SOFTWARE OR SERVICES, HOWEVER CAUSED, REGARDLESS OF THE THEORY 35 * OF LIABILITY (CONTRACT, TORT OR OTHERWISE) AND EVEN IF NAPATECH HAS BEEN 36 * ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME JURISDICTIONS DO NOT ALLOW 37 * THE EXCLUSION OR LIMITATION OF LIABILITY FOR PERSONAL INJURY, OR OF 38 * INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THIS LIMITATION MAY NOT APPLY TO YOU. 39 * 40 * 41 42 */ 43 44 #ifndef EXAMPLES_FLOWMATCH_FLOWMATCH_EXAMPLE_RECEIVER_H 45 #define EXAMPLES_FLOWMATCH_FLOWMATCH_EXAMPLE_RECEIVER_H 46 47 #include <atomic> 48 #include <cstdint> 49 50 /** 51 * Handle MISSED packages, and learn new flows based on received packages. 52 * This function is the main function of a separate thread. 53 */ 54 void taskReceiverMiss(const char* streamName, uint32_t streamId, 55 std::atomic<uint64_t>* ipv4counter, std::atomic<uint64_t>* ipv6counter); 56 57 /** 58 * Count packages received in specified stream. 59 * This function is the main function of a separate thread. 60 * Note: The transmit function in this example does not cause enough traffic 61 * for any packages to be received as unhandled. However, if the tool pktgen 62 * is running while this example is run, it can generate unhandled packages. 63 */ 64 void taskReceiverCounter(const char* streamName, uint32_t streamId, 65 std::atomic<uint64_t>* counter); 66 67 #endif // EXAMPLES_FLOWMATCH_FLOWMATCH_EXAMPLE_RECEIVER_H DN-0449 Napatech Software Suite Reference Documentation (v. 3.28.3.185-b675882b)Copyright © 2023 Napatech A/S