void MarkupReader::describeBlob(const String blobName, nw::Pointer blob, unsigned int blobSize) { Tag* child = this->parentTag->getChildWithName(blobName); if(child != NULL) { if(child->hasChildren()) { Tag* encodingTag = child->getChildWithName(N0Slib_BinaryToTextEncoding_EncodingTagName); Tag* valueTag = child->getChildWithName(N0Slib_BinaryToTextEncoding_ValueTagName); if(encodingTag != NULL && valueTag != NULL) { String encoding = encodingTag->getValue(); if(encoding == N0Slib_BinaryToTextEncoding_Base64) blob = valueTag->getBase64Value(); else if(encoding == N0Slib_BinaryToTextEncoding_Base95) std::cout << "Base95 not implemented, yet" << std::endl; else if(encoding == N0Slib_BinaryToTextEncoding_Hexadecimal) blob = valueTag->getHexValue(); else std::cout << "Unkown encoding: " << encoding << std::endl; } else { std::cout << "Warning: Broken Blob: EncodingTag or ValueTag not specified, trying base64" << std::endl; } } else { blob = child->getBase64Value(); } } }