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 244 of file database.hpp.

Constructor & Destructor Documentation

◆ KeyInfo() [1/2]

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

Definition at line 248 of file database.hpp.

248: raw_data(0xFFFFFFFF) {}

◆ KeyInfo() [2/2]

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

Definition at line 250 of file database.hpp.

250 : raw_data(0)
251 {
252 SetNextKeyExist(nextKey);
253 SetNameLength(nameLength);
254 SetDataSize(dataSize);
255 }

Member Function Documentation

◆ GetDataSize()

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

Definition at line 273 of file database.hpp.

273{ return raw_data & 0x00FFFFFF; }

◆ GetNameLength()

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

Definition at line 267 of file database.hpp.

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

◆ GetNextKeyExist()

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

Definition at line 261 of file database.hpp.

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

◆ SetDataSize()

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

Definition at line 269 of file database.hpp.

270 {
271 raw_data = (raw_data & 0xFF000000) | (size & 0x00FFFFFF);
272 }

◆ SetNameLength()

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

Definition at line 263 of file database.hpp.

264 {
265 raw_data = (raw_data & 0x80FFFFFF) | (static_cast<uint32_t>(len & 0x7F) << 24);
266 }

◆ SetNextKeyExist()

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

Definition at line 257 of file database.hpp.

258 {
259 raw_data = (raw_data & 0x7FFFFFFF) | (static_cast<uint32_t>(value & 0x1) << 31);
260 }

Field Documentation

◆ raw_data

uint32_t LibXR::DatabaseRawSequential::KeyInfo::raw_data

Definition at line 246 of file database.hpp.


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