Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #pragma once
00021
00022 #include <algorithm>
00023 #include <iostream>
00024 #include <vector>
00025 #include <algorithm>
00026
00027 namespace OpcUa
00028 {
00029
00030 inline void PrintBlob(const std::vector<char>& buf, std::size_t size)
00031 {
00032 size = std::min(size, buf.size());
00033 unsigned pos = 0;
00034 std::cout << "Data size: " << size << std::endl;
00035 while (pos < size)
00036 {
00037 if (pos)
00038 printf((pos % 16 == 0) ? "\n" : " ");
00039
00040 const char letter = buf[pos];
00041 printf("%02x", (unsigned)letter & 0x000000FF);
00042
00043 if (letter > ' ')
00044 std::cout << "(" << letter << ")";
00045 else
00046 std::cout << " ";
00047
00048 ++pos;
00049 }
00050
00051 std::cout << std::endl << std::flush;
00052 }
00053
00054 inline void PrintBlob(const std::vector<char>& buf)
00055 {
00056 PrintBlob(buf, buf.size());
00057 }
00058
00059
00060 }