+#if defined(GDCM_WORDS_BIGENDIAN) || defined(GDCM_FORCE_BIGENDIAN_EMULATION)
+
+ /// \todo FIXME : Right now, we only care of Pixels element
+ /// we should deal with *all* the BinEntries
+ /// Well, not really since we are not interpreting values read...
+
+ // 8 Bits Pixels *are* OB, 16 Bits Pixels *are* OW
+ // -value forced while Reading process-
+
+ //-->
+ // -->
+ // --> WARNING
+ // --> the following lines *looked* very clever,
+ // --> but they don't work on big endian processors.
+ // --> since I've no access for the moment to a big endian proc :-(
+ // --> I comment them out, to see the result on the dash board
+ // -->
+
+ // --> Revert to initial code : TestWriteSimple hangs on Darwin :-(
+ if (GetGroup() == 0x7fe0 && GetVR() == "OW")
+ {
+ uint16_t *binArea16 = (uint16_t*)binArea8;
+ binary_write (*fp, binArea16, lgr );
+ }
+ else
+ {
+ // For any other VR, BinEntry is re-written as-is
+ binary_write (*fp, binArea8, lgr );
+ }
+
+ //-->
+ // -->
+ // --> WARNING
+ // --> remove the following line, an uncomment the previous ones,
+ // --> if it doesn't work better
+ // -->
+ /*binary_write ( *fp, binArea8, lgr ); // Elem value*/
+
+#else
+ binary_write ( *fp, binArea8, lgr ); // Elem value
+#endif //GDCM_WORDS_BIGENDIAN
+
+ }
+ else
+ {
+ // nothing was loaded, but we need to skip space on disc
+
+ // --> WARNING : nothing is written;
+ // --> the initial data (on the the source image) is lost
+ // --> user is *not* informed !
+
+ fp->seekp(lgr, std::ios::cur);
+ }
+}
+
+/**
+ * \brief Sets the value (non string) of the current Dicom Header Entry