if (Layout::primaryNode()) bin.writeArray((const char *)&(d.elem()),
const int iend = Layout::outerSitesOnNode(); for(int site=0; site < iend; ++site) { int i = Layout::linearSiteIndex(site); bin.writeArray((const char*)&(d.elem(i)),
void write(BinaryWriter& bin, const OScalar<T>& d){  if (Layout::primaryNode())     bin.writeArray((const char *)&(d.elem()), 		   sizeof(typename WordType<T>::Type_t), 		   sizeof(T) / sizeof(typename WordType<T>::Type_t));}