ngscopeclient 0.1-dev+51fbda87c
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
PacketManager Class Reference

Keeps track of packetized data history from a single protocol analyzer filter. More...

#include <PacketManager.h>

Collaboration diagram for PacketManager:
Collaboration graph
[legend]

Public Member Functions

 PacketManager (PacketDecoder *pd, Session &session)
 
void Update ()
 Handle newly arrived waveform data (may be a change to parameters or a freshly arrived waveform)
 
void RemoveHistoryFrom (TimePoint timestamp)
 Removes all history from the specified timestamp.
 
std::recursive_mutex & GetMutex ()
 
const std::map< TimePoint, std::vector< Packet * > > & GetPackets ()
 
const std::vector< Packet * > & GetChildPackets (Packet *pack)
 
const std::map< TimePoint, std::vector< Packet * > > & GetFilteredPackets ()
 
const std::vector< Packet * > & GetFilteredChildPackets (Packet *pack)
 
void SetDisplayFilter (std::shared_ptr< ProtocolDisplayFilter > filter)
 Sets the current filter expression.
 
void FilterPackets ()
 Run the filter expression against the packets.
 
bool IsChildOpen (Packet *pack)
 
void SetChildOpen (Packet *pack, bool open)
 
std::vector< RowData > & GetRows ()
 
void OnMarkerChanged ()
 

Protected Member Functions

void RemoveChildHistoryFrom (Packet *pack)
 
void RefreshRows ()
 Update the list of rows being displayed.
 

Protected Attributes

Sessionm_session
 Parent session object.
 
std::recursive_mutex m_mutex
 Mutex controlling access to m_packets.
 
PacketDecoderm_filter
 The filter we're managing.
 
std::map< TimePoint, std::vector< Packet * > > m_packets
 Our saved packet data.
 
std::map< Packet *, std::vector< Packet * > > m_childPackets
 Merged child packets.
 
std::map< TimePoint, std::vector< Packet * > > m_filteredPackets
 Subset of m_packets that passed the current filter expression.
 
std::map< Packet *, std::vector< Packet * > > m_filteredChildPackets
 Subset of m_filteredChildPackets that passed the current filter expression.
 
WaveformCacheKey m_cachekey
 Cache key for the current waveform.
 
std::shared_ptr< ProtocolDisplayFilterm_filterExpression
 Current filter expression.
 
std::vector< RowDatam_rows
 The set of rows that are to be displayed, based on current tree expansion and filter state.
 
std::map< Packet *, bool > m_lastChildOpen
 Map of packets to child-open flags from last frame.
 

Detailed Description

Keeps track of packetized data history from a single protocol analyzer filter.


The documentation for this class was generated from the following files: