|
|
| PIByteArray () |
| | Создает пустой байтовый массив
|
| |
|
| PIByteArray (const PIByteArray &o) |
| | Создает копию байтового массива "o".
|
| |
|
| PIByteArray (const PIDeque< uchar > &o) |
| | Создает копию байтового массива "o".
|
| |
|
| PIByteArray (const uint size) |
| | Создает заполненный "0" байтовый массив размером "size".
|
| |
|
| PIByteArray (const void *data, const uint size) |
| | Создает байтовый массив из данных по указателю "data" размером "size".
|
| |
|
| PIByteArray (const uint size, uchar t) |
| | Создает заполненный "t" байтовый массив размером "size".
|
| |
| | PIByteArray (std::initializer_list< uchar > init_list) |
| | Создает массив из списка инициализации C++11. Подробнее...
|
| |
| void | swap (PIByteArray &other) |
| | Меняет местами массив v с этим массивом. Подробнее...
|
| |
| PIDeque< uchar >::iterator | begin () |
| | Итератор на первый элемент. Подробнее...
|
| |
| PIDeque< uchar >::iterator | end () |
| | Итератор на элемент, следующий за последним элементом. Подробнее...
|
| |
| PIDeque< uchar >::reverse_iterator | rbegin () |
| | Обратный итератор на первый элемент. Подробнее...
|
| |
| PIDeque< uchar >::reverse_iterator | rend () |
| | Обратный итератор на элемент, следующий за последним элементом. Подробнее...
|
| |
| size_t | size () const |
| | Количество элементов массива. Подробнее...
|
| |
| ssize_t | size_s () const |
| | Количество элементов массива в виде знакового числа. Подробнее...
|
| |
| size_t | length () const |
| | Синоним size(). Подробнее...
|
| |
| size_t | capacity () const |
| | Количество элементов, для которого сейчас выделена память массивом. Подробнее...
|
| |
| bool | isEmpty () const |
| | Проверяет пуст ли массив. Подробнее...
|
| |
| bool | isNotEmpty () const |
| | Проверяет не пуст ли массив. Подробнее...
|
| |
| bool | any (std::function< bool(uchar e)> test) const |
| | Проверяет, удовлетворяет ли какой-либо элемент массива условию, заданному в передаваемой функции test. Подробнее...
|
| |
| bool | every (std::function< bool(uchar e)> test) const |
| | Проверяет, удовлетворяют ли все элементы массива условию, заданному в передаваемой функции test. Подробнее...
|
| |
| uchar & | operator[] (size_t index) |
| | Полный доступ к элементу по индексу index. Подробнее...
|
| |
| uchar | at (size_t index) const |
| | Доступ исключительно на чтение к элементу по индексу index. Подробнее...
|
| |
| uchar & | back () |
| | Последний элемент массива. Подробнее...
|
| |
| uchar & | front () |
| | Первый элемент массива. Подробнее...
|
| |
| bool | contains (uchar e, ssize_t start=0) const |
| | Проверяет наличие элемента e в массиве. Подробнее...
|
| |
| int | entries (uchar e, ssize_t start=0) const |
| | Подсчитывает количество элементов, совпадающих с элементом e в массиве. Подробнее...
|
| |
| int | entries (std::function< bool(uchar e)> test, ssize_t start=0) const |
| | Подсчитывает количество элементов в массиве, проходящих по условию, заданному в передаваемой функции test. Подробнее...
|
| |
| ssize_t | indexOf (const uchar &e, ssize_t start=0) const |
| | Возвращает первый индекс, по которому данный элемент e может быть найден в массиве или -1, если такого индекса нет. Подробнее...
|
| |
| ssize_t | indexWhere (std::function< bool(const uchar &e)> test, ssize_t start=0) const |
| | Возвращает первый индекс элемента проходящего по условию, заданному в передаваемой функции test, или -1, если таких элементов нет. Подробнее...
|
| |
| ssize_t | lastIndexOf (const uchar &e, ssize_t start=-1) const |
| | Возвращает последний индекс, по которому данный элемент e может быть найден в массиве или -1, если такого индекса нет. Подробнее...
|
| |
| ssize_t | lastIndexWhere (std::function< bool(const uchar &e)> test, ssize_t start=-1) const |
| | Возвращает последний индекс элемента проходящего по условию, заданному в передаваемой функции test, или -1, если таких элементов нет. Подробнее...
|
| |
| uchar * | data (size_t index=0) |
| | Указатель на память массива Подробнее...
|
| |
| const uchar * | data (size_t index=0) const |
| | Указатель на память массива только для чтения. Подробнее...
|
| |
| PIByteArray & | clear () |
| | Очищает массив, удаляет все элементы. Подробнее...
|
| |
| PIByteArray & | fill (uchar e=0) |
| | Заполняет весь массив копиями элемента 'e'. Подробнее...
|
| |
| PIByteArray & | fill (std::function< uchar(size_t i)> f) |
| | Заполняет весь массив результатом вызова функции 'f(size_t i)'. Подробнее...
|
| |
| PIByteArray & | assign (uchar e=0) |
| | Тоже самое что и fill(). Подробнее...
|
| |
| PIByteArray & | assign (size_t new_size, uchar e) |
| | Сначала делает resize(new_size), затем fill(e). Подробнее...
|
| |
| PIByteArray & | resize (size_t new_size, uchar e=0) |
| | Устанавливает размер массива, новые элементы копируются из e. Подробнее...
|
| |
| PIByteArray & | resize (size_t new_size, std::function< uchar(size_t i)> f) |
| | Устанавливает размер массива, новые элементы создаются функцией f(size_t i). Подробнее...
|
| |
|
PIByteArray | resized (uint new_size) const |
| | Возвращает копию байтового массива с измененным размером
|
| |
| PIByteArray & | reserve (size_t new_size) |
| | Резервируется память под как минимум new_size элементов. Подробнее...
|
| |
| PIByteArray & | insert (size_t index, uchar e=0) |
| | Вставляет значение e в позицию index в массиве. Подробнее...
|
| |
| PIByteArray & | insert (size_t index, const PIByteArray &v) |
| | Вставляет массив v в позицию index в массиве. Подробнее...
|
| |
| PIByteArray & | insert (size_t index, std::initializer_list< uchar > init_list) |
| | Вставляет элементы в позицию index в массиве. Подробнее...
|
| |
| PIByteArray & | remove (size_t index, size_t count=1) |
| | Удаляет элементы из массива, начиная с позиции index в количестве count. Подробнее...
|
| |
|
PIByteArray | getRange (size_t index, size_t count) const |
| | Возвращает подмассив с данными от индекса "index" и размером не более "count".
|
| |
| PIByteArray | takeRange (size_t index, size_t count) |
| | Вырезает подмассив, то есть кусок из текущего массива. Подробнее...
|
| |
| PIByteArray & | reverse () |
| | Обращает порядок следования элементов этого массива. Подробнее...
|
| |
| PIByteArray | reversed () const |
| | Возвращает перевернутый массив. Подробнее...
|
| |
| PIByteArray & | enlarge (ssize_t add_size, uchar e=0) |
| | Увеличивает или уменьшает размер массива на add_size элементов. Подробнее...
|
| |
| PIByteArray & | removeOne (uchar e) |
| | Удаляет первый элемент, который равен элементу e. Подробнее...
|
| |
| PIByteArray & | removeAll (uchar e) |
| | Удаляет все элементы, равные элементу e. Подробнее...
|
| |
| PIByteArray & | removeWhere (std::function< bool(uchar e)> test) |
| | Удаляет все элементы, удовлетворяющие условию, заданному в передаваемой функции test. Подробнее...
|
| |
| PIByteArray & | push_back (uchar e) |
| | Добавляет элемент e в конец массива. Подробнее...
|
| |
| PIByteArray & | push_back (std::initializer_list< uchar > init_list) |
| | Добавляет элементы в конец массива. Подробнее...
|
| |
| PIByteArray & | push_back (const PIByteArray &v) |
| | Добавляет массив v в конец массива. Подробнее...
|
| |
|
PIByteArray & | push_back (const void *data_, int size_) |
| | Добавляет в конец массива данные по указателю "data" размером "size".
|
| |
| PIByteArray & | push_front (uchar e) |
| | Добавляет элемент e в начало массива. Подробнее...
|
| |
| PIByteArray & | push_front (const PIByteArray &v) |
| | Добавляет массив v в начало массива. Подробнее...
|
| |
| PIByteArray & | push_front (std::initializer_list< uchar > init_list) |
| | Добавляет элементы в начало массива. Подробнее...
|
| |
| PIByteArray & | prepend (uchar e) |
| | Добавляет элемент e в начало массива. Подробнее...
|
| |
| PIByteArray & | prepend (const PIByteArray &v) |
| | Добавляет массив v в начало массива. Подробнее...
|
| |
| PIByteArray & | prepend (std::initializer_list< uchar > init_list) |
| | Добавляет элементы в начало массива. Подробнее...
|
| |
| PIByteArray & | pop_back () |
| | Удаляет один элемент с конца массива. Подробнее...
|
| |
| PIByteArray & | pop_front () |
| | Удаляет один элемент с начала массива. Подробнее...
|
| |
| uchar | take_back () |
| | Удаляет один элемент с начала массива и возвращает его. Подробнее...
|
| |
| uchar | take_front () |
| | Удаляет один элемент с конца массива и возвращает его. Подробнее...
|
| |
| PIByteArray | filter (std::function< bool(const uchar &e)> test) const |
| | Возвращает новый массив со всеми элементами, прошедшими проверку, задаваемую в передаваемой функции test. Подробнее...
|
| |
| void | forEach (std::function< void(const uchar &e)> f) const |
| | Выполняет функцию void f(const uchar & e) для каждого элемента массива. Подробнее...
|
| |
| PIByteArray & | forEach (std::function< void(uchar &e)> f) |
| | Выполняет функцию void f(uchar & e) для каждого элемента массива. Подробнее...
|
| |
| template<typename ST > |
| PIDeque< ST > | map (std::function< ST(const uchar &e)> f) const |
| | Создаёт новый массив с результатом вызова указанной функции ST f(const T & e) для каждого элемента массива. Подробнее...
|
| |
| template<typename ST > |
| ST | reduce (std::function< ST(const uchar &e, const ST &acc)> f, const ST &initial=ST()) const |
| | Применяет функцию ST f(const uchar & e, const ST & acc) к каждому элементу массива (слева-направо), возвращает одно значение. Подробнее...
|
| |
|
PIByteArray & | convertToBase64 () |
| | Преобразует данные в Base 64 и возвращает текущий массив
|
| |
|
PIByteArray & | convertFromBase64 () |
| | Преобразует данные из Base 64 и возвращает текущий массив
|
| |
|
PIByteArray | toBase64 () const |
| | Возвращает копию байтового массива, преобразованного в Base 64.
|
| |
|
PIString | toString (int base=16) const |
| | Возвращает текстовое представление байтового массива, каждый байт в "base" системе, с пробелами
|
| |
|
PIString | toHex () const |
| | Возвращает шестнадцатеричное представление массива, без пробелов. Оно использует цифры 0-9 и буквы a-f.
|
| |
|
PIByteArray & | append (const void *data_, int size_) |
| | Добавляет в конец массива данные по указателю "data" размером "size".
|
| |
|
PIByteArray & | append (const PIByteArray &data_) |
| | Добавляет в конец массива содержимое массива "data".
|
| |
|
PIByteArray & | append (uchar t) |
| | Добавляет в конец массива байт "t".
|
| |
| PIByteArray & | append (std::initializer_list< uchar > init_list) |
| | Добавляет элементы в конец массива. Подробнее...
|
| |
| uchar | checksumPlain8 (bool inverse=true) const |
| | Возвращает 8-битную контрольную сумму Подробнее...
|
| |
| uint | checksumPlain32 (bool inverse=true) const |
| | Возвращает 32-битную контрольную сумму Подробнее...
|
| |
|
uchar | checksumCRC8 () const |
| | Возвращает 8-битную контрольную сумму CRC-8.
|
| |
|
ushort | checksumCRC16 () const |
| | Возвращает 16-битную контрольную сумму CRC-16.
|
| |
|
uint | checksumCRC32 () const |
| | Возвращает 32-битную контрольную сумму CRC-32.
|
| |
|
uint | hash () const |
| | Возвращает хэш содержимого
|
| |
|
bool | binaryStreamAppend (const void *d, size_t s) |
| | Записать данные
|
| |
|
void | binaryStreamAppend (T v) |
| | Записать данные
|
| |
|
bool | binaryStreamTake (void *d, size_t s) |
| | Прочитать данные
|
| |
| ssize_t | binaryStreamSize () const |
| | Возвращает оставшийся размер Подробнее...
|
| |
|
int | binaryStreamTakeInt () |
| | Прочитать int.
|
| |
|
bool | wasReadError () const |
| | Возвращает было ли неполное чтение с момента последнего вызова resetReadError() или создания потока
|
| |
|
void | resetReadError () |
| | Сбрасывает флаг неполного чтения
|
| |
|
(не члены класса)
|
|
PICout | operator<< (PICout s, const PIBitArray &ba) |
| | Оператор вывода в PICout.
|
| |
|
bool | operator< (const PIByteArray &v0, const PIByteArray &v1) |
| | Оператор сравнения
|
| |
|
bool | operator> (const PIByteArray &v0, const PIByteArray &v1) |
| | Оператор сравнения
|
| |
|
bool | operator== (const PIByteArray &v0, const PIByteArray &v1) |
| | Оператор сравнения
|
| |
|
bool | operator!= (const PIByteArray &v0, const PIByteArray &v1) |
| | Оператор сравнения
|
| |
|
PIByteArray | operator& (const PIByteArray &v0, const PIByteArray &v1) |
| | Возвращает по-битовое "и" Если размеры не совпадают, возвращает пустой PIByteArray.
|
| |
|
PIByteArray | operator| (const PIByteArray &v0, const PIByteArray &v1) |
| | Возвращает по-битовое "или" Если размеры не совпадают, возвращает пустой PIByteArray.
|
| |
|
PIByteArray | operator^ (const PIByteArray &v0, const PIByteArray &v1) |
| | Возвращает по-битовое "исключающее или" Если размеры не совпадают, возвращает пустой PIByteArray.
|
| |
|
PICout | operator<< (PICout s, const PIByteArray &ba) |
| | Оператор вывода в PICout.
|
| |
|
template<> |
| uint | piHash (const PIByteArray &ba) |
| | Возвращает PIByteArray::hash() от "ba".
|
| |
|
template<> |
| void | piSwap (PIByteArray &f, PIByteArray &s) |
| | Меняет содержимое массивов "f" и "s".
|
| |
|
template<typename T > |
| PIByteArray | piSerialize (const T &value) |
| | Сохраняет "value" в байтовый массив и возвращает его
|
| |
|
template<typename T > |
| T | piDeserialize (const PIByteArray &data) |
| | Извлекает тип "T" из байтового массива "data" и возвращает его
|
| |
|
PIBinaryStream< PIByteArray > & | operator<< (PIBinaryStream< PIByteArray > &s, const PISystemMonitor::ProcessStats &v) |
| | Оператор сохранения.
|
| |
|
PIBinaryStream< PIByteArray > & | operator<< (PIBinaryStream< PIByteArray > &s, const PISystemMonitor::ThreadStats &v) |
| | Оператор сохранения.
|
| |
|
PIBinaryStream< PIByteArray > & | operator<< (PIBinaryStream< PIByteArray > &s, const PIKbdListener::MouseEvent &v) |
| | Оператор сохранения
|
| |
|
PIBinaryStream< PIByteArray > & | operator<< (PIBinaryStream< PIByteArray > &s, const PIKbdListener::WheelEvent &v) |
| | Оператор сохранения
|
| |
|
PIBinaryStream< PIByteArray > & | operator<< (PIBinaryStream< PIByteArray > &s, const PIScreenTypes::Cell &v) |
| | Оператор сохранения
|
| |
|
PIBinaryStream< PIByteArray > & | operator<< (PIBinaryStream< PIByteArray > &s, const PIScreenTypes::TileEvent &v) |
| | Оператор сохранения
|
| |
|
PIBinaryStream< PIByteArray > & | operator<< (PIBinaryStream< PIByteArray > &s, const PIFile::FileInfo &v) |
| | Оператор сохранения.
|
| |
|
PIBinaryStream< PIByteArray > & | operator<< (PIBinaryStream< PIByteArray > &s, const PIPeer::PeerInfo::PeerAddress &v) |
| | Оператор сохранения.
|
| |
|
PIBinaryStream< PIByteArray > & | operator<< (PIBinaryStream< PIByteArray > &s, const PIPeer::PeerInfo &v) |
| | Оператор сохранения.
|
| |
|
PIBinaryStream< PIByteArray > & | operator<< (PIBinaryStream< PIByteArray > &s, const PISerial::DeviceInfo &v) |
| | Оператор сохранения.
|
| |
|
PIBinaryStream< PIByteArray > & | operator<< (PIBinaryStream< PIByteArray > &s, const PIString &v) |
| | Оператор сохранения.
|
| |
|
PIBinaryStream< PIByteArray > & | operator<< (PIBinaryStream< PIByteArray > &s, const PIStringList &v) |
| | Оператор сохранения.
|
| |
|
PIBinaryStream< PIByteArray > & | operator<< (PIBinaryStream< PIByteArray > &s, const PIByteArray &v) |
| | Оператор сохранения.
|
| |
|
PIBinaryStream< PIByteArray > & | operator<< (PIBinaryStream< PIByteArray > &s, const PIPropertyStorage::Property &v) |
| | Оператор сохранения.
|
| |
|
PIBinaryStream< PIByteArray > & | operator<< (PIBinaryStream< PIByteArray > &s, const PIPropertyStorage &v) |
| | Оператор сохранения.
|
| |
|
PIBinaryStream< PIByteArray > & | operator<< (PIBinaryStream< PIByteArray > &s, const PIValueTree &v) |
| | Оператор сохранения.
|
| |
|
PIBinaryStream< PIByteArray > & | operator<< (PIBinaryStream< PIByteArray > &s, const PIVariant &v) |
| | Оператор сохранения.
|
| |
|
PIBinaryStream< PIByteArray > & | operator<< (PIBinaryStream< PIByteArray > &s, const PIVariantTypes::Enumerator &v) |
| | Оператор сохранения.
|
| |
|
PIBinaryStream< PIByteArray > & | operator<< (PIBinaryStream< PIByteArray > &s, const PIVariantTypes::Enum &v) |
| | Оператор сохранения.
|
| |
|
PIBinaryStream< PIByteArray > & | operator<< (PIBinaryStream< PIByteArray > &s, const PIVariantTypes::File &v) |
| | Оператор сохранения.
|
| |
|
PIBinaryStream< PIByteArray > & | operator<< (PIBinaryStream< PIByteArray > &s, const PIVariantTypes::Dir &v) |
| | Оператор сохранения.
|
| |
|
PIBinaryStream< PIByteArray > & | operator<< (PIBinaryStream< PIByteArray > &s, const PIVariantTypes::Color &v) |
| | Оператор сохранения.
|
| |
|
PIBinaryStream< PIByteArray > & | operator<< (PIBinaryStream< PIByteArray > &s, const PIVariantTypes::IODevice &v) |
| | Оператор сохранения.
|
| |
|
PIBinaryStream< PIByteArray > & | operator>> (PIBinaryStream< PIByteArray > &s, PISystemMonitor::ProcessStats &v) |
| | Оператор извлечения.
|
| |
|
PIBinaryStream< PIByteArray > & | operator>> (PIBinaryStream< PIByteArray > &s, PISystemMonitor::ThreadStats &v) |
| | Оператор извлечения.
|
| |
|
PIBinaryStream< PIByteArray > & | operator>> (PIBinaryStream< PIByteArray > &s, PIKbdListener::MouseEvent &v) |
| | Оператор извлечения
|
| |
|
PIBinaryStream< PIByteArray > & | operator>> (PIBinaryStream< PIByteArray > &s, PIKbdListener::WheelEvent &v) |
| | Оператор извлечения
|
| |
|
PIBinaryStream< PIByteArray > & | operator>> (PIBinaryStream< PIByteArray > &s, PIScreenTypes::Cell &v) |
| | Оператор извлечения
|
| |
|
PIBinaryStream< PIByteArray > & | operator>> (PIBinaryStream< PIByteArray > &s, PIScreenTypes::TileEvent &v) |
| | Оператор извлечения
|
| |
|
PIBinaryStream< PIByteArray > & | operator>> (PIBinaryStream< PIByteArray > &s, PIFile::FileInfo &v) |
| | Оператор извлечения.
|
| |
|
PIBinaryStream< PIByteArray > & | operator>> (PIBinaryStream< PIByteArray > &s, PIPeer::PeerInfo::PeerAddress &v) |
| | Оператор извлечения.
|
| |
|
PIBinaryStream< PIByteArray > & | operator>> (PIBinaryStream< PIByteArray > &s, PIPeer::PeerInfo &v) |
| | Оператор извлечения.
|
| |
|
PIBinaryStream< PIByteArray > & | operator>> (PIBinaryStream< PIByteArray > &s, PISerial::DeviceInfo &v) |
| | Оператор извлечения.
|
| |
|
PIBinaryStream< PIByteArray > & | operator>> (PIBinaryStream< PIByteArray > &s, PIString &v) |
| | Оператор извлечения.
|
| |
|
PIBinaryStream< PIByteArray > & | operator>> (PIBinaryStream< PIByteArray > &s, PIStringList &v) |
| | Оператор извлечения.
|
| |
|
PIBinaryStream< PIByteArray > & | operator>> (PIBinaryStream< PIByteArray > &s, PIByteArray &v) |
| | Оператор извлечения.
|
| |
|
PIBinaryStream< PIByteArray > & | operator>> (PIBinaryStream< PIByteArray > &s, PIPropertyStorage::Property &v) |
| | Оператор извлечения.
|
| |
|
PIBinaryStream< PIByteArray > & | operator>> (PIBinaryStream< PIByteArray > &s, PIPropertyStorage &v) |
| | Оператор извлечения.
|
| |
|
PIBinaryStream< PIByteArray > & | operator>> (PIBinaryStream< PIByteArray > &s, PIValueTree &v) |
| | Оператор извлечения.
|
| |
|
PIBinaryStream< PIByteArray > & | operator>> (PIBinaryStream< PIByteArray > &s, PIVariant &v) |
| | Оператор извлечения.
|
| |
|
PIBinaryStream< PIByteArray > & | operator>> (PIBinaryStream< PIByteArray > &s, PIVariantTypes::Enumerator &v) |
| | Оператор извлечения.
|
| |
|
PIBinaryStream< PIByteArray > & | operator>> (PIBinaryStream< PIByteArray > &s, PIVariantTypes::Enum &v) |
| | Оператор извлечения.
|
| |
|
PIBinaryStream< PIByteArray > & | operator>> (PIBinaryStream< PIByteArray > &s, PIVariantTypes::File &v) |
| | Оператор извлечения.
|
| |
|
PIBinaryStream< PIByteArray > & | operator>> (PIBinaryStream< PIByteArray > &s, PIVariantTypes::Dir &v) |
| | Оператор извлечения.
|
| |
|
PIBinaryStream< PIByteArray > & | operator>> (PIBinaryStream< PIByteArray > &s, PIVariantTypes::Color &v) |
| | Оператор извлечения.
|
| |
|
PIBinaryStream< PIByteArray > & | operator>> (PIBinaryStream< PIByteArray > &s, PIVariantTypes::IODevice &v) |
| | Оператор извлечения.
|
| |
Класс PIByteArray представляет собой массив байтов.
PIByteArray используется для хранения байтов. Он может быть сконструирован из любых даных. Можно использовать PIByteArray как потоковый объект для сериализации/десериализации любых типов и данных. Подробнее Поток ввода/вывода. Этот класс использует PIDeque<uchar> и предоставляет набор удобных методов для работы с байтами.
Использование
PIByteArray наследован от PIBinaryStream и может быть использован для сохранения любых данных и работы с ними. Операторы сохранения добавляют данные в конец массива, а операторы извлечения берут данные из его начала. Также есть методы для преобразования в Hex и Base64.
Внимание
Потоковый оператор для типа PIByteArray сохраняет его как контейнер, а не просто добавляет его содержимое в конец. Этот оператор полезен для управляемой упаковки произвольных данных в виде PIByteArray. Для добавления содержимого одного байтового массива к другому используется метод append().
uchar uc(127);
sba << uc;
ba << sba;
Класс PIByteArray представляет собой массив байтов.
Definition: pibytearray.h:42
PIByteArray & clear()
Очищает массив, удаляет все элементы.
Definition: pibytearray.h:507
PIByteArray & append(const void *data_, int size_)
Добавляет в конец массива данные по указателю "data" размером "size".
Definition: pibytearray.h:1094
#define piCout
Макрос для условного (piDebug) вывода в PICout(StdOut)
Definition: picout.h:35