Hi Luis,
do the following:
#include <TMessage.h>
class MyMessage : public TMessage {
public:
MyMessage(void *buf, Int_t len) : TMessage(buf, len) { }
};
for(Int_t i = 1; i < size; i++) {
int lg;
OOMPI_COMM_WORLD[i].Recv(lg); //buffer length
char *kg = new char [lg]; //buffer
OOMPI_COMM_WORLD[i].Recv(kg,lg);
msg = new MyMessage(kg, lg);
TH1D *h1s = (TH1D *) msg->ReadObject(msg->GetClass());
h1s->Draw();
}
MyMessage is needed since the TMessage(void*,Int_t) method is protected.
Cheers, Fons.