tesseract  5.0.0
tesseract::ADAPT_CLASS_STRUCT Struct Reference

#include <adaptive.h>

Public Member Functions

 ADAPT_CLASS_STRUCT ()
 
 ~ADAPT_CLASS_STRUCT ()
 

Public Attributes

uint8_t NumPermConfigs
 
uint8_t MaxNumTimesSeen
 
BIT_VECTOR PermProtos
 
BIT_VECTOR PermConfigs
 
LIST TempProtos
 
ADAPTED_CONFIG Config [MAX_NUM_CONFIGS]
 

Detailed Description

Definition at line 55 of file adaptive.h.

Constructor & Destructor Documentation

◆ ADAPT_CLASS_STRUCT()

tesseract::ADAPT_CLASS_STRUCT::ADAPT_CLASS_STRUCT ( )

Definition at line 62 of file adaptive.cpp.

62  {
63  NumPermConfigs = 0;
64  MaxNumTimesSeen = 0;
66 
67  PermProtos = NewBitVector(MAX_NUM_PROTOS);
68  PermConfigs = NewBitVector(MAX_NUM_CONFIGS);
69  zero_all_bits(PermProtos, WordsInVectorOfSize(MAX_NUM_PROTOS));
70  zero_all_bits(PermConfigs, WordsInVectorOfSize(MAX_NUM_CONFIGS));
71 
72  for (int i = 0; i < MAX_NUM_CONFIGS; i++) {
73  TempConfigFor(this, i) = nullptr;
74  }
75 }
#define TempConfigFor(Class, ConfigId)
Definition: adaptive.h:91
#define MAX_NUM_PROTOS
Definition: intproto.h:48
#define MAX_NUM_CONFIGS
Definition: intproto.h:47
#define NIL_LIST
Definition: oldlist.h:75

◆ ~ADAPT_CLASS_STRUCT()

tesseract::ADAPT_CLASS_STRUCT::~ADAPT_CLASS_STRUCT ( )

Definition at line 77 of file adaptive.cpp.

77  {
78  for (int i = 0; i < MAX_NUM_CONFIGS; i++) {
79  if (ConfigIsPermanent(this, i) && PermConfigFor(this, i) != nullptr) {
80  delete PermConfigFor(this, i);
81  } else if (!ConfigIsPermanent(this, i) && TempConfigFor(this, i) != nullptr) {
82  delete TempConfigFor(this, i);
83  }
84  }
85  FreeBitVector(PermProtos);
86  FreeBitVector(PermConfigs);
87  auto list = TempProtos;
88  while (list != nullptr) {
89  delete reinterpret_cast<TEMP_PROTO_STRUCT *>(list->node);
90  list = pop(list);
91  }
92 }
#define ConfigIsPermanent(Class, ConfigId)
Definition: adaptive.h:85
#define PermConfigFor(Class, ConfigId)
Definition: adaptive.h:93
LIST pop(LIST list)
Definition: oldlist.cpp:166

Member Data Documentation

◆ Config

ADAPTED_CONFIG tesseract::ADAPT_CLASS_STRUCT::Config[MAX_NUM_CONFIGS]

Definition at line 64 of file adaptive.h.

◆ MaxNumTimesSeen

uint8_t tesseract::ADAPT_CLASS_STRUCT::MaxNumTimesSeen

Definition at line 59 of file adaptive.h.

◆ NumPermConfigs

uint8_t tesseract::ADAPT_CLASS_STRUCT::NumPermConfigs

Definition at line 58 of file adaptive.h.

◆ PermConfigs

BIT_VECTOR tesseract::ADAPT_CLASS_STRUCT::PermConfigs

Definition at line 62 of file adaptive.h.

◆ PermProtos

BIT_VECTOR tesseract::ADAPT_CLASS_STRUCT::PermProtos

Definition at line 61 of file adaptive.h.

◆ TempProtos

LIST tesseract::ADAPT_CLASS_STRUCT::TempProtos

Definition at line 63 of file adaptive.h.


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