Blob Tlv0_2WireFormat::encodeInterest (const Interest& interest, size_t *signedPortionBeginOffset, size_t *signedPortionEndOffset) { if (!interest.getDidSetCanBePrefix_() && !didCanBePrefixWarning_) { printf ("WARNING: The default CanBePrefix will change. See Interest::setDefaultCanBePrefix() for details.\n"); didCanBePrefixWarning_ = true; } struct ndn_NameComponent nameComponents[100]; struct ndn_ExcludeEntry excludeEntries[100]; struct ndn_NameComponent keyNameComponents[100]; InterestLite interestLite (nameComponents, sizeof(nameComponents) / sizeof(nameComponents[0]), excludeEntries, sizeof(excludeEntries) / sizeof(excludeEntries[0]), keyNameComponents, sizeof(keyNameComponents) / sizeof(keyNameComponents[0])); interest.get(interestLite, *this); DynamicUInt8Vector output(256); ndn_Error error; size_t encodingLength; if ((error = Tlv0_2WireFormatLite::encodeInterest (interestLite, signedPortionBeginOffset, signedPortionEndOffset, DynamicUInt8ArrayLite::downCast(output), &encodingLength))) throw runtime_error(ndn_getErrorString(error)); return output.finish(encodingLength); }