OpenSDN source code
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
flow_export_info.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2015 Juniper Networks, Inc. All rights reserved.
3
*/
4
#ifndef __AGENT_FLOW_EXPORT_INFO_H__
5
#define __AGENT_FLOW_EXPORT_INFO_H__
6
7
#include <
pkt/flow_entry.h
>
8
#include <
filter/acl.h
>
9
10
class
FlowExportInfo
:
public
boost::intrusive::list_base_hook<> {
11
public
:
12
FlowExportInfo
();
13
FlowExportInfo
(
const
FlowEntryPtr
&fe, uint64_t setup_time);
14
FlowExportInfo
(
const
FlowEntryPtr
&fe);
15
~FlowExportInfo
() {}
16
17
FlowEntry
*
flow
()
const
{
return
flow_
.get(); }
18
FlowEntry
*
reverse_flow
()
const
;
19
uint64_t
teardown_time
()
const
{
return
teardown_time_
; }
20
void
set_teardown_time
(uint64_t time) {
teardown_time_
= time; }
21
uint64_t
last_modified_time
()
const
{
return
last_modified_time_
; }
22
void
set_last_modified_time
(uint64_t time) {
last_modified_time_
= time; }
23
24
uint64_t
bytes
()
const
{
return
bytes_
; }
25
void
set_bytes
(uint64_t value) {
bytes_
= value; }
26
uint64_t
packets
()
const
{
return
packets_
; }
27
void
set_packets
(uint64_t value) {
packets_
= value; }
28
29
void
set_delete_enqueue_time
(uint64_t value) {
delete_enqueue_time_
= value; }
30
uint64_t
delete_enqueue_time
()
const
{
return
delete_enqueue_time_
; }
31
void
set_evict_enqueue_time
(uint64_t value) {
evict_enqueue_time_
= value; }
32
uint64_t
evict_enqueue_time
()
const
{
return
evict_enqueue_time_
; }
33
34
uint8_t
gen_id
()
const
{
return
gen_id_
; }
35
void
set_gen_id
(uint8_t value) {
gen_id_
= value; }
36
uint32_t
flow_handle
()
const
{
return
flow_handle_
; }
37
void
set_flow_handle
(uint32_t value) {
flow_handle_
= value; }
38
const
boost::uuids::uuid
&
uuid
()
const
{
return
uuid_
; }
39
void
CopyFlowInfo
(
FlowEntry
*fe);
40
void
ResetStats
();
41
42
private
:
43
FlowEntryPtr
flow_
;
44
uint64_t
teardown_time_
;
45
uint64_t
last_modified_time_
;
//used for aging
46
uint64_t
bytes_
;
47
uint64_t
packets_
;
48
uint64_t
delete_enqueue_time_
;
49
uint64_t
evict_enqueue_time_
;
50
uint8_t
gen_id_
;
51
uint32_t
flow_handle_
;
52
boost::uuids::uuid
uuid_
;
53
};
54
55
typedef
boost::intrusive::list<FlowExportInfo>
FlowExportInfoList
;
56
#endif // __AGENT_FLOW_EXPORT_INFO_H__
FlowExportInfo::ResetStats
void ResetStats()
Definition:
flow_export_info.cc:43
FlowExportInfo::set_flow_handle
void set_flow_handle(uint32_t value)
Definition:
flow_export_info.h:37
FlowExportInfo::set_packets
void set_packets(uint64_t value)
Definition:
flow_export_info.h:27
FlowExportInfo::gen_id
uint8_t gen_id() const
Definition:
flow_export_info.h:34
FlowExportInfo::set_teardown_time
void set_teardown_time(uint64_t time)
Definition:
flow_export_info.h:20
FlowExportInfo::evict_enqueue_time
uint64_t evict_enqueue_time() const
Definition:
flow_export_info.h:32
FlowExportInfo::set_last_modified_time
void set_last_modified_time(uint64_t time)
Definition:
flow_export_info.h:22
FlowExportInfo
Definition:
flow_export_info.h:10
FlowExportInfoList
boost::intrusive::list< FlowExportInfo > FlowExportInfoList
Definition:
flow_export_info.h:55
FlowExportInfo::delete_enqueue_time_
uint64_t delete_enqueue_time_
Definition:
flow_export_info.h:48
FlowExportInfo::CopyFlowInfo
void CopyFlowInfo(FlowEntry *fe)
Definition:
flow_export_info.cc:37
uuid
boost::uuids::uuid uuid
Definition:
vnsw/agent/filter/policy.h:11
FlowExportInfo::last_modified_time
uint64_t last_modified_time() const
Definition:
flow_export_info.h:21
FlowExportInfo::set_evict_enqueue_time
void set_evict_enqueue_time(uint64_t value)
Definition:
flow_export_info.h:31
flow_entry.h
FlowExportInfo::bytes_
uint64_t bytes_
Definition:
flow_export_info.h:46
acl.h
FlowExportInfo::packets_
uint64_t packets_
Definition:
flow_export_info.h:47
FlowExportInfo::teardown_time_
uint64_t teardown_time_
Definition:
flow_export_info.h:44
FlowExportInfo::flow
FlowEntry * flow() const
Definition:
flow_export_info.h:17
FlowEntry
Definition:
flow_entry.h:460
FlowExportInfo::flow_handle_
uint32_t flow_handle_
Definition:
flow_export_info.h:51
FlowExportInfo::uuid
const boost::uuids::uuid & uuid() const
Definition:
flow_export_info.h:38
FlowExportInfo::last_modified_time_
uint64_t last_modified_time_
Definition:
flow_export_info.h:45
FlowExportInfo::gen_id_
uint8_t gen_id_
Definition:
flow_export_info.h:50
FlowExportInfo::flow_
FlowEntryPtr flow_
Definition:
flow_export_info.h:43
FlowExportInfo::set_gen_id
void set_gen_id(uint8_t value)
Definition:
flow_export_info.h:35
FlowExportInfo::delete_enqueue_time
uint64_t delete_enqueue_time() const
Definition:
flow_export_info.h:30
FlowExportInfo::FlowExportInfo
FlowExportInfo()
Definition:
flow_export_info.cc:4
FlowExportInfo::uuid_
boost::uuids::uuid uuid_
Definition:
flow_export_info.h:52
FlowExportInfo::flow_handle
uint32_t flow_handle() const
Definition:
flow_export_info.h:36
FlowExportInfo::evict_enqueue_time_
uint64_t evict_enqueue_time_
Definition:
flow_export_info.h:49
FlowExportInfo::packets
uint64_t packets() const
Definition:
flow_export_info.h:26
FlowExportInfo::set_bytes
void set_bytes(uint64_t value)
Definition:
flow_export_info.h:25
FlowExportInfo::bytes
uint64_t bytes() const
Definition:
flow_export_info.h:24
FlowExportInfo::teardown_time
uint64_t teardown_time() const
Definition:
flow_export_info.h:19
FlowExportInfo::~FlowExportInfo
~FlowExportInfo()
Definition:
flow_export_info.h:15
FlowExportInfo::reverse_flow
FlowEntry * reverse_flow() const
Definition:
flow_export_info.cc:29
FlowEntryPtr
boost::intrusive_ptr< FlowEntry > FlowEntryPtr
Definition:
flow_entry.h:125
FlowExportInfo::set_delete_enqueue_time
void set_delete_enqueue_time(uint64_t value)
Definition:
flow_export_info.h:29
contrail
controller
src
vnsw
agent
vrouter
flow_stats
flow_export_info.h
Generated by
1.8.5