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

Constructor & Destructor Documentation

◆ KeyInfo() [1/2]

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

Definition at line 247 of file database.hpp.

247: raw_data(0xFFFFFFFF) {}

◆ KeyInfo() [2/2]

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

Definition at line 249 of file database.hpp.

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

Member Function Documentation

◆ GetDataSize()

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

Definition at line 272 of file database.hpp.

272{ return raw_data & 0x00FFFFFF; }

◆ GetNameLength()

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

Definition at line 266 of file database.hpp.

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

◆ GetNextKeyExist()

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

Definition at line 260 of file database.hpp.

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

◆ SetDataSize()

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

Definition at line 268 of file database.hpp.

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

◆ SetNameLength()

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

Definition at line 262 of file database.hpp.

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

◆ SetNextKeyExist()

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

Definition at line 256 of file database.hpp.

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

Field Documentation

◆ raw_data

uint32_t LibXR::DatabaseRawSequential::KeyInfo::raw_data

Definition at line 245 of file database.hpp.


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