Something maybe off topic, but I'm interested in view the memory as an image.
I'm mainly developing image processing algorithm, such as OpenCV's cv::Mat.
Is it a memory pointer? If a pointer is present then the pretty printer can handle this memory. TCP connection will be significantly slower, do you want to process the data stream through wxwidget to display it?
No, it is not a memory pointer, it is just a normal variable. Let me explain below:
There are mainly 3 parts, each part has a seperate process.
The first part is the debugee, where the cv::Mat resides. It is just a normal variable which has the type cv::Mat.
The second part is the GDB, where I can run the Python pretty printer to fetch the debugee's memory, the memory is usually huge, for example, a 1000*1000 pixel image, one byte for each pixel, then it is 1M bytes.
The third part is the Code::Blocks or the debugger plugin, which communicates with GDB by pipes(stderr, stdout, stdin).
I would like the show the image in the debugger plugin, so I need to find a way to pass the huge memory(1M bytes in my example) from the GDB to Code::Blocks. I'm not sure it is OK to through the command pipes, I think this will pollute the norman command line based communication. So, I would find a way such as using TCP.
BTW: the reason I would like to show the image in Code::Blocks' process is that I can show the image in GDB's process(by using the Python's GUI), if GDB is running, those GUI will hang.