#if 0
bool byteorder()
{
union
{
short value;
char union_bytes[sizeof(short)];
} test;
test.value=0x0102;
if((test.union_bytes[0]==1)&&(test.union_bytes[1]==2))
{
//cout<<"big"<<endl;
return true;
}
else if((test.union_bytes[0]==2)&&(test.union_bytes[1]==1))
{
//cout<<"small"<<endl;
return false;
}
else
{
cout<<"unknow"<<endl;
FATAL("decode:byteorder unknow big or small\n");
return true;
}
}
uint8_t * ui32toui8(uint32_t *vv, uint32_t len)
{
uint8_t * retu8 = (uint8_t*)new uint8_t(len*4);
memset(retu8, 0, len*4);
uint8_t *tmp_retu8 = retu8;
uint32_t *v = vv;
int u8len = 0;
for(int n=0; n<= len; n++)
{
if(byteorder)
{
int i = 4;
uint8_t b[4];
b[0] = (v[n] >> 24);
b[1] = (v[n] >> 16)&0xff;
b[2] =( v[n] >> 8)&0xff;
b[3] = v[n] &0xff ;
while (i--)
{
memcpy(retu8+u8len, b[i], 1);
//tmp_retu8 = retu8+1;
u8len++;
}
}else
{
int i = 4;
uint8_t p[4];
p[0] = v[n] ; //0x78
p[1] = v[n] >> 8;//0x56
p[2] = v[n] >> 16;//0x34
p[3] = v[n] >> 24;//0x124
while (i--)
{
memcpy(retu8, b[i], 1);
u8len++;
}
}
}
return tmp_retu8;
}
#endif