bitmap_t Class Reference'have' bitmap array More...
Detailed Description'have' bitmap arrayFile ......... bitmap_t.h Published .... 2005-06-14 Author ....... grymse@alhem.net
Definition at line 31 of file bitmap_t.h. Constructor & Destructor Documentation
File ......... bitmap_t.cpp Published .... 2005-06-14 Author ....... grymse@alhem.net Definition at line 30 of file bitmap_t.cpp. References m_bitmap, and m_bitmap_size. 00031 :m_bitmap(NULL) 00032 ,m_bitmap_size(0) 00033 ,m_number_of_pieces(number_of_pieces) 00034 { 00035 m_bitmap_size = number_of_pieces / 8; 00036 if (number_of_pieces % 8) 00037 m_bitmap_size++; 00038 m_bitmap = new unsigned char[m_bitmap_size]; 00039 memset(m_bitmap, 0, m_bitmap_size); 00040 }
Member Function Documentation
Definition at line 37 of file bitmap_t.h. References m_bitmap. Referenced by pSocket::SendBitmap(). 00037 { return m_bitmap; }
Definition at line 38 of file bitmap_t.h. References m_bitmap_size. Referenced by pSocket::SendBitmap(). 00038 { return m_bitmap_size; }
Definition at line 50 of file bitmap_t.cpp. References m_bitmap. Referenced by pSocket::SendBitmap(). 00051 { 00052 size_t n = piece / 8; 00053 int bit[] = {128,64,32,16,8,4,2,1}; 00054 m_bitmap[n] |= bit[piece % 8]; 00055 }
Definition at line 80 of file bitmap_t.cpp. References m_bitmap. Referenced by GetSet(). 00081 { 00082 size_t n = piece / 8; 00083 int bit[] = {128,64,32,16,8,4,2,1}; 00084 return (m_bitmap[n] & bit[piece % 8]) ? true : false; 00085 }
Definition at line 58 of file bitmap_t.cpp. References m_bitmap, and m_bitmap_size. 00059 { 00060 FILE *fil = fopen(filename.c_str(), "rb"); 00061 if (fil) 00062 { 00063 fread(m_bitmap, 1, m_bitmap_size, fil); 00064 fclose(fil); 00065 } 00066 }
Definition at line 69 of file bitmap_t.cpp. References m_bitmap, and m_bitmap_size. 00070 { 00071 FILE *fil = fopen(filename.c_str(), "wb"); 00072 if (fil) 00073 { 00074 fwrite(m_bitmap, 1, m_bitmap_size, fil); 00075 fclose(fil); 00076 } 00077 }
return number of set bits Definition at line 88 of file bitmap_t.cpp. References IsSet(), and m_number_of_pieces. 00089 { 00090 size_t q = 0; 00091 for (size_t i = 0; i < m_number_of_pieces; i++) 00092 if (IsSet(i)) 00093 q++; 00094 return q; 00095 }
Definition at line 48 of file bitmap_t.h. References m_number_of_pieces. 00048 { return m_number_of_pieces; }
Member Data Documentation
Definition at line 54 of file bitmap_t.h. Referenced by bitmap_t(), GetBitmap(), IsSet(), Load(), Save(), set(), and ~bitmap_t().
Definition at line 55 of file bitmap_t.h. Referenced by bitmap_t(), GetBitmapSize(), Load(), and Save().
The documentation for this class was generated from the following files: |