00001 /* Open SoundControl kit in C++ */ 00002 /* Copyright (C) 2002-2004 libOSC++ contributors. See AUTHORS */ 00003 /* */ 00004 /* This library is free software; you can redistribute it and/or */ 00005 /* modify it under the terms of the GNU Lesser General Public */ 00006 /* License as published by the Free Software Foundation; either */ 00007 /* version 2.1 of the License, or (at your option) any later version. */ 00008 /* */ 00009 /* This library is distributed in the hope that it will be useful, */ 00010 /* but WITHOUT ANY WARRANTY; without even the implied warranty of */ 00011 /* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU */ 00012 /* Lesser General Public License for more details. */ 00013 /* */ 00014 /* You should have received a copy of the GNU Lesser General Public */ 00015 /* License along with this library; if not, write to the Free Software */ 00016 /* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ 00017 /* */ 00018 /* For questions regarding this program contact */ 00019 /* Daniel Holth <dholth@fastmail.fm> or visit */ 00020 /* http://wiretap.stetson.edu/ */ 00021 00022 #ifndef HYPERSWAP_H 00023 #define HYPERSWAP_H 00024 00025 #include <byteswap.h> 00026 00027 # if __BYTE_ORDER == __BIG_ENDIAN 00028 /* The host byte order is the same as network byte order, 00029 * so these functions are just identity */ 00030 # define ntohll(x) (x) 00031 # define htonll(x) (x) 00032 # else 00033 # if __BYTE_ORDER == __LITTLE_ENDIAN 00034 # define ntohll(x) __bswap_64 (x) 00035 # define htonll(x) __bswap_64 (x) 00036 # endif 00037 # endif 00038 00039 00040 #endif