Line data Source code
1 : #include <vrouter/flow_stats/flow_stats_collector.h> 2 : #include <pkt/flow_table.h> 3 : 4 0 : FlowExportInfo::FlowExportInfo() : 5 0 : flow_(), teardown_time_(0), last_modified_time_(0), 6 0 : bytes_(0), packets_(0), 7 0 : delete_enqueue_time_(0), evict_enqueue_time_(0), 8 0 : gen_id_(0), 9 0 : flow_handle_(FlowEntry::kInvalidFlowHandle) { 10 0 : } 11 : 12 0 : FlowExportInfo::FlowExportInfo(const FlowEntryPtr &fe) : 13 0 : flow_(fe), teardown_time_(0), last_modified_time_(0), 14 0 : bytes_(0), packets_(0), 15 0 : delete_enqueue_time_(0), evict_enqueue_time_(0), 16 0 : gen_id_(0), 17 0 : flow_handle_(FlowEntry::kInvalidFlowHandle) { 18 0 : } 19 : 20 0 : FlowExportInfo::FlowExportInfo(const FlowEntryPtr &fe, uint64_t setup_time) : 21 0 : flow_(fe), 22 0 : teardown_time_(0), last_modified_time_(setup_time), 23 0 : bytes_(0), packets_(0), 24 0 : delete_enqueue_time_(0), evict_enqueue_time_(0), 25 0 : gen_id_(0), 26 0 : flow_handle_(FlowEntry::kInvalidFlowHandle) { 27 0 : } 28 : 29 0 : FlowEntry* FlowExportInfo::reverse_flow() const { 30 0 : FlowEntry *rflow = NULL; 31 0 : if (flow_.get()) { 32 0 : rflow = flow_->reverse_flow_entry(); 33 : } 34 0 : return rflow; 35 : } 36 : 37 0 : void FlowExportInfo::CopyFlowInfo(FlowEntry *fe) { 38 0 : gen_id_ = fe->gen_id(); 39 0 : flow_handle_ = fe->flow_handle(); 40 0 : uuid_ = fe->uuid(); 41 0 : } 42 : 43 0 : void FlowExportInfo::ResetStats() { 44 0 : bytes_ = packets_ = 0; 45 0 : }