esp8266ndn
NDN Arduino library for ESP8266 and more
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Namespaces | Classes | Typedefs | Functions
ndnph::tlv Namespace Reference

Namespaces

 detail
 

Classes

class  NNI
 NonNegativeInteger encoding. More...
 
class  NniElement
 Encode to a TLV element where TLV-VALUE is a NonNegativeInteger. More...
 
class  Value
 A sequence of bytes, usually TLV-VALUE. More...
 

Typedefs

using NNI1 = detail::NNIValue< uint8_t >
 1-byte number encoding. More...
 
using NNI2 = detail::NNIValue< uint16_t >
 2-byte number encoding. More...
 
using NNI4 = detail::NNIValue< uint32_t >
 4-byte number encoding. More...
 
using NNI8 = detail::NNIValue< uint64_t >
 8-byte number encoding. More...
 

Functions

bool operator== (const Value &lhs, const Value &rhs)
 
constexpr size_t sizeofVarNum (uint32_t n)
 Compute size of VAR-NUMBER. More...
 
void writeVarNum (uint8_t *room, uint32_t n)
 Write VAR-NUMBER. More...
 
int readVarNum (const uint8_t *input, size_t size, uint32_t &n)
 Read VAR-NUMBER. More...
 

Typedef Documentation

◆ NNI1

using ndnph::tlv::NNI1 = typedef detail::NNIValue<uint8_t>

1-byte number encoding.

◆ NNI2

using ndnph::tlv::NNI2 = typedef detail::NNIValue<uint16_t>

2-byte number encoding.

◆ NNI4

using ndnph::tlv::NNI4 = typedef detail::NNIValue<uint32_t>

4-byte number encoding.

◆ NNI8

using ndnph::tlv::NNI8 = typedef detail::NNIValue<uint64_t>

8-byte number encoding.

Function Documentation

◆ operator==()

bool ndnph::tlv::operator== ( const Value lhs,
const Value rhs 
)
inline

◆ readVarNum()

int ndnph::tlv::readVarNum ( const uint8_t *  input,
size_t  size,
uint32_t &  n 
)
inline

Read VAR-NUMBER.

Returns
consumed bytes, or 0 upon error.

◆ sizeofVarNum()

constexpr size_t ndnph::tlv::sizeofVarNum ( uint32_t  n)
constexpr

Compute size of VAR-NUMBER.

◆ writeVarNum()

void ndnph::tlv::writeVarNum ( uint8_t *  room,
uint32_t  n 
)
inline

Write VAR-NUMBER.