Graphviz 12.1.0~dev.20240716.0947
Loading...
Searching...
No Matches
tclhandle.c File Reference
#include "tclhandle.h"
#include <cgraph/agxbuf.h>
#include <inttypes.h>
#include <stdint.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
Include dependency graph for tclhandle.c:

Go to the source code of this file.

Enumerations

enum  
 

Functions

static void tclhandleLinkInNewEntries (tblHeader_pt tblHdrPtr, uint64_t newIdx, uint64_t numEntries)
 
static void tclhandleExpandTable (tblHeader_pt tblHdrPtr, uint64_t neededIdx)
 
entryHeader_pt tclhandleAlloc (tblHeader_pt headerPtr, char **handle, uint64_t *entryIdxPtr)
 
tblHeader_pt tclhandleInit (char *prefix, uint64_t entrySize, uint64_t initEntries)
 
int tclhandleIndex (tblHeader_pt tblHdrPtr, char *handle, uint64_t *entryIdxPtr)
 
void * tclhandleXlateIndex (tblHeader_pt headerPtr, uint64_t entryIdx)
 
void * tclhandleXlate (tblHeader_pt tblHdrPtr, char *handle)
 
void * tclhandleFreeIndex (tblHeader_pt headerPtr, uint64_t entryIdx)
 
void * tclhandleFree (tblHeader_pt tblHdrPtr, char *handle)
 

Enumeration Type Documentation

◆ anonymous enum

anonymous enum

Definition at line 48 of file tclhandle.c.

Function Documentation

◆ tclhandleAlloc()

entryHeader_pt tclhandleAlloc ( tblHeader_pt  headerPtr,
char **  handle,
uint64_t *  entryIdxPtr 
)

Definition at line 123 of file tclhandle.c.

References agxbdisown(), agxbprint(), ALLOCATED_IDX, tblHeader_t::freeHeadIdx, entryHeader_t::freeLink, tblHeader_t::handleFormat, NULL_IDX, TBL_INDEX, tclhandleExpandTable(), and USER_AREA.

Referenced by vgpane().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ tclhandleExpandTable()

static void tclhandleExpandTable ( tblHeader_pt  tblHdrPtr,
uint64_t  neededIdx 
)
static

Definition at line 92 of file tclhandle.c.

References ALLOCATED_IDX, tblHeader_t::bodyPtr, tblHeader_t::entrySize, free(), malloc(), NULL_IDX, tblHeader_t::tableSize, and tclhandleLinkInNewEntries().

Referenced by tclhandleAlloc().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ tclhandleFree()

void * tclhandleFree ( tblHeader_pt  tblHdrPtr,
char *  handle 
)

Definition at line 293 of file tclhandle.c.

References NULL, tclhandleFreeIndex(), and tclhandleIndex().

Referenced by vgpanecmd().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ tclhandleFreeIndex()

void * tclhandleFreeIndex ( tblHeader_pt  headerPtr,
uint64_t  entryIdx 
)

Definition at line 261 of file tclhandle.c.

References ALLOCATED_IDX, tblHeader_t::bodyPtr, tblHeader_t::entrySize, tblHeader_t::freeHeadIdx, entryHeader_t::freeLink, HEADER_AREA, NULL, tblHeader_t::tableSize, TBL_INDEX, and USER_AREA.

Referenced by tclhandleFree().

Here is the caller graph for this function:

◆ tclhandleIndex()

int tclhandleIndex ( tblHeader_pt  tblHdrPtr,
char *  handle,
uint64_t *  entryIdxPtr 
)

Definition at line 195 of file tclhandle.c.

References tblHeader_t::handleFormat.

Referenced by tclhandleFree(), and tclhandleXlate().

Here is the caller graph for this function:

◆ tclhandleInit()

tblHeader_pt tclhandleInit ( char *  prefix,
uint64_t  entrySize,
uint64_t  initEntries 
)

Definition at line 158 of file tclhandle.c.

References tblHeader_t::bodyPtr, ENTRY_HEADER_SIZE, tblHeader_t::entrySize, tblHeader_t::freeHeadIdx, tblHeader_t::handleFormat, malloc(), NULL_IDX, prefix, ROUND_ENTRY_SIZE, tblHeader_t::tableSize, and tclhandleLinkInNewEntries().

Referenced by Tclpathplan_Init().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ tclhandleLinkInNewEntries()

static void tclhandleLinkInNewEntries ( tblHeader_pt  tblHdrPtr,
uint64_t  newIdx,
uint64_t  numEntries 
)
static

Definition at line 66 of file tclhandle.c.

References tblHeader_t::freeHeadIdx, entryHeader_t::freeLink, and TBL_INDEX.

Referenced by tclhandleExpandTable(), and tclhandleInit().

Here is the caller graph for this function:

◆ tclhandleXlate()

void * tclhandleXlate ( tblHeader_pt  tblHdrPtr,
char *  handle 
)

Definition at line 241 of file tclhandle.c.

References NULL, tclhandleIndex(), and tclhandleXlateIndex().

Referenced by vgpanecmd().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ tclhandleXlateIndex()

void * tclhandleXlateIndex ( tblHeader_pt  headerPtr,
uint64_t  entryIdx 
)

Definition at line 217 of file tclhandle.c.

References ALLOCATED_IDX, entryHeader_t::freeLink, NULL, tblHeader_t::tableSize, TBL_INDEX, and USER_AREA.

Referenced by tclhandleXlate().

Here is the caller graph for this function: