NS-3 based Named Data Networking (NDN) simulator
ndnSIM 2.5: NDN, CCN, CCNx, content centric networks
API Documentation
ndn::name Namespace Reference

Classes

class  Component
 Represents a name component. More...
 

Enumerations

enum  UriFormat {
  UriFormat::CANONICAL, UriFormat::ALTERNATE, UriFormat::ENV_OR_CANONICAL, UriFormat::ENV_OR_ALTERNATE,
  UriFormat::DEFAULT = ENV_OR_ALTERNATE
}
 Format used for the URI representation of a name. More...
 
enum  Convention { Convention::MARKER = 1 << 0, Convention::TYPED = 1 << 1, Convention::EITHER = MARKER | TYPED }
 Identify a style of NDN Naming Conventions. More...
 
enum  : uint8_t {
  SEGMENT_MARKER = 0x00, SEGMENT_OFFSET_MARKER = 0xFB, VERSION_MARKER = 0xFD, TIMESTAMP_MARKER = 0xFC,
  SEQUENCE_NUMBER_MARKER = 0xFE
}
 Name component markers defined in Naming Conventions revision 1 (obsolete). More...
 

Functions

Convention getConventionEncoding ()
 Return which Naming Conventions style to use while encoding. More...
 
void setConventionEncoding (Convention convention)
 Set which Naming Conventions style to use while encoding. More...
 
Convention getConventionDecoding ()
 Return which Naming Conventions style(s) to accept while decoding. More...
 
void setConventionDecoding (Convention convention)
 Set which Naming Conventions style(s) to accept while decoding. More...
 
static bool canDecodeMarkerConvention ()
 
static bool canDecodeTypedConvention ()
 
static bool wantAltUri (UriFormat format)
 
static Component parseUriEscapedValue (uint32_t type, const char *input, size_t len)
 
 NDN_CXX_DEFINE_WIRE_ENCODE_INSTANTIATIONS (Component)
 
 NDN_CXX_DECLARE_WIRE_ENCODE_INSTANTIATIONS (Component)
 

Variables

 WireEncodable< Component >
 
 WireEncodableWithEncodingBuffer< Component >
 
 WireDecodable< Component >
 
static Convention g_conventionEncoding = Convention::TYPED
 
static Convention g_conventionDecoding = Convention::EITHER
 

Enumeration Type Documentation

◆ UriFormat

enum ndn::name::UriFormat
strong

Format used for the URI representation of a name.

See also
http://named-data.net/doc/NDN-packet-spec/current/name.html#ndn-uri-scheme
Enumerator
CANONICAL 

Always use <type-number>=<percent-encoded-value> format.

ALTERNATE 

Always prefer the alternate format when available.

ENV_OR_CANONICAL 

Same as UriFormat::CANONICAL, unless NDN_NAME_ALT_URI environment variable is set to '1'.

ENV_OR_ALTERNATE 

Same as UriFormat::ALTERNATE, unless NDN_NAME_ALT_URI environment variable is set to '0'.

DEFAULT 

Use the library's default format; currently equivalent to UriFormat::ENV_OR_ALTERNATE.

Definition at line 36 of file name-component.hpp.

◆ Convention

enum ndn::name::Convention
strong

Identify a style of NDN Naming Conventions.

See also
https://named-data.net/publications/techreports/ndn-tr-22-3-ndn-memo-naming-conventions/
Enumerator
MARKER 

Component markers (revision 1)

TYPED 

Typed name components (revision 3)

EITHER 

Definition at line 52 of file name-component.hpp.

◆ anonymous enum

anonymous enum : uint8_t

Name component markers defined in Naming Conventions revision 1 (obsolete).

See also
https://named-data.net/publications/techreports/ndn-tr-22-ndn-memo-naming-conventions/
Enumerator
SEGMENT_MARKER 
SEGMENT_OFFSET_MARKER 
VERSION_MARKER 
TIMESTAMP_MARKER 
SEQUENCE_NUMBER_MARKER 

Definition at line 61 of file name-component.hpp.

Function Documentation

◆ getConventionEncoding()

Convention ndn::name::getConventionEncoding ( )

Return which Naming Conventions style to use while encoding.

The library default is Convention::TYPED.

Definition at line 49 of file name-component.cpp.

References g_conventionEncoding.

◆ setConventionEncoding()

void ndn::name::setConventionEncoding ( Convention  convention)

Set which Naming Conventions style to use while encoding.

Parameters
conventioneither Convention::MARKER or Convention::TYPED.

Definition at line 55 of file name-component.cpp.

References MARKER, NDN_THROW, and TYPED.

◆ getConventionDecoding()

Convention ndn::name::getConventionDecoding ( )

Return which Naming Conventions style(s) to accept while decoding.

The current library default is Convention::EITHER, but this will change in the future.

Definition at line 68 of file name-component.cpp.

References g_conventionDecoding.

◆ setConventionDecoding()

void ndn::name::setConventionDecoding ( Convention  convention)

Set which Naming Conventions style(s) to accept while decoding.

Parameters
conventionConvention::MARKER or Convention::TYPED accepts the specified style only; Convention::EITHER accepts either.

Definition at line 74 of file name-component.cpp.

◆ canDecodeMarkerConvention()

◆ canDecodeTypedConvention()

◆ wantAltUri()

static bool ndn::name::wantAltUri ( UriFormat  format)
static

◆ parseUriEscapedValue()

static Component ndn::name::parseUriEscapedValue ( uint32_t  type,
const char *  input,
size_t  len 
)
static

◆ NDN_CXX_DEFINE_WIRE_ENCODE_INSTANTIATIONS()

ndn::name::NDN_CXX_DEFINE_WIRE_ENCODE_INSTANTIATIONS ( Component  )

◆ NDN_CXX_DECLARE_WIRE_ENCODE_INSTANTIATIONS()

ndn::name::NDN_CXX_DECLARE_WIRE_ENCODE_INSTANTIATIONS ( Component  )

Variable Documentation

◆ WireEncodable< Component >

ndn::name::WireEncodable< Component >

Definition at line 39 of file name-component.cpp.

◆ WireEncodableWithEncodingBuffer< Component >

ndn::name::WireEncodableWithEncodingBuffer< Component >

Definition at line 40 of file name-component.cpp.

◆ WireDecodable< Component >

ndn::name::WireDecodable< Component >

Definition at line 41 of file name-component.cpp.

◆ g_conventionEncoding

Convention ndn::name::g_conventionEncoding = Convention::TYPED
static

Definition at line 45 of file name-component.cpp.

Referenced by getConventionEncoding().

◆ g_conventionDecoding

Convention ndn::name::g_conventionDecoding = Convention::EITHER
static

Definition at line 46 of file name-component.cpp.

Referenced by getConventionDecoding().