00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00051 #ifndef __vtkByteSwap_h
00052 #define __vtkByteSwap_h
00053
00054 #include "vtkObject.h"
00055
00056 class VTK_EXPORT vtkByteSwap : public vtkObject
00057 {
00058 public:
00059 static vtkByteSwap *New();
00060 vtkTypeMacro(vtkByteSwap,vtkObject);
00061
00063 static void Swap2LE(short *s);
00064
00065
00067 static void Swap4LE(char *c);
00068 static void Swap4LE(float *p) { vtkByteSwap::Swap4LE((char *)p);};
00069 static void Swap4LE(int *i) { vtkByteSwap::Swap4LE((char *)i);};
00070 static void Swap4LE(unsigned long *i) { vtkByteSwap::Swap4LE((char *)i);};
00071 static void Swap4LE(long *i) { vtkByteSwap::Swap4LE((char *)i);};
00072
00073
00076 static void Swap4LERange(char *c,int num);
00077 static void Swap4LERange(unsigned char *c,int num)
00078 { vtkByteSwap::Swap4LERange((char *)c,num);};
00079 static void Swap4LERange(float *p,int num)
00080 { vtkByteSwap::Swap4LERange((char *)p,num);};
00081 static void Swap4LERange(int *i,int num)
00082 { vtkByteSwap::Swap4LERange((char *)i,num);};
00083 static void Swap4LERange(unsigned long *i,int num)
00084 { vtkByteSwap::Swap4LERange((char *)i,num);};
00085
00086
00088 static void Swap4BE(char *c);
00089 static void Swap4BE(float *p) { vtkByteSwap::Swap4BE((char *)p);};
00090 static void Swap4BE(int *i) { vtkByteSwap::Swap4BE((char *)i);};
00091 static void Swap4BE(unsigned long *i) { vtkByteSwap::Swap4BE((char *)i);};
00092
00093
00096 static void Swap4BERange(char *c,int num);
00097 static void Swap4BERange(float *p,int num)
00098 { vtkByteSwap::Swap4BERange((char *)p,num); };
00099 static void Swap4BERange(int *i,int num)
00100 { vtkByteSwap::Swap4BERange((char *)i,num); };
00101 static void Swap4BERange(unsigned long *i,int num)
00102 { vtkByteSwap::Swap4BERange((char *)i,num); };
00103
00104
00108 static void SwapWrite4BERange(char *c,int num,FILE *fp);
00109 static void SwapWrite4BERange(float *p,int num, FILE *fp)
00110 { vtkByteSwap::SwapWrite4BERange((char *)p,num,fp);};
00111 static void SwapWrite4BERange(int *i,int num,FILE *fp)
00112 { vtkByteSwap::SwapWrite4BERange((char *)i,num,fp);};
00113 static void SwapWrite4BERange(unsigned long *i,int num, FILE *fp)
00114 { vtkByteSwap::SwapWrite4BERange((char *)i,num,fp);};
00115
00116 static void SwapWrite4BERange(char *c,int num, ostream *fp);
00117 static void SwapWrite4BERange(float *p,int num, ostream *fp)
00118 { vtkByteSwap::SwapWrite4BERange((char *)p,num,fp);};
00119 static void SwapWrite4BERange(int *i,int num, ostream *fp)
00120 { vtkByteSwap::SwapWrite4BERange((char *)i,num,fp);};
00121 static void SwapWrite4BERange(unsigned long *i,int num, ostream *fp)
00122 { vtkByteSwap::SwapWrite4BERange((char *)i,num,fp);};
00123
00124
00126 static void Swap2BE(short *s);
00127
00130 static void Swap2BERange(char *c,int num);
00131 static void Swap2BERange(short *i,int num)
00132 { vtkByteSwap::Swap2BERange((char *)i,num);};
00133
00136 static void Swap2LERange(char *c,int num);
00137 static void Swap2LERange(short *i,int num)
00138 { vtkByteSwap::Swap2LERange((char *)i,num);};
00139
00140
00144 static void SwapWrite2BERange(char *c,int num,FILE *fp);
00145 static void SwapWrite2BERange(short *i,int num, FILE *fp)
00146 {vtkByteSwap::SwapWrite2BERange((char *)i,num,fp);};
00147
00148 static void SwapWrite2BERange(char *c,int num, ostream *fp);
00149 static void SwapWrite2BERange(short *i,int num, ostream *fp)
00150 {vtkByteSwap::SwapWrite2BERange((char *)i,num,fp);};
00151
00154 static void SwapVoidRange(void *buffer, int numWords, int wordSize);
00155
00156 protected:
00157 vtkByteSwap() {};
00158 ~vtkByteSwap() {};
00159 vtkByteSwap(const vtkByteSwap&) {};
00160 void operator=(const vtkByteSwap&) {};
00161
00162 };
00163
00164 #endif