b66a077c339b9a8b88aecbea38d4585197bd2b72
[govpp.git] / examples / bin_api / stats / stats.ba.go
1 // Code generated by GoVPP binapi-generator. DO NOT EDIT.
2 // source: stats.api.json
3
4 /*
5 Package stats is a generated VPP binary API of the 'stats' VPP module.
6
7 It is generated from this file:
8         stats.api.json
9
10 It contains these VPP binary API objects:
11         39 messages
12         10 types
13         14 services
14 */
15 package stats
16
17 import "git.fd.io/govpp.git/api"
18 import "github.com/lunixbochs/struc"
19 import "bytes"
20
21 // Reference imports to suppress errors if they are not otherwise used.
22 var _ = api.RegisterMessage
23 var _ = struc.Pack
24 var _ = bytes.NewBuffer
25
26 /* Types */
27
28 // VlibCounter represents the VPP binary API type 'vlib_counter'.
29 // Generated from 'stats.api.json', line 1004:
30 //
31 //            "vlib_counter",
32 //            [
33 //                "u64",
34 //                "packets"
35 //            ],
36 //            [
37 //                "u64",
38 //                "bytes"
39 //            ],
40 //            {
41 //                "crc": "0xce2325a2"
42 //            }
43 //
44 type VlibCounter struct {
45         Packets uint64
46         Bytes   uint64
47 }
48
49 func (*VlibCounter) GetTypeName() string {
50         return "vlib_counter"
51 }
52 func (*VlibCounter) GetCrcString() string {
53         return "ce2325a2"
54 }
55
56 // VnetCombinedCounter represents the VPP binary API type 'vnet_combined_counter'.
57 // Generated from 'stats.api.json', line 1018:
58 //
59 //            "vnet_combined_counter",
60 //            [
61 //                "u32",
62 //                "sw_if_index"
63 //            ],
64 //            [
65 //                "u64",
66 //                "rx_packets"
67 //            ],
68 //            [
69 //                "u64",
70 //                "rx_bytes"
71 //            ],
72 //            [
73 //                "u64",
74 //                "rx_unicast_packets"
75 //            ],
76 //            [
77 //                "u64",
78 //                "rx_unicast_bytes"
79 //            ],
80 //            [
81 //                "u64",
82 //                "rx_multicast_packets"
83 //            ],
84 //            [
85 //                "u64",
86 //                "rx_multicast_bytes"
87 //            ],
88 //            [
89 //                "u64",
90 //                "rx_broadcast_packets"
91 //            ],
92 //            [
93 //                "u64",
94 //                "rx_broadcast_bytes"
95 //            ],
96 //            [
97 //                "u64",
98 //                "tx_packets"
99 //            ],
100 //            [
101 //                "u64",
102 //                "tx_bytes"
103 //            ],
104 //            [
105 //                "u64",
106 //                "tx_unicast_packets"
107 //            ],
108 //            [
109 //                "u64",
110 //                "tx_unicast_bytes"
111 //            ],
112 //            [
113 //                "u64",
114 //                "tx_multicast_packets"
115 //            ],
116 //            [
117 //                "u64",
118 //                "tx_multicast_bytes"
119 //            ],
120 //            [
121 //                "u64",
122 //                "tx_broadcast_packets"
123 //            ],
124 //            [
125 //                "u64",
126 //                "tx_broadcast_bytes"
127 //            ],
128 //            {
129 //                "crc": "0x20905ca4"
130 //            }
131 //
132 type VnetCombinedCounter struct {
133         SwIfIndex          uint32
134         RxPackets          uint64
135         RxBytes            uint64
136         RxUnicastPackets   uint64
137         RxUnicastBytes     uint64
138         RxMulticastPackets uint64
139         RxMulticastBytes   uint64
140         RxBroadcastPackets uint64
141         RxBroadcastBytes   uint64
142         TxPackets          uint64
143         TxBytes            uint64
144         TxUnicastPackets   uint64
145         TxUnicastBytes     uint64
146         TxMulticastPackets uint64
147         TxMulticastBytes   uint64
148         TxBroadcastPackets uint64
149         TxBroadcastBytes   uint64
150 }
151
152 func (*VnetCombinedCounter) GetTypeName() string {
153         return "vnet_combined_counter"
154 }
155 func (*VnetCombinedCounter) GetCrcString() string {
156         return "20905ca4"
157 }
158
159 // VnetSimpleCounter represents the VPP binary API type 'vnet_simple_counter'.
160 // Generated from 'stats.api.json', line 1092:
161 //
162 //            "vnet_simple_counter",
163 //            [
164 //                "u32",
165 //                "sw_if_index"
166 //            ],
167 //            [
168 //                "u64",
169 //                "drop"
170 //            ],
171 //            [
172 //                "u64",
173 //                "punt"
174 //            ],
175 //            [
176 //                "u64",
177 //                "rx_ip4"
178 //            ],
179 //            [
180 //                "u64",
181 //                "rx_ip6"
182 //            ],
183 //            [
184 //                "u64",
185 //                "rx_no_buffer"
186 //            ],
187 //            [
188 //                "u64",
189 //                "rx_miss"
190 //            ],
191 //            [
192 //                "u64",
193 //                "rx_error"
194 //            ],
195 //            [
196 //                "u64",
197 //                "tx_error"
198 //            ],
199 //            [
200 //                "u64",
201 //                "rx_mpls"
202 //            ],
203 //            {
204 //                "crc": "0x8bd65e2d"
205 //            }
206 //
207 type VnetSimpleCounter struct {
208         SwIfIndex  uint32
209         Drop       uint64
210         Punt       uint64
211         RxIP4      uint64
212         RxIP6      uint64
213         RxNoBuffer uint64
214         RxMiss     uint64
215         RxError    uint64
216         TxError    uint64
217         RxMpls     uint64
218 }
219
220 func (*VnetSimpleCounter) GetTypeName() string {
221         return "vnet_simple_counter"
222 }
223 func (*VnetSimpleCounter) GetCrcString() string {
224         return "8bd65e2d"
225 }
226
227 // IP4FibCounter represents the VPP binary API type 'ip4_fib_counter'.
228 // Generated from 'stats.api.json', line 1138:
229 //
230 //            "ip4_fib_counter",
231 //            [
232 //                "u32",
233 //                "address"
234 //            ],
235 //            [
236 //                "u8",
237 //                "address_length"
238 //            ],
239 //            [
240 //                "u64",
241 //                "packets"
242 //            ],
243 //            [
244 //                "u64",
245 //                "bytes"
246 //            ],
247 //            {
248 //                "crc": "0xa6ceb0c9"
249 //            }
250 //
251 type IP4FibCounter struct {
252         Address       uint32
253         AddressLength uint8
254         Packets       uint64
255         Bytes         uint64
256 }
257
258 func (*IP4FibCounter) GetTypeName() string {
259         return "ip4_fib_counter"
260 }
261 func (*IP4FibCounter) GetCrcString() string {
262         return "a6ceb0c9"
263 }
264
265 // IP4MfibCounter represents the VPP binary API type 'ip4_mfib_counter'.
266 // Generated from 'stats.api.json', line 1160:
267 //
268 //            "ip4_mfib_counter",
269 //            [
270 //                "u8",
271 //                "source",
272 //                4
273 //            ],
274 //            [
275 //                "u8",
276 //                "group",
277 //                4
278 //            ],
279 //            [
280 //                "u8",
281 //                "group_length"
282 //            ],
283 //            [
284 //                "u64",
285 //                "packets"
286 //            ],
287 //            [
288 //                "u64",
289 //                "bytes"
290 //            ],
291 //            {
292 //                "crc": "0x2cee4721"
293 //            }
294 //
295 type IP4MfibCounter struct {
296         Source      []byte `struc:"[4]byte"`
297         Group       []byte `struc:"[4]byte"`
298         GroupLength uint8
299         Packets     uint64
300         Bytes       uint64
301 }
302
303 func (*IP4MfibCounter) GetTypeName() string {
304         return "ip4_mfib_counter"
305 }
306 func (*IP4MfibCounter) GetCrcString() string {
307         return "2cee4721"
308 }
309
310 // IP4NbrCounter represents the VPP binary API type 'ip4_nbr_counter'.
311 // Generated from 'stats.api.json', line 1188:
312 //
313 //            "ip4_nbr_counter",
314 //            [
315 //                "u32",
316 //                "address"
317 //            ],
318 //            [
319 //                "u8",
320 //                "link_type"
321 //            ],
322 //            [
323 //                "u64",
324 //                "packets"
325 //            ],
326 //            [
327 //                "u64",
328 //                "bytes"
329 //            ],
330 //            {
331 //                "crc": "0xb9f974d6"
332 //            }
333 //
334 type IP4NbrCounter struct {
335         Address  uint32
336         LinkType uint8
337         Packets  uint64
338         Bytes    uint64
339 }
340
341 func (*IP4NbrCounter) GetTypeName() string {
342         return "ip4_nbr_counter"
343 }
344 func (*IP4NbrCounter) GetCrcString() string {
345         return "b9f974d6"
346 }
347
348 // IP6FibCounter represents the VPP binary API type 'ip6_fib_counter'.
349 // Generated from 'stats.api.json', line 1210:
350 //
351 //            "ip6_fib_counter",
352 //            [
353 //                "u64",
354 //                "address",
355 //                2
356 //            ],
357 //            [
358 //                "u8",
359 //                "address_length"
360 //            ],
361 //            [
362 //                "u64",
363 //                "packets"
364 //            ],
365 //            [
366 //                "u64",
367 //                "bytes"
368 //            ],
369 //            {
370 //                "crc": "0xf1197efb"
371 //            }
372 //
373 type IP6FibCounter struct {
374         Address       []uint64 `struc:"[2]uint64"`
375         AddressLength uint8
376         Packets       uint64
377         Bytes         uint64
378 }
379
380 func (*IP6FibCounter) GetTypeName() string {
381         return "ip6_fib_counter"
382 }
383 func (*IP6FibCounter) GetCrcString() string {
384         return "f1197efb"
385 }
386
387 // IP6MfibCounter represents the VPP binary API type 'ip6_mfib_counter'.
388 // Generated from 'stats.api.json', line 1233:
389 //
390 //            "ip6_mfib_counter",
391 //            [
392 //                "u8",
393 //                "source",
394 //                16
395 //            ],
396 //            [
397 //                "u8",
398 //                "group",
399 //                16
400 //            ],
401 //            [
402 //                "u8",
403 //                "group_length"
404 //            ],
405 //            [
406 //                "u64",
407 //                "packets"
408 //            ],
409 //            [
410 //                "u64",
411 //                "bytes"
412 //            ],
413 //            {
414 //                "crc": "0x90a9590e"
415 //            }
416 //
417 type IP6MfibCounter struct {
418         Source      []byte `struc:"[16]byte"`
419         Group       []byte `struc:"[16]byte"`
420         GroupLength uint8
421         Packets     uint64
422         Bytes       uint64
423 }
424
425 func (*IP6MfibCounter) GetTypeName() string {
426         return "ip6_mfib_counter"
427 }
428 func (*IP6MfibCounter) GetCrcString() string {
429         return "90a9590e"
430 }
431
432 // IP6NbrCounter represents the VPP binary API type 'ip6_nbr_counter'.
433 // Generated from 'stats.api.json', line 1261:
434 //
435 //            "ip6_nbr_counter",
436 //            [
437 //                "u64",
438 //                "address",
439 //                2
440 //            ],
441 //            [
442 //                "u8",
443 //                "link_type"
444 //            ],
445 //            [
446 //                "u64",
447 //                "packets"
448 //            ],
449 //            [
450 //                "u64",
451 //                "bytes"
452 //            ],
453 //            {
454 //                "crc": "0x2d755474"
455 //            }
456 //
457 type IP6NbrCounter struct {
458         Address  []uint64 `struc:"[2]uint64"`
459         LinkType uint8
460         Packets  uint64
461         Bytes    uint64
462 }
463
464 func (*IP6NbrCounter) GetTypeName() string {
465         return "ip6_nbr_counter"
466 }
467 func (*IP6NbrCounter) GetCrcString() string {
468         return "2d755474"
469 }
470
471 // UDPEncapCounter represents the VPP binary API type 'udp_encap_counter'.
472 // Generated from 'stats.api.json', line 1284:
473 //
474 //            "udp_encap_counter",
475 //            [
476 //                "u32",
477 //                "id"
478 //            ],
479 //            [
480 //                "u64",
481 //                "packets"
482 //            ],
483 //            [
484 //                "u64",
485 //                "bytes"
486 //            ],
487 //            {
488 //                "crc": "0x7107035f"
489 //            }
490 //
491 type UDPEncapCounter struct {
492         ID      uint32
493         Packets uint64
494         Bytes   uint64
495 }
496
497 func (*UDPEncapCounter) GetTypeName() string {
498         return "udp_encap_counter"
499 }
500 func (*UDPEncapCounter) GetCrcString() string {
501         return "7107035f"
502 }
503
504 /* Messages */
505
506 // WantStats represents the VPP binary API message 'want_stats'.
507 // Generated from 'stats.api.json', line 4:
508 //
509 //            "want_stats",
510 //            [
511 //                "u16",
512 //                "_vl_msg_id"
513 //            ],
514 //            [
515 //                "u32",
516 //                "client_index"
517 //            ],
518 //            [
519 //                "u32",
520 //                "context"
521 //            ],
522 //            [
523 //                "u32",
524 //                "enable_disable"
525 //            ],
526 //            [
527 //                "u32",
528 //                "pid"
529 //            ],
530 //            {
531 //                "crc": "0x476f5a08"
532 //            }
533 //
534 type WantStats struct {
535         EnableDisable uint32
536         PID           uint32
537 }
538
539 func (*WantStats) GetMessageName() string {
540         return "want_stats"
541 }
542 func (*WantStats) GetCrcString() string {
543         return "476f5a08"
544 }
545 func (*WantStats) GetMessageType() api.MessageType {
546         return api.RequestMessage
547 }
548 func NewWantStats() api.Message {
549         return &WantStats{}
550 }
551
552 // WantStatsReply represents the VPP binary API message 'want_stats_reply'.
553 // Generated from 'stats.api.json', line 30:
554 //
555 //            "want_stats_reply",
556 //            [
557 //                "u16",
558 //                "_vl_msg_id"
559 //            ],
560 //            [
561 //                "u32",
562 //                "context"
563 //            ],
564 //            [
565 //                "i32",
566 //                "retval"
567 //            ],
568 //            {
569 //                "crc": "0xe8d4e804"
570 //            }
571 //
572 type WantStatsReply struct {
573         Retval int32
574 }
575
576 func (*WantStatsReply) GetMessageName() string {
577         return "want_stats_reply"
578 }
579 func (*WantStatsReply) GetCrcString() string {
580         return "e8d4e804"
581 }
582 func (*WantStatsReply) GetMessageType() api.MessageType {
583         return api.ReplyMessage
584 }
585 func NewWantStatsReply() api.Message {
586         return &WantStatsReply{}
587 }
588
589 // WantInterfaceSimpleStats represents the VPP binary API message 'want_interface_simple_stats'.
590 // Generated from 'stats.api.json', line 48:
591 //
592 //            "want_interface_simple_stats",
593 //            [
594 //                "u16",
595 //                "_vl_msg_id"
596 //            ],
597 //            [
598 //                "u32",
599 //                "client_index"
600 //            ],
601 //            [
602 //                "u32",
603 //                "context"
604 //            ],
605 //            [
606 //                "u32",
607 //                "enable_disable"
608 //            ],
609 //            [
610 //                "u32",
611 //                "pid"
612 //            ],
613 //            {
614 //                "crc": "0x476f5a08"
615 //            }
616 //
617 type WantInterfaceSimpleStats struct {
618         EnableDisable uint32
619         PID           uint32
620 }
621
622 func (*WantInterfaceSimpleStats) GetMessageName() string {
623         return "want_interface_simple_stats"
624 }
625 func (*WantInterfaceSimpleStats) GetCrcString() string {
626         return "476f5a08"
627 }
628 func (*WantInterfaceSimpleStats) GetMessageType() api.MessageType {
629         return api.RequestMessage
630 }
631 func NewWantInterfaceSimpleStats() api.Message {
632         return &WantInterfaceSimpleStats{}
633 }
634
635 // WantInterfaceSimpleStatsReply represents the VPP binary API message 'want_interface_simple_stats_reply'.
636 // Generated from 'stats.api.json', line 74:
637 //
638 //            "want_interface_simple_stats_reply",
639 //            [
640 //                "u16",
641 //                "_vl_msg_id"
642 //            ],
643 //            [
644 //                "u32",
645 //                "context"
646 //            ],
647 //            [
648 //                "i32",
649 //                "retval"
650 //            ],
651 //            {
652 //                "crc": "0xe8d4e804"
653 //            }
654 //
655 type WantInterfaceSimpleStatsReply struct {
656         Retval int32
657 }
658
659 func (*WantInterfaceSimpleStatsReply) GetMessageName() string {
660         return "want_interface_simple_stats_reply"
661 }
662 func (*WantInterfaceSimpleStatsReply) GetCrcString() string {
663         return "e8d4e804"
664 }
665 func (*WantInterfaceSimpleStatsReply) GetMessageType() api.MessageType {
666         return api.ReplyMessage
667 }
668 func NewWantInterfaceSimpleStatsReply() api.Message {
669         return &WantInterfaceSimpleStatsReply{}
670 }
671
672 // WantPerInterfaceSimpleStats represents the VPP binary API message 'want_per_interface_simple_stats'.
673 // Generated from 'stats.api.json', line 92:
674 //
675 //            "want_per_interface_simple_stats",
676 //            [
677 //                "u16",
678 //                "_vl_msg_id"
679 //            ],
680 //            [
681 //                "u32",
682 //                "client_index"
683 //            ],
684 //            [
685 //                "u32",
686 //                "context"
687 //            ],
688 //            [
689 //                "u32",
690 //                "enable_disable"
691 //            ],
692 //            [
693 //                "u32",
694 //                "pid"
695 //            ],
696 //            [
697 //                "u32",
698 //                "num"
699 //            ],
700 //            [
701 //                "u32",
702 //                "sw_ifs",
703 //                0,
704 //                "num"
705 //            ],
706 //            {
707 //                "crc": "0x729d04f1"
708 //            }
709 //
710 type WantPerInterfaceSimpleStats struct {
711         EnableDisable uint32
712         PID           uint32
713         Num           uint32 `struc:"sizeof=SwIfs"`
714         SwIfs         []uint32
715 }
716
717 func (*WantPerInterfaceSimpleStats) GetMessageName() string {
718         return "want_per_interface_simple_stats"
719 }
720 func (*WantPerInterfaceSimpleStats) GetCrcString() string {
721         return "729d04f1"
722 }
723 func (*WantPerInterfaceSimpleStats) GetMessageType() api.MessageType {
724         return api.RequestMessage
725 }
726 func NewWantPerInterfaceSimpleStats() api.Message {
727         return &WantPerInterfaceSimpleStats{}
728 }
729
730 // WantPerInterfaceSimpleStatsReply represents the VPP binary API message 'want_per_interface_simple_stats_reply'.
731 // Generated from 'stats.api.json', line 128:
732 //
733 //            "want_per_interface_simple_stats_reply",
734 //            [
735 //                "u16",
736 //                "_vl_msg_id"
737 //            ],
738 //            [
739 //                "u32",
740 //                "context"
741 //            ],
742 //            [
743 //                "i32",
744 //                "retval"
745 //            ],
746 //            {
747 //                "crc": "0xe8d4e804"
748 //            }
749 //
750 type WantPerInterfaceSimpleStatsReply struct {
751         Retval int32
752 }
753
754 func (*WantPerInterfaceSimpleStatsReply) GetMessageName() string {
755         return "want_per_interface_simple_stats_reply"
756 }
757 func (*WantPerInterfaceSimpleStatsReply) GetCrcString() string {
758         return "e8d4e804"
759 }
760 func (*WantPerInterfaceSimpleStatsReply) GetMessageType() api.MessageType {
761         return api.ReplyMessage
762 }
763 func NewWantPerInterfaceSimpleStatsReply() api.Message {
764         return &WantPerInterfaceSimpleStatsReply{}
765 }
766
767 // WantInterfaceCombinedStats represents the VPP binary API message 'want_interface_combined_stats'.
768 // Generated from 'stats.api.json', line 146:
769 //
770 //            "want_interface_combined_stats",
771 //            [
772 //                "u16",
773 //                "_vl_msg_id"
774 //            ],
775 //            [
776 //                "u32",
777 //                "client_index"
778 //            ],
779 //            [
780 //                "u32",
781 //                "context"
782 //            ],
783 //            [
784 //                "u32",
785 //                "enable_disable"
786 //            ],
787 //            [
788 //                "u32",
789 //                "pid"
790 //            ],
791 //            {
792 //                "crc": "0x476f5a08"
793 //            }
794 //
795 type WantInterfaceCombinedStats struct {
796         EnableDisable uint32
797         PID           uint32
798 }
799
800 func (*WantInterfaceCombinedStats) GetMessageName() string {
801         return "want_interface_combined_stats"
802 }
803 func (*WantInterfaceCombinedStats) GetCrcString() string {
804         return "476f5a08"
805 }
806 func (*WantInterfaceCombinedStats) GetMessageType() api.MessageType {
807         return api.RequestMessage
808 }
809 func NewWantInterfaceCombinedStats() api.Message {
810         return &WantInterfaceCombinedStats{}
811 }
812
813 // WantInterfaceCombinedStatsReply represents the VPP binary API message 'want_interface_combined_stats_reply'.
814 // Generated from 'stats.api.json', line 172:
815 //
816 //            "want_interface_combined_stats_reply",
817 //            [
818 //                "u16",
819 //                "_vl_msg_id"
820 //            ],
821 //            [
822 //                "u32",
823 //                "context"
824 //            ],
825 //            [
826 //                "i32",
827 //                "retval"
828 //            ],
829 //            {
830 //                "crc": "0xe8d4e804"
831 //            }
832 //
833 type WantInterfaceCombinedStatsReply struct {
834         Retval int32
835 }
836
837 func (*WantInterfaceCombinedStatsReply) GetMessageName() string {
838         return "want_interface_combined_stats_reply"
839 }
840 func (*WantInterfaceCombinedStatsReply) GetCrcString() string {
841         return "e8d4e804"
842 }
843 func (*WantInterfaceCombinedStatsReply) GetMessageType() api.MessageType {
844         return api.ReplyMessage
845 }
846 func NewWantInterfaceCombinedStatsReply() api.Message {
847         return &WantInterfaceCombinedStatsReply{}
848 }
849
850 // WantPerInterfaceCombinedStats represents the VPP binary API message 'want_per_interface_combined_stats'.
851 // Generated from 'stats.api.json', line 190:
852 //
853 //            "want_per_interface_combined_stats",
854 //            [
855 //                "u16",
856 //                "_vl_msg_id"
857 //            ],
858 //            [
859 //                "u32",
860 //                "client_index"
861 //            ],
862 //            [
863 //                "u32",
864 //                "context"
865 //            ],
866 //            [
867 //                "u32",
868 //                "enable_disable"
869 //            ],
870 //            [
871 //                "u32",
872 //                "pid"
873 //            ],
874 //            [
875 //                "u32",
876 //                "num"
877 //            ],
878 //            [
879 //                "u32",
880 //                "sw_ifs",
881 //                0,
882 //                "num"
883 //            ],
884 //            {
885 //                "crc": "0x729d04f1"
886 //            }
887 //
888 type WantPerInterfaceCombinedStats struct {
889         EnableDisable uint32
890         PID           uint32
891         Num           uint32 `struc:"sizeof=SwIfs"`
892         SwIfs         []uint32
893 }
894
895 func (*WantPerInterfaceCombinedStats) GetMessageName() string {
896         return "want_per_interface_combined_stats"
897 }
898 func (*WantPerInterfaceCombinedStats) GetCrcString() string {
899         return "729d04f1"
900 }
901 func (*WantPerInterfaceCombinedStats) GetMessageType() api.MessageType {
902         return api.RequestMessage
903 }
904 func NewWantPerInterfaceCombinedStats() api.Message {
905         return &WantPerInterfaceCombinedStats{}
906 }
907
908 // WantPerInterfaceCombinedStatsReply represents the VPP binary API message 'want_per_interface_combined_stats_reply'.
909 // Generated from 'stats.api.json', line 226:
910 //
911 //            "want_per_interface_combined_stats_reply",
912 //            [
913 //                "u16",
914 //                "_vl_msg_id"
915 //            ],
916 //            [
917 //                "u32",
918 //                "context"
919 //            ],
920 //            [
921 //                "i32",
922 //                "retval"
923 //            ],
924 //            {
925 //                "crc": "0xe8d4e804"
926 //            }
927 //
928 type WantPerInterfaceCombinedStatsReply struct {
929         Retval int32
930 }
931
932 func (*WantPerInterfaceCombinedStatsReply) GetMessageName() string {
933         return "want_per_interface_combined_stats_reply"
934 }
935 func (*WantPerInterfaceCombinedStatsReply) GetCrcString() string {
936         return "e8d4e804"
937 }
938 func (*WantPerInterfaceCombinedStatsReply) GetMessageType() api.MessageType {
939         return api.ReplyMessage
940 }
941 func NewWantPerInterfaceCombinedStatsReply() api.Message {
942         return &WantPerInterfaceCombinedStatsReply{}
943 }
944
945 // WantIP4FibStats represents the VPP binary API message 'want_ip4_fib_stats'.
946 // Generated from 'stats.api.json', line 244:
947 //
948 //            "want_ip4_fib_stats",
949 //            [
950 //                "u16",
951 //                "_vl_msg_id"
952 //            ],
953 //            [
954 //                "u32",
955 //                "client_index"
956 //            ],
957 //            [
958 //                "u32",
959 //                "context"
960 //            ],
961 //            [
962 //                "u32",
963 //                "enable_disable"
964 //            ],
965 //            [
966 //                "u32",
967 //                "pid"
968 //            ],
969 //            {
970 //                "crc": "0x476f5a08"
971 //            }
972 //
973 type WantIP4FibStats struct {
974         EnableDisable uint32
975         PID           uint32
976 }
977
978 func (*WantIP4FibStats) GetMessageName() string {
979         return "want_ip4_fib_stats"
980 }
981 func (*WantIP4FibStats) GetCrcString() string {
982         return "476f5a08"
983 }
984 func (*WantIP4FibStats) GetMessageType() api.MessageType {
985         return api.RequestMessage
986 }
987 func NewWantIP4FibStats() api.Message {
988         return &WantIP4FibStats{}
989 }
990
991 // WantIP4FibStatsReply represents the VPP binary API message 'want_ip4_fib_stats_reply'.
992 // Generated from 'stats.api.json', line 270:
993 //
994 //            "want_ip4_fib_stats_reply",
995 //            [
996 //                "u16",
997 //                "_vl_msg_id"
998 //            ],
999 //            [
1000 //                "u32",
1001 //                "context"
1002 //            ],
1003 //            [
1004 //                "i32",
1005 //                "retval"
1006 //            ],
1007 //            {
1008 //                "crc": "0xe8d4e804"
1009 //            }
1010 //
1011 type WantIP4FibStatsReply struct {
1012         Retval int32
1013 }
1014
1015 func (*WantIP4FibStatsReply) GetMessageName() string {
1016         return "want_ip4_fib_stats_reply"
1017 }
1018 func (*WantIP4FibStatsReply) GetCrcString() string {
1019         return "e8d4e804"
1020 }
1021 func (*WantIP4FibStatsReply) GetMessageType() api.MessageType {
1022         return api.ReplyMessage
1023 }
1024 func NewWantIP4FibStatsReply() api.Message {
1025         return &WantIP4FibStatsReply{}
1026 }
1027
1028 // WantIP6FibStats represents the VPP binary API message 'want_ip6_fib_stats'.
1029 // Generated from 'stats.api.json', line 288:
1030 //
1031 //            "want_ip6_fib_stats",
1032 //            [
1033 //                "u16",
1034 //                "_vl_msg_id"
1035 //            ],
1036 //            [
1037 //                "u32",
1038 //                "client_index"
1039 //            ],
1040 //            [
1041 //                "u32",
1042 //                "context"
1043 //            ],
1044 //            [
1045 //                "u32",
1046 //                "enable_disable"
1047 //            ],
1048 //            [
1049 //                "u32",
1050 //                "pid"
1051 //            ],
1052 //            {
1053 //                "crc": "0x476f5a08"
1054 //            }
1055 //
1056 type WantIP6FibStats struct {
1057         EnableDisable uint32
1058         PID           uint32
1059 }
1060
1061 func (*WantIP6FibStats) GetMessageName() string {
1062         return "want_ip6_fib_stats"
1063 }
1064 func (*WantIP6FibStats) GetCrcString() string {
1065         return "476f5a08"
1066 }
1067 func (*WantIP6FibStats) GetMessageType() api.MessageType {
1068         return api.RequestMessage
1069 }
1070 func NewWantIP6FibStats() api.Message {
1071         return &WantIP6FibStats{}
1072 }
1073
1074 // WantIP6FibStatsReply represents the VPP binary API message 'want_ip6_fib_stats_reply'.
1075 // Generated from 'stats.api.json', line 314:
1076 //
1077 //            "want_ip6_fib_stats_reply",
1078 //            [
1079 //                "u16",
1080 //                "_vl_msg_id"
1081 //            ],
1082 //            [
1083 //                "u32",
1084 //                "context"
1085 //            ],
1086 //            [
1087 //                "i32",
1088 //                "retval"
1089 //            ],
1090 //            {
1091 //                "crc": "0xe8d4e804"
1092 //            }
1093 //
1094 type WantIP6FibStatsReply struct {
1095         Retval int32
1096 }
1097
1098 func (*WantIP6FibStatsReply) GetMessageName() string {
1099         return "want_ip6_fib_stats_reply"
1100 }
1101 func (*WantIP6FibStatsReply) GetCrcString() string {
1102         return "e8d4e804"
1103 }
1104 func (*WantIP6FibStatsReply) GetMessageType() api.MessageType {
1105         return api.ReplyMessage
1106 }
1107 func NewWantIP6FibStatsReply() api.Message {
1108         return &WantIP6FibStatsReply{}
1109 }
1110
1111 // WantIP4MfibStats represents the VPP binary API message 'want_ip4_mfib_stats'.
1112 // Generated from 'stats.api.json', line 332:
1113 //
1114 //            "want_ip4_mfib_stats",
1115 //            [
1116 //                "u16",
1117 //                "_vl_msg_id"
1118 //            ],
1119 //            [
1120 //                "u32",
1121 //                "client_index"
1122 //            ],
1123 //            [
1124 //                "u32",
1125 //                "context"
1126 //            ],
1127 //            [
1128 //                "u32",
1129 //                "enable_disable"
1130 //            ],
1131 //            [
1132 //                "u32",
1133 //                "pid"
1134 //            ],
1135 //            {
1136 //                "crc": "0x476f5a08"
1137 //            }
1138 //
1139 type WantIP4MfibStats struct {
1140         EnableDisable uint32
1141         PID           uint32
1142 }
1143
1144 func (*WantIP4MfibStats) GetMessageName() string {
1145         return "want_ip4_mfib_stats"
1146 }
1147 func (*WantIP4MfibStats) GetCrcString() string {
1148         return "476f5a08"
1149 }
1150 func (*WantIP4MfibStats) GetMessageType() api.MessageType {
1151         return api.RequestMessage
1152 }
1153 func NewWantIP4MfibStats() api.Message {
1154         return &WantIP4MfibStats{}
1155 }
1156
1157 // WantIP4MfibStatsReply represents the VPP binary API message 'want_ip4_mfib_stats_reply'.
1158 // Generated from 'stats.api.json', line 358:
1159 //
1160 //            "want_ip4_mfib_stats_reply",
1161 //            [
1162 //                "u16",
1163 //                "_vl_msg_id"
1164 //            ],
1165 //            [
1166 //                "u32",
1167 //                "context"
1168 //            ],
1169 //            [
1170 //                "i32",
1171 //                "retval"
1172 //            ],
1173 //            {
1174 //                "crc": "0xe8d4e804"
1175 //            }
1176 //
1177 type WantIP4MfibStatsReply struct {
1178         Retval int32
1179 }
1180
1181 func (*WantIP4MfibStatsReply) GetMessageName() string {
1182         return "want_ip4_mfib_stats_reply"
1183 }
1184 func (*WantIP4MfibStatsReply) GetCrcString() string {
1185         return "e8d4e804"
1186 }
1187 func (*WantIP4MfibStatsReply) GetMessageType() api.MessageType {
1188         return api.ReplyMessage
1189 }
1190 func NewWantIP4MfibStatsReply() api.Message {
1191         return &WantIP4MfibStatsReply{}
1192 }
1193
1194 // WantIP6MfibStats represents the VPP binary API message 'want_ip6_mfib_stats'.
1195 // Generated from 'stats.api.json', line 376:
1196 //
1197 //            "want_ip6_mfib_stats",
1198 //            [
1199 //                "u16",
1200 //                "_vl_msg_id"
1201 //            ],
1202 //            [
1203 //                "u32",
1204 //                "client_index"
1205 //            ],
1206 //            [
1207 //                "u32",
1208 //                "context"
1209 //            ],
1210 //            [
1211 //                "u32",
1212 //                "enable_disable"
1213 //            ],
1214 //            [
1215 //                "u32",
1216 //                "pid"
1217 //            ],
1218 //            {
1219 //                "crc": "0x476f5a08"
1220 //            }
1221 //
1222 type WantIP6MfibStats struct {
1223         EnableDisable uint32
1224         PID           uint32
1225 }
1226
1227 func (*WantIP6MfibStats) GetMessageName() string {
1228         return "want_ip6_mfib_stats"
1229 }
1230 func (*WantIP6MfibStats) GetCrcString() string {
1231         return "476f5a08"
1232 }
1233 func (*WantIP6MfibStats) GetMessageType() api.MessageType {
1234         return api.RequestMessage
1235 }
1236 func NewWantIP6MfibStats() api.Message {
1237         return &WantIP6MfibStats{}
1238 }
1239
1240 // WantIP6MfibStatsReply represents the VPP binary API message 'want_ip6_mfib_stats_reply'.
1241 // Generated from 'stats.api.json', line 402:
1242 //
1243 //            "want_ip6_mfib_stats_reply",
1244 //            [
1245 //                "u16",
1246 //                "_vl_msg_id"
1247 //            ],
1248 //            [
1249 //                "u32",
1250 //                "context"
1251 //            ],
1252 //            [
1253 //                "i32",
1254 //                "retval"
1255 //            ],
1256 //            {
1257 //                "crc": "0xe8d4e804"
1258 //            }
1259 //
1260 type WantIP6MfibStatsReply struct {
1261         Retval int32
1262 }
1263
1264 func (*WantIP6MfibStatsReply) GetMessageName() string {
1265         return "want_ip6_mfib_stats_reply"
1266 }
1267 func (*WantIP6MfibStatsReply) GetCrcString() string {
1268         return "e8d4e804"
1269 }
1270 func (*WantIP6MfibStatsReply) GetMessageType() api.MessageType {
1271         return api.ReplyMessage
1272 }
1273 func NewWantIP6MfibStatsReply() api.Message {
1274         return &WantIP6MfibStatsReply{}
1275 }
1276
1277 // WantIP4NbrStats represents the VPP binary API message 'want_ip4_nbr_stats'.
1278 // Generated from 'stats.api.json', line 420:
1279 //
1280 //            "want_ip4_nbr_stats",
1281 //            [
1282 //                "u16",
1283 //                "_vl_msg_id"
1284 //            ],
1285 //            [
1286 //                "u32",
1287 //                "client_index"
1288 //            ],
1289 //            [
1290 //                "u32",
1291 //                "context"
1292 //            ],
1293 //            [
1294 //                "u32",
1295 //                "enable_disable"
1296 //            ],
1297 //            [
1298 //                "u32",
1299 //                "pid"
1300 //            ],
1301 //            {
1302 //                "crc": "0x476f5a08"
1303 //            }
1304 //
1305 type WantIP4NbrStats struct {
1306         EnableDisable uint32
1307         PID           uint32
1308 }
1309
1310 func (*WantIP4NbrStats) GetMessageName() string {
1311         return "want_ip4_nbr_stats"
1312 }
1313 func (*WantIP4NbrStats) GetCrcString() string {
1314         return "476f5a08"
1315 }
1316 func (*WantIP4NbrStats) GetMessageType() api.MessageType {
1317         return api.RequestMessage
1318 }
1319 func NewWantIP4NbrStats() api.Message {
1320         return &WantIP4NbrStats{}
1321 }
1322
1323 // WantIP4NbrStatsReply represents the VPP binary API message 'want_ip4_nbr_stats_reply'.
1324 // Generated from 'stats.api.json', line 446:
1325 //
1326 //            "want_ip4_nbr_stats_reply",
1327 //            [
1328 //                "u16",
1329 //                "_vl_msg_id"
1330 //            ],
1331 //            [
1332 //                "u32",
1333 //                "context"
1334 //            ],
1335 //            [
1336 //                "i32",
1337 //                "retval"
1338 //            ],
1339 //            {
1340 //                "crc": "0xe8d4e804"
1341 //            }
1342 //
1343 type WantIP4NbrStatsReply struct {
1344         Retval int32
1345 }
1346
1347 func (*WantIP4NbrStatsReply) GetMessageName() string {
1348         return "want_ip4_nbr_stats_reply"
1349 }
1350 func (*WantIP4NbrStatsReply) GetCrcString() string {
1351         return "e8d4e804"
1352 }
1353 func (*WantIP4NbrStatsReply) GetMessageType() api.MessageType {
1354         return api.ReplyMessage
1355 }
1356 func NewWantIP4NbrStatsReply() api.Message {
1357         return &WantIP4NbrStatsReply{}
1358 }
1359
1360 // WantIP6NbrStats represents the VPP binary API message 'want_ip6_nbr_stats'.
1361 // Generated from 'stats.api.json', line 464:
1362 //
1363 //            "want_ip6_nbr_stats",
1364 //            [
1365 //                "u16",
1366 //                "_vl_msg_id"
1367 //            ],
1368 //            [
1369 //                "u32",
1370 //                "client_index"
1371 //            ],
1372 //            [
1373 //                "u32",
1374 //                "context"
1375 //            ],
1376 //            [
1377 //                "u32",
1378 //                "enable_disable"
1379 //            ],
1380 //            [
1381 //                "u32",
1382 //                "pid"
1383 //            ],
1384 //            {
1385 //                "crc": "0x476f5a08"
1386 //            }
1387 //
1388 type WantIP6NbrStats struct {
1389         EnableDisable uint32
1390         PID           uint32
1391 }
1392
1393 func (*WantIP6NbrStats) GetMessageName() string {
1394         return "want_ip6_nbr_stats"
1395 }
1396 func (*WantIP6NbrStats) GetCrcString() string {
1397         return "476f5a08"
1398 }
1399 func (*WantIP6NbrStats) GetMessageType() api.MessageType {
1400         return api.RequestMessage
1401 }
1402 func NewWantIP6NbrStats() api.Message {
1403         return &WantIP6NbrStats{}
1404 }
1405
1406 // WantIP6NbrStatsReply represents the VPP binary API message 'want_ip6_nbr_stats_reply'.
1407 // Generated from 'stats.api.json', line 490:
1408 //
1409 //            "want_ip6_nbr_stats_reply",
1410 //            [
1411 //                "u16",
1412 //                "_vl_msg_id"
1413 //            ],
1414 //            [
1415 //                "u32",
1416 //                "context"
1417 //            ],
1418 //            [
1419 //                "i32",
1420 //                "retval"
1421 //            ],
1422 //            {
1423 //                "crc": "0xe8d4e804"
1424 //            }
1425 //
1426 type WantIP6NbrStatsReply struct {
1427         Retval int32
1428 }
1429
1430 func (*WantIP6NbrStatsReply) GetMessageName() string {
1431         return "want_ip6_nbr_stats_reply"
1432 }
1433 func (*WantIP6NbrStatsReply) GetCrcString() string {
1434         return "e8d4e804"
1435 }
1436 func (*WantIP6NbrStatsReply) GetMessageType() api.MessageType {
1437         return api.ReplyMessage
1438 }
1439 func NewWantIP6NbrStatsReply() api.Message {
1440         return &WantIP6NbrStatsReply{}
1441 }
1442
1443 // VnetIP4FibCounters represents the VPP binary API message 'vnet_ip4_fib_counters'.
1444 // Generated from 'stats.api.json', line 508:
1445 //
1446 //            "vnet_ip4_fib_counters",
1447 //            [
1448 //                "u16",
1449 //                "_vl_msg_id"
1450 //            ],
1451 //            [
1452 //                "u32",
1453 //                "vrf_id"
1454 //            ],
1455 //            [
1456 //                "u32",
1457 //                "count"
1458 //            ],
1459 //            [
1460 //                "vl_api_ip4_fib_counter_t",
1461 //                "c",
1462 //                0,
1463 //                "count"
1464 //            ],
1465 //            {
1466 //                "crc": "0x57e3feec"
1467 //            }
1468 //
1469 type VnetIP4FibCounters struct {
1470         VrfID uint32
1471         Count uint32 `struc:"sizeof=C"`
1472         C     []IP4FibCounter
1473 }
1474
1475 func (*VnetIP4FibCounters) GetMessageName() string {
1476         return "vnet_ip4_fib_counters"
1477 }
1478 func (*VnetIP4FibCounters) GetCrcString() string {
1479         return "57e3feec"
1480 }
1481 func (*VnetIP4FibCounters) GetMessageType() api.MessageType {
1482         return api.OtherMessage
1483 }
1484 func NewVnetIP4FibCounters() api.Message {
1485         return &VnetIP4FibCounters{}
1486 }
1487
1488 // VnetIP4MfibCounters represents the VPP binary API message 'vnet_ip4_mfib_counters'.
1489 // Generated from 'stats.api.json', line 532:
1490 //
1491 //            "vnet_ip4_mfib_counters",
1492 //            [
1493 //                "u16",
1494 //                "_vl_msg_id"
1495 //            ],
1496 //            [
1497 //                "u32",
1498 //                "vrf_id"
1499 //            ],
1500 //            [
1501 //                "u32",
1502 //                "count"
1503 //            ],
1504 //            [
1505 //                "vl_api_ip4_mfib_counter_t",
1506 //                "c",
1507 //                0,
1508 //                "count"
1509 //            ],
1510 //            {
1511 //                "crc": "0x946eb588"
1512 //            }
1513 //
1514 type VnetIP4MfibCounters struct {
1515         VrfID uint32
1516         Count uint32 `struc:"sizeof=C"`
1517         C     []IP4MfibCounter
1518 }
1519
1520 func (*VnetIP4MfibCounters) GetMessageName() string {
1521         return "vnet_ip4_mfib_counters"
1522 }
1523 func (*VnetIP4MfibCounters) GetCrcString() string {
1524         return "946eb588"
1525 }
1526 func (*VnetIP4MfibCounters) GetMessageType() api.MessageType {
1527         return api.OtherMessage
1528 }
1529 func NewVnetIP4MfibCounters() api.Message {
1530         return &VnetIP4MfibCounters{}
1531 }
1532
1533 // VnetIP4NbrCounters represents the VPP binary API message 'vnet_ip4_nbr_counters'.
1534 // Generated from 'stats.api.json', line 556:
1535 //
1536 //            "vnet_ip4_nbr_counters",
1537 //            [
1538 //                "u16",
1539 //                "_vl_msg_id"
1540 //            ],
1541 //            [
1542 //                "u32",
1543 //                "count"
1544 //            ],
1545 //            [
1546 //                "u32",
1547 //                "sw_if_index"
1548 //            ],
1549 //            [
1550 //                "u8",
1551 //                "begin"
1552 //            ],
1553 //            [
1554 //                "vl_api_ip4_nbr_counter_t",
1555 //                "c",
1556 //                0,
1557 //                "count"
1558 //            ],
1559 //            {
1560 //                "crc": "0x214c4811"
1561 //            }
1562 //
1563 type VnetIP4NbrCounters struct {
1564         Count     uint32 `struc:"sizeof=C"`
1565         SwIfIndex uint32
1566         Begin     uint8
1567         C         []IP4NbrCounter
1568 }
1569
1570 func (*VnetIP4NbrCounters) GetMessageName() string {
1571         return "vnet_ip4_nbr_counters"
1572 }
1573 func (*VnetIP4NbrCounters) GetCrcString() string {
1574         return "214c4811"
1575 }
1576 func (*VnetIP4NbrCounters) GetMessageType() api.MessageType {
1577         return api.OtherMessage
1578 }
1579 func NewVnetIP4NbrCounters() api.Message {
1580         return &VnetIP4NbrCounters{}
1581 }
1582
1583 // VnetIP6FibCounters represents the VPP binary API message 'vnet_ip6_fib_counters'.
1584 // Generated from 'stats.api.json', line 584:
1585 //
1586 //            "vnet_ip6_fib_counters",
1587 //            [
1588 //                "u16",
1589 //                "_vl_msg_id"
1590 //            ],
1591 //            [
1592 //                "u32",
1593 //                "vrf_id"
1594 //            ],
1595 //            [
1596 //                "u32",
1597 //                "count"
1598 //            ],
1599 //            [
1600 //                "vl_api_ip6_fib_counter_t",
1601 //                "c",
1602 //                0,
1603 //                "count"
1604 //            ],
1605 //            {
1606 //                "crc": "0x13aed73d"
1607 //            }
1608 //
1609 type VnetIP6FibCounters struct {
1610         VrfID uint32
1611         Count uint32 `struc:"sizeof=C"`
1612         C     []IP6FibCounter
1613 }
1614
1615 func (*VnetIP6FibCounters) GetMessageName() string {
1616         return "vnet_ip6_fib_counters"
1617 }
1618 func (*VnetIP6FibCounters) GetCrcString() string {
1619         return "13aed73d"
1620 }
1621 func (*VnetIP6FibCounters) GetMessageType() api.MessageType {
1622         return api.OtherMessage
1623 }
1624 func NewVnetIP6FibCounters() api.Message {
1625         return &VnetIP6FibCounters{}
1626 }
1627
1628 // VnetIP6MfibCounters represents the VPP binary API message 'vnet_ip6_mfib_counters'.
1629 // Generated from 'stats.api.json', line 608:
1630 //
1631 //            "vnet_ip6_mfib_counters",
1632 //            [
1633 //                "u16",
1634 //                "_vl_msg_id"
1635 //            ],
1636 //            [
1637 //                "u32",
1638 //                "vrf_id"
1639 //            ],
1640 //            [
1641 //                "u32",
1642 //                "count"
1643 //            ],
1644 //            [
1645 //                "vl_api_ip6_mfib_counter_t",
1646 //                "c",
1647 //                0,
1648 //                "count"
1649 //            ],
1650 //            {
1651 //                "crc": "0x65fe1ae3"
1652 //            }
1653 //
1654 type VnetIP6MfibCounters struct {
1655         VrfID uint32
1656         Count uint32 `struc:"sizeof=C"`
1657         C     []IP6MfibCounter
1658 }
1659
1660 func (*VnetIP6MfibCounters) GetMessageName() string {
1661         return "vnet_ip6_mfib_counters"
1662 }
1663 func (*VnetIP6MfibCounters) GetCrcString() string {
1664         return "65fe1ae3"
1665 }
1666 func (*VnetIP6MfibCounters) GetMessageType() api.MessageType {
1667         return api.OtherMessage
1668 }
1669 func NewVnetIP6MfibCounters() api.Message {
1670         return &VnetIP6MfibCounters{}
1671 }
1672
1673 // VnetIP6NbrCounters represents the VPP binary API message 'vnet_ip6_nbr_counters'.
1674 // Generated from 'stats.api.json', line 632:
1675 //
1676 //            "vnet_ip6_nbr_counters",
1677 //            [
1678 //                "u16",
1679 //                "_vl_msg_id"
1680 //            ],
1681 //            [
1682 //                "u32",
1683 //                "count"
1684 //            ],
1685 //            [
1686 //                "u32",
1687 //                "sw_if_index"
1688 //            ],
1689 //            [
1690 //                "u8",
1691 //                "begin"
1692 //            ],
1693 //            [
1694 //                "vl_api_ip6_nbr_counter_t",
1695 //                "c",
1696 //                0,
1697 //                "count"
1698 //            ],
1699 //            {
1700 //                "crc": "0x650161c0"
1701 //            }
1702 //
1703 type VnetIP6NbrCounters struct {
1704         Count     uint32 `struc:"sizeof=C"`
1705         SwIfIndex uint32
1706         Begin     uint8
1707         C         []IP6NbrCounter
1708 }
1709
1710 func (*VnetIP6NbrCounters) GetMessageName() string {
1711         return "vnet_ip6_nbr_counters"
1712 }
1713 func (*VnetIP6NbrCounters) GetCrcString() string {
1714         return "650161c0"
1715 }
1716 func (*VnetIP6NbrCounters) GetMessageType() api.MessageType {
1717         return api.OtherMessage
1718 }
1719 func NewVnetIP6NbrCounters() api.Message {
1720         return &VnetIP6NbrCounters{}
1721 }
1722
1723 // VnetInterfaceSimpleCounters represents the VPP binary API message 'vnet_interface_simple_counters'.
1724 // Generated from 'stats.api.json', line 660:
1725 //
1726 //            "vnet_interface_simple_counters",
1727 //            [
1728 //                "u16",
1729 //                "_vl_msg_id"
1730 //            ],
1731 //            [
1732 //                "u8",
1733 //                "vnet_counter_type"
1734 //            ],
1735 //            [
1736 //                "u32",
1737 //                "first_sw_if_index"
1738 //            ],
1739 //            [
1740 //                "u32",
1741 //                "count"
1742 //            ],
1743 //            [
1744 //                "u64",
1745 //                "data",
1746 //                0,
1747 //                "count"
1748 //            ],
1749 //            {
1750 //                "crc": "0x9bc4a808"
1751 //            }
1752 //
1753 type VnetInterfaceSimpleCounters struct {
1754         VnetCounterType uint8
1755         FirstSwIfIndex  uint32
1756         Count           uint32 `struc:"sizeof=Data"`
1757         Data            []uint64
1758 }
1759
1760 func (*VnetInterfaceSimpleCounters) GetMessageName() string {
1761         return "vnet_interface_simple_counters"
1762 }
1763 func (*VnetInterfaceSimpleCounters) GetCrcString() string {
1764         return "9bc4a808"
1765 }
1766 func (*VnetInterfaceSimpleCounters) GetMessageType() api.MessageType {
1767         return api.OtherMessage
1768 }
1769 func NewVnetInterfaceSimpleCounters() api.Message {
1770         return &VnetInterfaceSimpleCounters{}
1771 }
1772
1773 // VnetInterfaceCombinedCounters represents the VPP binary API message 'vnet_interface_combined_counters'.
1774 // Generated from 'stats.api.json', line 688:
1775 //
1776 //            "vnet_interface_combined_counters",
1777 //            [
1778 //                "u16",
1779 //                "_vl_msg_id"
1780 //            ],
1781 //            [
1782 //                "u8",
1783 //                "vnet_counter_type"
1784 //            ],
1785 //            [
1786 //                "u32",
1787 //                "first_sw_if_index"
1788 //            ],
1789 //            [
1790 //                "u32",
1791 //                "count"
1792 //            ],
1793 //            [
1794 //                "vl_api_vlib_counter_t",
1795 //                "data",
1796 //                0,
1797 //                "count"
1798 //            ],
1799 //            {
1800 //                "crc": "0x2c595002"
1801 //            }
1802 //
1803 type VnetInterfaceCombinedCounters struct {
1804         VnetCounterType uint8
1805         FirstSwIfIndex  uint32
1806         Count           uint32 `struc:"sizeof=Data"`
1807         Data            []VlibCounter
1808 }
1809
1810 func (*VnetInterfaceCombinedCounters) GetMessageName() string {
1811         return "vnet_interface_combined_counters"
1812 }
1813 func (*VnetInterfaceCombinedCounters) GetCrcString() string {
1814         return "2c595002"
1815 }
1816 func (*VnetInterfaceCombinedCounters) GetMessageType() api.MessageType {
1817         return api.OtherMessage
1818 }
1819 func NewVnetInterfaceCombinedCounters() api.Message {
1820         return &VnetInterfaceCombinedCounters{}
1821 }
1822
1823 // VnetPerInterfaceSimpleCounters represents the VPP binary API message 'vnet_per_interface_simple_counters'.
1824 // Generated from 'stats.api.json', line 716:
1825 //
1826 //            "vnet_per_interface_simple_counters",
1827 //            [
1828 //                "u16",
1829 //                "_vl_msg_id"
1830 //            ],
1831 //            [
1832 //                "u32",
1833 //                "count"
1834 //            ],
1835 //            [
1836 //                "u32",
1837 //                "timestamp"
1838 //            ],
1839 //            [
1840 //                "vl_api_vnet_simple_counter_t",
1841 //                "data",
1842 //                0,
1843 //                "count"
1844 //            ],
1845 //            {
1846 //                "crc": "0xd1fba9ba"
1847 //            }
1848 //
1849 type VnetPerInterfaceSimpleCounters struct {
1850         Count     uint32 `struc:"sizeof=Data"`
1851         Timestamp uint32
1852         Data      []VnetSimpleCounter
1853 }
1854
1855 func (*VnetPerInterfaceSimpleCounters) GetMessageName() string {
1856         return "vnet_per_interface_simple_counters"
1857 }
1858 func (*VnetPerInterfaceSimpleCounters) GetCrcString() string {
1859         return "d1fba9ba"
1860 }
1861 func (*VnetPerInterfaceSimpleCounters) GetMessageType() api.MessageType {
1862         return api.OtherMessage
1863 }
1864 func NewVnetPerInterfaceSimpleCounters() api.Message {
1865         return &VnetPerInterfaceSimpleCounters{}
1866 }
1867
1868 // VnetPerInterfaceCombinedCounters represents the VPP binary API message 'vnet_per_interface_combined_counters'.
1869 // Generated from 'stats.api.json', line 740:
1870 //
1871 //            "vnet_per_interface_combined_counters",
1872 //            [
1873 //                "u16",
1874 //                "_vl_msg_id"
1875 //            ],
1876 //            [
1877 //                "u32",
1878 //                "count"
1879 //            ],
1880 //            [
1881 //                "u32",
1882 //                "timestamp"
1883 //            ],
1884 //            [
1885 //                "vl_api_vnet_combined_counter_t",
1886 //                "data",
1887 //                0,
1888 //                "count"
1889 //            ],
1890 //            {
1891 //                "crc": "0xdc578375"
1892 //            }
1893 //
1894 type VnetPerInterfaceCombinedCounters struct {
1895         Count     uint32 `struc:"sizeof=Data"`
1896         Timestamp uint32
1897         Data      []VnetCombinedCounter
1898 }
1899
1900 func (*VnetPerInterfaceCombinedCounters) GetMessageName() string {
1901         return "vnet_per_interface_combined_counters"
1902 }
1903 func (*VnetPerInterfaceCombinedCounters) GetCrcString() string {
1904         return "dc578375"
1905 }
1906 func (*VnetPerInterfaceCombinedCounters) GetMessageType() api.MessageType {
1907         return api.OtherMessage
1908 }
1909 func NewVnetPerInterfaceCombinedCounters() api.Message {
1910         return &VnetPerInterfaceCombinedCounters{}
1911 }
1912
1913 // VnetGetSummaryStats represents the VPP binary API message 'vnet_get_summary_stats'.
1914 // Generated from 'stats.api.json', line 764:
1915 //
1916 //            "vnet_get_summary_stats",
1917 //            [
1918 //                "u16",
1919 //                "_vl_msg_id"
1920 //            ],
1921 //            [
1922 //                "u32",
1923 //                "client_index"
1924 //            ],
1925 //            [
1926 //                "u32",
1927 //                "context"
1928 //            ],
1929 //            {
1930 //                "crc": "0x51077d14"
1931 //            }
1932 //
1933 type VnetGetSummaryStats struct{}
1934
1935 func (*VnetGetSummaryStats) GetMessageName() string {
1936         return "vnet_get_summary_stats"
1937 }
1938 func (*VnetGetSummaryStats) GetCrcString() string {
1939         return "51077d14"
1940 }
1941 func (*VnetGetSummaryStats) GetMessageType() api.MessageType {
1942         return api.RequestMessage
1943 }
1944 func NewVnetGetSummaryStats() api.Message {
1945         return &VnetGetSummaryStats{}
1946 }
1947
1948 // VnetGetSummaryStatsReply represents the VPP binary API message 'vnet_get_summary_stats_reply'.
1949 // Generated from 'stats.api.json', line 782:
1950 //
1951 //            "vnet_get_summary_stats_reply",
1952 //            [
1953 //                "u16",
1954 //                "_vl_msg_id"
1955 //            ],
1956 //            [
1957 //                "u32",
1958 //                "context"
1959 //            ],
1960 //            [
1961 //                "i32",
1962 //                "retval"
1963 //            ],
1964 //            [
1965 //                "u64",
1966 //                "total_pkts",
1967 //                2
1968 //            ],
1969 //            [
1970 //                "u64",
1971 //                "total_bytes",
1972 //                2
1973 //            ],
1974 //            [
1975 //                "f64",
1976 //                "vector_rate"
1977 //            ],
1978 //            {
1979 //                "crc": "0x32b87c56"
1980 //            }
1981 //
1982 type VnetGetSummaryStatsReply struct {
1983         Retval     int32
1984         TotalPkts  []uint64 `struc:"[2]uint64"`
1985         TotalBytes []uint64 `struc:"[2]uint64"`
1986         VectorRate float64
1987 }
1988
1989 func (*VnetGetSummaryStatsReply) GetMessageName() string {
1990         return "vnet_get_summary_stats_reply"
1991 }
1992 func (*VnetGetSummaryStatsReply) GetCrcString() string {
1993         return "32b87c56"
1994 }
1995 func (*VnetGetSummaryStatsReply) GetMessageType() api.MessageType {
1996         return api.ReplyMessage
1997 }
1998 func NewVnetGetSummaryStatsReply() api.Message {
1999         return &VnetGetSummaryStatsReply{}
2000 }
2001
2002 // StatsGetPollerDelay represents the VPP binary API message 'stats_get_poller_delay'.
2003 // Generated from 'stats.api.json', line 814:
2004 //
2005 //            "stats_get_poller_delay",
2006 //            [
2007 //                "u16",
2008 //                "_vl_msg_id"
2009 //            ],
2010 //            [
2011 //                "u32",
2012 //                "client_index"
2013 //            ],
2014 //            [
2015 //                "u32",
2016 //                "context"
2017 //            ],
2018 //            {
2019 //                "crc": "0x51077d14"
2020 //            }
2021 //
2022 type StatsGetPollerDelay struct{}
2023
2024 func (*StatsGetPollerDelay) GetMessageName() string {
2025         return "stats_get_poller_delay"
2026 }
2027 func (*StatsGetPollerDelay) GetCrcString() string {
2028         return "51077d14"
2029 }
2030 func (*StatsGetPollerDelay) GetMessageType() api.MessageType {
2031         return api.RequestMessage
2032 }
2033 func NewStatsGetPollerDelay() api.Message {
2034         return &StatsGetPollerDelay{}
2035 }
2036
2037 // StatsGetPollerDelayReply represents the VPP binary API message 'stats_get_poller_delay_reply'.
2038 // Generated from 'stats.api.json', line 832:
2039 //
2040 //            "stats_get_poller_delay_reply",
2041 //            [
2042 //                "u16",
2043 //                "_vl_msg_id"
2044 //            ],
2045 //            [
2046 //                "u32",
2047 //                "context"
2048 //            ],
2049 //            [
2050 //                "i32",
2051 //                "retval"
2052 //            ],
2053 //            [
2054 //                "u32",
2055 //                "delay"
2056 //            ],
2057 //            {
2058 //                "crc": "0x8c445a33"
2059 //            }
2060 //
2061 type StatsGetPollerDelayReply struct {
2062         Retval int32
2063         Delay  uint32
2064 }
2065
2066 func (*StatsGetPollerDelayReply) GetMessageName() string {
2067         return "stats_get_poller_delay_reply"
2068 }
2069 func (*StatsGetPollerDelayReply) GetCrcString() string {
2070         return "8c445a33"
2071 }
2072 func (*StatsGetPollerDelayReply) GetMessageType() api.MessageType {
2073         return api.ReplyMessage
2074 }
2075 func NewStatsGetPollerDelayReply() api.Message {
2076         return &StatsGetPollerDelayReply{}
2077 }
2078
2079 // WantUDPEncapStats represents the VPP binary API message 'want_udp_encap_stats'.
2080 // Generated from 'stats.api.json', line 854:
2081 //
2082 //            "want_udp_encap_stats",
2083 //            [
2084 //                "u16",
2085 //                "_vl_msg_id"
2086 //            ],
2087 //            [
2088 //                "u32",
2089 //                "client_index"
2090 //            ],
2091 //            [
2092 //                "u32",
2093 //                "context"
2094 //            ],
2095 //            [
2096 //                "u32",
2097 //                "enable"
2098 //            ],
2099 //            [
2100 //                "u32",
2101 //                "pid"
2102 //            ],
2103 //            {
2104 //                "crc": "0xcfaccc1f"
2105 //            }
2106 //
2107 type WantUDPEncapStats struct {
2108         Enable uint32
2109         PID    uint32
2110 }
2111
2112 func (*WantUDPEncapStats) GetMessageName() string {
2113         return "want_udp_encap_stats"
2114 }
2115 func (*WantUDPEncapStats) GetCrcString() string {
2116         return "cfaccc1f"
2117 }
2118 func (*WantUDPEncapStats) GetMessageType() api.MessageType {
2119         return api.RequestMessage
2120 }
2121 func NewWantUDPEncapStats() api.Message {
2122         return &WantUDPEncapStats{}
2123 }
2124
2125 // WantUDPEncapStatsReply represents the VPP binary API message 'want_udp_encap_stats_reply'.
2126 // Generated from 'stats.api.json', line 880:
2127 //
2128 //            "want_udp_encap_stats_reply",
2129 //            [
2130 //                "u16",
2131 //                "_vl_msg_id"
2132 //            ],
2133 //            [
2134 //                "u32",
2135 //                "context"
2136 //            ],
2137 //            [
2138 //                "i32",
2139 //                "retval"
2140 //            ],
2141 //            {
2142 //                "crc": "0xe8d4e804"
2143 //            }
2144 //
2145 type WantUDPEncapStatsReply struct {
2146         Retval int32
2147 }
2148
2149 func (*WantUDPEncapStatsReply) GetMessageName() string {
2150         return "want_udp_encap_stats_reply"
2151 }
2152 func (*WantUDPEncapStatsReply) GetCrcString() string {
2153         return "e8d4e804"
2154 }
2155 func (*WantUDPEncapStatsReply) GetMessageType() api.MessageType {
2156         return api.ReplyMessage
2157 }
2158 func NewWantUDPEncapStatsReply() api.Message {
2159         return &WantUDPEncapStatsReply{}
2160 }
2161
2162 // VnetUDPEncapCounters represents the VPP binary API message 'vnet_udp_encap_counters'.
2163 // Generated from 'stats.api.json', line 898:
2164 //
2165 //            "vnet_udp_encap_counters",
2166 //            [
2167 //                "u16",
2168 //                "_vl_msg_id"
2169 //            ],
2170 //            [
2171 //                "u32",
2172 //                "timestamp"
2173 //            ],
2174 //            [
2175 //                "u32",
2176 //                "count"
2177 //            ],
2178 //            [
2179 //                "vl_api_udp_encap_counter_t",
2180 //                "c",
2181 //                0,
2182 //                "count"
2183 //            ],
2184 //            {
2185 //                "crc": "0x1ab5e649"
2186 //            }
2187 //
2188 type VnetUDPEncapCounters struct {
2189         Timestamp uint32
2190         Count     uint32 `struc:"sizeof=C"`
2191         C         []UDPEncapCounter
2192 }
2193
2194 func (*VnetUDPEncapCounters) GetMessageName() string {
2195         return "vnet_udp_encap_counters"
2196 }
2197 func (*VnetUDPEncapCounters) GetCrcString() string {
2198         return "1ab5e649"
2199 }
2200 func (*VnetUDPEncapCounters) GetMessageType() api.MessageType {
2201         return api.OtherMessage
2202 }
2203 func NewVnetUDPEncapCounters() api.Message {
2204         return &VnetUDPEncapCounters{}
2205 }
2206
2207 /* Services */
2208
2209 type Services interface {
2210         StatsGetPollerDelay(*StatsGetPollerDelay) (*StatsGetPollerDelayReply, error)
2211         VnetGetSummaryStats(*VnetGetSummaryStats) (*VnetGetSummaryStatsReply, error)
2212         WantInterfaceCombinedStats(*WantInterfaceCombinedStats) (*WantInterfaceCombinedStatsReply, error)
2213         WantInterfaceSimpleStats(*WantInterfaceSimpleStats) (*WantInterfaceSimpleStatsReply, error)
2214         WantIP4FibStats(*WantIP4FibStats) (*WantIP4FibStatsReply, error)
2215         WantIP4MfibStats(*WantIP4MfibStats) (*WantIP4MfibStatsReply, error)
2216         WantIP4NbrStats(*WantIP4NbrStats) (*WantIP4NbrStatsReply, error)
2217         WantIP6FibStats(*WantIP6FibStats) (*WantIP6FibStatsReply, error)
2218         WantIP6MfibStats(*WantIP6MfibStats) (*WantIP6MfibStatsReply, error)
2219         WantIP6NbrStats(*WantIP6NbrStats) (*WantIP6NbrStatsReply, error)
2220         WantPerInterfaceCombinedStats(*WantPerInterfaceCombinedStats) (*WantPerInterfaceCombinedStatsReply, error)
2221         WantPerInterfaceSimpleStats(*WantPerInterfaceSimpleStats) (*WantPerInterfaceSimpleStatsReply, error)
2222         WantStats(*WantStats) (*WantStatsReply, error)
2223         WantUDPEncapStats(*WantUDPEncapStats) (*WantUDPEncapStatsReply, error)
2224 }
2225
2226 func init() {
2227         api.RegisterMessage((*WantStats)(nil), "stats.WantStats")
2228         api.RegisterMessage((*WantStatsReply)(nil), "stats.WantStatsReply")
2229         api.RegisterMessage((*WantInterfaceSimpleStats)(nil), "stats.WantInterfaceSimpleStats")
2230         api.RegisterMessage((*WantInterfaceSimpleStatsReply)(nil), "stats.WantInterfaceSimpleStatsReply")
2231         api.RegisterMessage((*WantPerInterfaceSimpleStats)(nil), "stats.WantPerInterfaceSimpleStats")
2232         api.RegisterMessage((*WantPerInterfaceSimpleStatsReply)(nil), "stats.WantPerInterfaceSimpleStatsReply")
2233         api.RegisterMessage((*WantInterfaceCombinedStats)(nil), "stats.WantInterfaceCombinedStats")
2234         api.RegisterMessage((*WantInterfaceCombinedStatsReply)(nil), "stats.WantInterfaceCombinedStatsReply")
2235         api.RegisterMessage((*WantPerInterfaceCombinedStats)(nil), "stats.WantPerInterfaceCombinedStats")
2236         api.RegisterMessage((*WantPerInterfaceCombinedStatsReply)(nil), "stats.WantPerInterfaceCombinedStatsReply")
2237         api.RegisterMessage((*WantIP4FibStats)(nil), "stats.WantIP4FibStats")
2238         api.RegisterMessage((*WantIP4FibStatsReply)(nil), "stats.WantIP4FibStatsReply")
2239         api.RegisterMessage((*WantIP6FibStats)(nil), "stats.WantIP6FibStats")
2240         api.RegisterMessage((*WantIP6FibStatsReply)(nil), "stats.WantIP6FibStatsReply")
2241         api.RegisterMessage((*WantIP4MfibStats)(nil), "stats.WantIP4MfibStats")
2242         api.RegisterMessage((*WantIP4MfibStatsReply)(nil), "stats.WantIP4MfibStatsReply")
2243         api.RegisterMessage((*WantIP6MfibStats)(nil), "stats.WantIP6MfibStats")
2244         api.RegisterMessage((*WantIP6MfibStatsReply)(nil), "stats.WantIP6MfibStatsReply")
2245         api.RegisterMessage((*WantIP4NbrStats)(nil), "stats.WantIP4NbrStats")
2246         api.RegisterMessage((*WantIP4NbrStatsReply)(nil), "stats.WantIP4NbrStatsReply")
2247         api.RegisterMessage((*WantIP6NbrStats)(nil), "stats.WantIP6NbrStats")
2248         api.RegisterMessage((*WantIP6NbrStatsReply)(nil), "stats.WantIP6NbrStatsReply")
2249         api.RegisterMessage((*VnetIP4FibCounters)(nil), "stats.VnetIP4FibCounters")
2250         api.RegisterMessage((*VnetIP4MfibCounters)(nil), "stats.VnetIP4MfibCounters")
2251         api.RegisterMessage((*VnetIP4NbrCounters)(nil), "stats.VnetIP4NbrCounters")
2252         api.RegisterMessage((*VnetIP6FibCounters)(nil), "stats.VnetIP6FibCounters")
2253         api.RegisterMessage((*VnetIP6MfibCounters)(nil), "stats.VnetIP6MfibCounters")
2254         api.RegisterMessage((*VnetIP6NbrCounters)(nil), "stats.VnetIP6NbrCounters")
2255         api.RegisterMessage((*VnetInterfaceSimpleCounters)(nil), "stats.VnetInterfaceSimpleCounters")
2256         api.RegisterMessage((*VnetInterfaceCombinedCounters)(nil), "stats.VnetInterfaceCombinedCounters")
2257         api.RegisterMessage((*VnetPerInterfaceSimpleCounters)(nil), "stats.VnetPerInterfaceSimpleCounters")
2258         api.RegisterMessage((*VnetPerInterfaceCombinedCounters)(nil), "stats.VnetPerInterfaceCombinedCounters")
2259         api.RegisterMessage((*VnetGetSummaryStats)(nil), "stats.VnetGetSummaryStats")
2260         api.RegisterMessage((*VnetGetSummaryStatsReply)(nil), "stats.VnetGetSummaryStatsReply")
2261         api.RegisterMessage((*StatsGetPollerDelay)(nil), "stats.StatsGetPollerDelay")
2262         api.RegisterMessage((*StatsGetPollerDelayReply)(nil), "stats.StatsGetPollerDelayReply")
2263         api.RegisterMessage((*WantUDPEncapStats)(nil), "stats.WantUDPEncapStats")
2264         api.RegisterMessage((*WantUDPEncapStatsReply)(nil), "stats.WantUDPEncapStatsReply")
2265         api.RegisterMessage((*VnetUDPEncapCounters)(nil), "stats.VnetUDPEncapCounters")
2266 }