GenericBuffer Class Reference

#include <genericBuffer.h>

Inheritance diagram for GenericBuffer:

Inheritance graph
[legend]

List of all members.

Public Member Functions

 GenericBuffer ()
 ~GenericBuffer ()
void push (Flit *f)
Flitpull ()
Flitpeek ()
uint get_occupancy (uint ch) const
void resize (uint vcs, uint buffer_size)
uint get_no_vcs () const
void change_pull_channel (uint ch)
void change_push_channel (uint ch)
uint get_pull_channel () const
uint get_push_channel () const
bool is_channel_full (uint ch) const
bool is_empty (uint ch) const
string toString () const
void got_credit (uint ch)
uint get_no_credits (uint ch) const
void set_no_credits (uint no)

Public Attributes

vector< deque< Flit * > > buffers
vector< int > next_port

Private Attributes

vector< int > credits
uint vcs
uint buffer_size
uint max_credits
uint pull_channel
uint push_channel


Detailed Description

=====================================================================================

Filename: genericbuffer.h

Description: implements a buffer component

Version: 1.0 Created: 02/20/2010 11:48:27 PM Revision: none Compiler: gcc

Author: Mitchelle Rasquinha (), mitchelle.rasquinha@gatech.edu Company: Georgia Institute of Technology

=====================================================================================

Definition at line 27 of file genericBuffer.h.


Constructor & Destructor Documentation

GenericBuffer::GenericBuffer (  ) 

=====================================================================================

Filename: genericbuffer.cc

Description: Implements the buffer class.

Version: 1.0 Created: 02/21/2010 12:55:17 AM Revision: none Compiler: gcc

Author: Mitchelle Rasquinha (), mitchelle.rasquinha@gatech.edu Company: Georgia Institute of Technology

=====================================================================================

Definition at line 23 of file genericBuffer.cc.

References pull_channel, and push_channel.

GenericBuffer::~GenericBuffer (  ) 

Definition at line 29 of file genericBuffer.cc.


Member Function Documentation

void GenericBuffer::change_pull_channel ( uint  ch  ) 

Definition at line 115 of file genericBuffer.cc.

References pull_channel, and vcs.

Referenced by GenericInterfacePhy::handle_tick_event(), and GenericInterfaceNB::handle_tick_event().

Here is the caller graph for this function:

void GenericBuffer::change_push_channel ( uint  ch  ) 

uint GenericBuffer::get_no_credits ( uint  ch  )  const

uint GenericBuffer::get_no_vcs (  )  const

Definition at line 107 of file genericBuffer.cc.

References buffers.

uint GenericBuffer::get_occupancy ( uint  ch  )  const [virtual]

Implements Buffer.

Definition at line 78 of file genericBuffer.cc.

References buffers.

Referenced by GenericInterfacePhy::handle_tick_event(), and GenericInterfaceNB::handle_tick_event().

Here is the caller graph for this function:

uint GenericBuffer::get_pull_channel (  )  const

Definition at line 131 of file genericBuffer.cc.

References pull_channel.

uint GenericBuffer::get_push_channel (  )  const

Definition at line 137 of file genericBuffer.cc.

References push_channel.

void GenericBuffer::got_credit ( uint  ch  ) 

bool GenericBuffer::is_channel_full ( uint  ch  )  const

Definition at line 143 of file genericBuffer.cc.

References buffer_size, and buffers.

bool GenericBuffer::is_empty ( uint  ch  )  const

Definition at line 150 of file genericBuffer.cc.

References buffers.

Flit * GenericBuffer::peek (  ) 

=== FUNCTION ====================================================================== Name: peek Description: Uses the pull channel. Make sure to set it before peek is called. Normal usage is to get a pointer to the head of the buffer without actually pulling it out from the buffer =====================================================================================

Definition at line 65 of file genericBuffer.cc.

References buffer_size, buffers, and pull_channel.

Referenced by GenericInterfacePhy::handle_tick_event().

Here is the caller graph for this function:

Flit * GenericBuffer::pull (  )  [virtual]

Implements Buffer.

Definition at line 42 of file genericBuffer.cc.

References buffer_size, buffers, and pull_channel.

Referenced by GenericInterfacePhy::handle_tick_event(), and GenericInterfaceNB::handle_tick_event().

Here is the caller graph for this function:

void GenericBuffer::push ( Flit f  )  [virtual]

void GenericBuffer::resize ( uint  vcs,
uint  buffer_size 
)

Definition at line 84 of file genericBuffer.cc.

References buffer_size, buffers, and vcs.

Referenced by GenericInterfacePhy::setup(), and GenericInterfaceNB::setup().

Here is the caller graph for this function:

void GenericBuffer::set_no_credits ( uint  no  ) 

string GenericBuffer::toString (  )  const

Definition at line 156 of file genericBuffer.cc.

References buffer_size, and buffers.

Referenced by GenericInterfacePhy::toString(), and GenericInterfaceNB::toString().

Here is the caller graph for this function:


Member Data Documentation

Definition at line 58 of file genericBuffer.h.

Referenced by is_channel_full(), peek(), pull(), push(), resize(), and toString().

vector< deque<Flit*> > GenericBuffer::buffers

vector< int > GenericBuffer::credits [private]

Definition at line 56 of file genericBuffer.h.

Definition at line 59 of file genericBuffer.h.

vector< int > GenericBuffer::next_port

Definition at line 51 of file genericBuffer.h.

Definition at line 60 of file genericBuffer.h.

Referenced by change_pull_channel(), GenericBuffer(), get_pull_channel(), peek(), and pull().

Definition at line 61 of file genericBuffer.h.

Referenced by change_push_channel(), GenericBuffer(), get_push_channel(), and push().

Definition at line 57 of file genericBuffer.h.

Referenced by change_pull_channel(), and resize().


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

Generated on Tue Oct 19 17:22:13 2010 for IRIS by  doxygen 1.5.8