NDN-DPDK
High-Speed Named Data Networking Forwarder
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Macros | Functions | Variables
cs-arc.h File Reference
#include "cs-list.h"

Go to the source code of this file.

Macros

#define CsArc_MoveDir(src, dst)   (((uint16_t)(src) << 16) | ((uint16_t)(dst) << 0))
 
#define CsArc_MoveDirC(src, dst)   CsArc_MoveDir(CslDirect##src, CslDirect##dst)
 

Functions

void CsArc_Init (CsArc *arc, uint32_t c, uint32_t capB2)
 Initialize ARC. More...
 
void CsArc_Add (CsArc *arc, CsEntry *entry)
 Add or refresh an entry. More...
 
void CsArc_Remove (CsArc *arc, CsEntry *entry)
 Remove an entry. More...
 

Variables

const ptrdiff_t CsArc_ListOffsets_ []
 

Macro Definition Documentation

◆ CsArc_MoveDir

#define CsArc_MoveDir (   src,
  dst 
)    (((uint16_t)(src) << 16) | ((uint16_t)(dst) << 0))

◆ CsArc_MoveDirC

#define CsArc_MoveDirC (   src,
  dst 
)    CsArc_MoveDir(CslDirect##src, CslDirect##dst)

Function Documentation

◆ CsArc_Add()

void CsArc_Add ( CsArc arc,
CsEntry entry 
)

Add or refresh an entry.

Precondition
PCC entry is populated.
If entry is already in ARC, entry->kind reflects its old value.

◆ CsArc_Init()

void CsArc_Init ( CsArc arc,
uint32_t  c,
uint32_t  capB2 
)

Initialize ARC.

Parameters
cnominal capacity.
capB2extended capacity of B2 list, used in CsDisk integration.

◆ CsArc_Remove()

void CsArc_Remove ( CsArc arc,
CsEntry entry 
)

Remove an entry.

Variable Documentation

◆ CsArc_ListOffsets_

const ptrdiff_t CsArc_ListOffsets_[]
extern