29 void byte_swap(
void *ptr,
size_t size,
size_t nmemb)
45 for(j=0; j<nmemb; j++)
48 recent = old >> 24 & 0x000000ff;
49 recent |= old >> 8 & 0x0000ff00;
50 recent |= old << 8 & 0x00ff0000;
51 recent |= old << 24 & 0xff000000;
62 for(j = 0, double_ptr = (
double *) ptr;
66 in_ptr = (
char *) double_ptr;
72 char_in[0] = in_ptr[0];
73 char_in[1] = in_ptr[1];
74 char_in[2] = in_ptr[2];
75 char_in[3] = in_ptr[3];
76 char_in[4] = in_ptr[4];
77 char_in[5] = in_ptr[5];
78 char_in[6] = in_ptr[6];
79 char_in[7] = in_ptr[7];
84 in_ptr[0] = char_in[7];
85 in_ptr[1] = char_in[6];
86 in_ptr[2] = char_in[5];
87 in_ptr[3] = char_in[4];
88 in_ptr[4] = char_in[3];
89 in_ptr[5] = char_in[2];
90 in_ptr[6] = char_in[1];
91 in_ptr[7] = char_in[0];
98 for(j = 0, double_ptr = (
double *) ptr;
103 in_ptr = (
char *) double_ptr;
109 char_in[0] = in_ptr[0];
110 char_in[1] = in_ptr[1];
111 char_in[2] = in_ptr[2];
112 char_in[3] = in_ptr[3];
113 char_in[4] = in_ptr[4];
114 char_in[5] = in_ptr[5];
115 char_in[6] = in_ptr[6];
116 char_in[7] = in_ptr[7];
117 char_in[8] = in_ptr[8];
118 char_in[9] = in_ptr[9];
119 char_in[10] = in_ptr[10];
120 char_in[11] = in_ptr[11];
121 char_in[12] = in_ptr[12];
122 char_in[13] = in_ptr[13];
123 char_in[14] = in_ptr[14];
124 char_in[15] = in_ptr[15];
129 in_ptr[0] = char_in[15];
130 in_ptr[1] = char_in[14];
131 in_ptr[2] = char_in[13];
132 in_ptr[3] = char_in[12];
133 in_ptr[4] = char_in[11];
134 in_ptr[5] = char_in[10];
135 in_ptr[6] = char_in[9];
136 in_ptr[7] = char_in[8];
138 in_ptr[8] = char_in[7];
139 in_ptr[9] = char_in[6];
140 in_ptr[10] = char_in[5];
141 in_ptr[11] = char_in[4];
142 in_ptr[12] = char_in[3];
143 in_ptr[13] = char_in[2];
144 in_ptr[14] = char_in[1];
145 in_ptr[15] = char_in[0];
156 for(j=0; j<nmemb; j++)
159 recent = old >> 8 & 0x00ff;
160 recent |= old << 8 & 0xff00;
167 std::cerr << __func__ <<
": unsupported word size = " << size <<
"\n";