void *src = (void *)&(field->elem(Layout::linearSiteIndex(coord))); memcpy(buf,src,sizeof(T));
void *dest = (void *)&(field->elem(Layout::linearSiteIndex(coord))); memcpy(dest,buf,sizeof(T));
template<class T> void QDPFactoryPut(char *buf, const int crd[], void *arg){  /* Translate arg */  T *field = (T *)arg;  /* We expect the data belongs to our node */  multi1d<int> coord(Nd);  coord = crd;  if (Layout::nodeNumber(coord) != Layout::nodeNumber())  {    buf = '\0';    return;  }  void *src = (void *)&(field->elem(Layout::linearSiteIndex(coord)));  memcpy(buf,src,sizeof(T));}