Ejemplo n.º 1
0
uint32_t QPACKHeaderTable::toInternal(
    uint32_t externalIndex, uint32_t base) const {
  if (base > 0) {
    uint32_t absIndex = base - externalIndex + 1;
    externalIndex = absoluteToRelative(absIndex);
  }
  return HeaderTable::toInternal(externalIndex);
}
Ejemplo n.º 2
0
/*4. Aufgabe: Ausgabe der freien Blöcke ######################################*/
void printBlock(memBlock *p) {
    /*Gibt info zu einem Block*/
    if (p != NULL) {
        printf("|%8d|%8d|%8d|%8d|%8d|%8d|%8d|%8d|",
                absoluteToRelative(p), /*Relative Adr. des Pointers*/
                p, /*Absolute Adr. des Pointers*/
                sizeof (*p), /*Block Grösse(nechste Adresse minus letzte) ((int)(p+1))-((int)p) oder memPool anstadt p*/
                absoluteToRelative(p + 1), /*Relative Adr. des nechste Blocks*/
                p + 1, /*Absolute Adr. des nechste Blocks*/
                p->size - (sizeof (*p)), /*Benutzbare Grösse ((int)(p+1))-((int)p) oder memPool anstadt p*/
                p->size, /*Gesamt Grösse*/
                p->next /*Nechster memBlock*/
                );
        if (p->next == MAGIC_VALUE) printf(" Used|\n");
        else printf(" Free|\n");
    } else printf("Ungültiger Pointer!\n");
}
Ejemplo n.º 3
0
// Converts an absolute index to an array index in [0..table_.size() - 1]
uint32_t QPACKHeaderTable::absoluteToInternal(
  uint32_t absoluteIndex) const {
  return toInternal(absoluteToRelative(absoluteIndex), 0);
}