#include <stx_Cache.h>


Definition at line 80 of file stx_Cache.h.
Public Member Functions | |
| stx_CacheVec () | |
| ~stx_CacheVec () | |
| stx_CacheEl * | Get (stx_CacheKey_t a_key) |
| void | Insert (stx_CacheEl *a_elem_p) |
| void | RemoveEl (stx_CacheEl *a_elem_p) |
| void | CleanUp () |
| void | CleanUpAndNotify () |
Public Attributes | |
| log_CLASSID_m | |
| stx_CacheVec::stx_CacheVec | ( | ) | [inline] |
| stx_CacheVec::~stx_CacheVec | ( | ) | [inline] |
| stx_CacheEl * stx_CacheVec::Get | ( | stx_CacheKey_t | a_key | ) |
Definition at line 48 of file stx_Cache.cpp.
References NULL.
Referenced by i_FSC_i::CompleteMigration(), fsc_FileLocStorage::Insert(), and i_FSC_i::InsertSplitFromFRIBlock().
00048 { 00049 // log_FUNC_m(Get); 00050 00051 register stx_CacheEl* *ip = &(*begin()); 00052 register stx_CacheEl* *ep = &(*end()); // addres of past the end 00053 for (; ip < ep; ip++) { 00054 if ((*ip)->m_cacheKey == a_key) { 00055 return *ip; 00056 } 00057 } 00058 return NULL; 00059 }

| void stx_CacheVec::Insert | ( | stx_CacheEl * | a_elem_p | ) | [inline] |
Definition at line 88 of file stx_Cache.h.
Referenced by fsc_FileLocStorage::Insert(), and i_FSC_i::InsertSplitFromFRIBlock().

| void stx_CacheVec::RemoveEl | ( | stx_CacheEl * | a_elem_p | ) |
Definition at line 84 of file stx_Cache.cpp.
Referenced by i_FSC_i::CompleteMigration(), and i_FSC_i::InsertSplitFromFRIBlock().
00084 { 00085 stx_CacheEl* *ip = &(*begin()); 00086 stx_CacheEl* *ep = &(*end()); // addres of past the end 00087 for (; ip < ep; ip++) { 00088 if ((*ip) == a_elem_p) { // check if point to same object 00089 // log_FUNC_m(RemoveEl(stx_CacheEl*)); 00090 // log_DBG_m(dbg_DETAIL, " remove EL p= " << a_elem_p 00091 // << " key = " << a_elem_p->GetCacheKey()); 00092 *ip = *--ep; // overwrite element with last one 00093 pop_back(); // remove last 00094 } 00095 } 00096 }

| void stx_CacheVec::CleanUp | ( | ) |
Definition at line 100 of file stx_Cache.cpp.
References dbg_DETAIL, log_DBG_m, log_FUNC_m, and NULL.
Referenced by stx_CacheArray< _MaxCacheSize >::CleanUp(), and stx_Cache::CleanUp().
00100 { 00101 // log_FUNC_m(CleanUp); 00102 stx_CacheEl* *ip = &(*begin()); 00103 stx_CacheEl* *ep = &(*end()); // addres of past the end 00104 for (; ip < ep; ip++) { 00105 if (*ip != NULL) { 00106 //log_DBG_m(dbg_DETAIL, " remove EL p= " << *ip 00107 // << " key = " << (*ip)->GetCacheKey()); 00108 delete *ip; 00109 } 00110 else { 00111 log_FUNC_m(CleanUp); 00112 log_DBG_m(dbg_DETAIL, "Point to NULL. ip: " << ip); 00113 } 00114 } 00115 clear(); 00116 }

| void stx_CacheVec::CleanUpAndNotify | ( | ) |
Definition at line 120 of file stx_Cache.cpp.
References log_FUNC_m, log_WRN_m, and NULL.
Referenced by stx_CacheArray< _MaxCacheSize >::CleanUpAndNotify().
00120 { 00121 // log_FUNC_m(CleanUpAndNotify); 00122 stx_CacheEl* *ip = &(*begin()); 00123 stx_CacheEl* *ep = &(*end()); // addres of past the end 00124 for (; ip < ep; ip++) { 00125 if (*ip != NULL) { 00126 (*ip)->RemoveNotification(); 00127 delete *ip; 00128 } 00129 else { 00130 log_FUNC_m(CleanUpAndNotify); 00131 log_WRN_m("Point to NULL. STRANGE!"); 00132 } 00133 } 00134 clear(); 00135 }

Definition at line 96 of file stx_Cache.h.
1.5.6