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

Constructor & Destructor Documentation

◆ KeyInfo() [1/2]

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

Definition at line 205 of file database.hpp.

205: raw_data(0xFFFFFFFF) {}

◆ KeyInfo() [2/2]

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

Definition at line 207 of file database.hpp.

208 {
209 raw_data = 0;
210 SetNextKeyExist(nextKey);
211 SetNameLength(nameLength);
212 SetDataSize(dataSize);
213 }

Member Function Documentation

◆ GetDataSize()

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

Definition at line 231 of file database.hpp.

231{ return raw_data & 0x00FFFFFF; }

◆ GetNameLength()

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

Definition at line 225 of file database.hpp.

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

◆ GetNextKeyExist()

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

Definition at line 219 of file database.hpp.

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

◆ SetDataSize()

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

Definition at line 227 of file database.hpp.

228 {
229 raw_data = (raw_data & 0xFF000000) | (size & 0x00FFFFFF);
230 }

◆ SetNameLength()

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

Definition at line 221 of file database.hpp.

222 {
223 raw_data = (raw_data & 0x80FFFFFF) | (uint32_t(len & 0x7F) << 24);
224 }

◆ SetNextKeyExist()

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

Definition at line 215 of file database.hpp.

216 {
217 raw_data = (raw_data & 0x7FFFFFFF) | (uint32_t(value & 0x1) << 31);
218 }

Field Documentation

◆ raw_data

uint32_t LibXR::DatabaseRawSequential::KeyInfo::raw_data

Definition at line 203 of file database.hpp.


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