libxr  1.0
Want to be the best embedded framework
Loading...
Searching...
No Matches
LibXR::DatabaseRawSequential::KeyInfo Struct Reference

键信息结构,存储键的元数据 (Structure containing key metadata). More...

Public Member Functions

 KeyInfo (bool nextKey, uint8_t nameLength, uint32_t dataSize)
 
void SetNextKeyExist (bool value)
 
bool GetNextKeyExist () const
 
void SetNameLength (uint8_t len)
 
uint8_t GetNameLength () const
 
void SetDataSize (uint32_t size)
 
uint32_t GetDataSize () const
 

Data Fields

uint32_t raw_data
 

Detailed Description

键信息结构,存储键的元数据 (Structure containing key metadata).

Definition at line 240 of file database.hpp.

Constructor & Destructor Documentation

◆ KeyInfo() [1/2]

LibXR::DatabaseRawSequential::KeyInfo::KeyInfo ( )
inline

Definition at line 244 of file database.hpp.

244: raw_data(0xFFFFFFFF) {}

◆ KeyInfo() [2/2]

LibXR::DatabaseRawSequential::KeyInfo::KeyInfo ( bool nextKey,
uint8_t nameLength,
uint32_t dataSize )
inline

Definition at line 246 of file database.hpp.

246 : raw_data(0)
247 {
248 SetNextKeyExist(nextKey);
249 SetNameLength(nameLength);
250 SetDataSize(dataSize);
251 }

Member Function Documentation

◆ GetDataSize()

uint32_t LibXR::DatabaseRawSequential::KeyInfo::GetDataSize ( ) const
inline

Definition at line 269 of file database.hpp.

269{ return raw_data & 0x00FFFFFF; }

◆ GetNameLength()

uint8_t LibXR::DatabaseRawSequential::KeyInfo::GetNameLength ( ) const
inline

Definition at line 263 of file database.hpp.

263{ return (raw_data >> 24) & 0x7F; }

◆ GetNextKeyExist()

bool LibXR::DatabaseRawSequential::KeyInfo::GetNextKeyExist ( ) const
inline

Definition at line 257 of file database.hpp.

257{ return (raw_data >> 31) & 0x1; }

◆ SetDataSize()

void LibXR::DatabaseRawSequential::KeyInfo::SetDataSize ( uint32_t size)
inline

Definition at line 265 of file database.hpp.

266 {
267 raw_data = (raw_data & 0xFF000000) | (size & 0x00FFFFFF);
268 }

◆ SetNameLength()

void LibXR::DatabaseRawSequential::KeyInfo::SetNameLength ( uint8_t len)
inline

Definition at line 259 of file database.hpp.

260 {
261 raw_data = (raw_data & 0x80FFFFFF) | (static_cast<uint32_t>(len & 0x7F) << 24);
262 }

◆ SetNextKeyExist()

void LibXR::DatabaseRawSequential::KeyInfo::SetNextKeyExist ( bool value)
inline

Definition at line 253 of file database.hpp.

254 {
255 raw_data = (raw_data & 0x7FFFFFFF) | (static_cast<uint32_t>(value & 0x1) << 31);
256 }

Field Documentation

◆ raw_data

uint32_t LibXR::DatabaseRawSequential::KeyInfo::raw_data

Definition at line 242 of file database.hpp.


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