start moving to binarystream

This commit is contained in:
2022-05-10 12:26:05 +03:00
parent cf4f58ed95
commit 0f9e592273
16 changed files with 350 additions and 108 deletions

View File

@@ -9,11 +9,11 @@ using namespace PICoutManipulators;
class ByteArray: public PIBinaryStream<ByteArray> {
public:
PIByteArray data;
bool binaryStreamAppend(const void * d, size_t s) {
bool binaryStreamAppendImp(const void * d, size_t s) {
data.append(d, s);
return true;
}
bool binaryStreamTake(void * d, size_t s) {
bool binaryStreamTakeImp(void * d, size_t s) {
if (data.size() < s)
return false;
memcpy(d, data.data(), s);
@@ -25,11 +25,11 @@ public:
class File: public PIBinaryStream<File> {
public:
PIFile file;
bool binaryStreamAppend(const void * d, size_t s) {
bool binaryStreamAppendImp(const void * d, size_t s) {
file.write(d, s);
return true;
}
bool binaryStreamTake(void * d, size_t s) {
bool binaryStreamTakeImp(void * d, size_t s) {
if (file.isEnd())
return false;
file.read(d, s);
@@ -58,8 +58,9 @@ int main(int argc, char * argv[]) {
//f.file.open("_", PIIODevice::ReadWrite);
//f.file.clear();
//PIVector<TS> vi({TS(1,20), TS(3,40)});
PIVector<TS> vi({{'a', 10}, {'b', 20}, {'c', 30}});
/*PIVector<TS> vi({{'a', 10}, {'b', 20}, {'c', 30}});
ba << vi;
ba.binaryStreamAppend(&ba, sizeof(ba));
piCout << "src" << vi;
piCout << "s" << ba.data;
vi.fill(TS());
@@ -67,6 +68,22 @@ int main(int argc, char * argv[]) {
//f.file.seekToBegin();
ba >> vi;
piCout << "res" << vi;
piCout << "r" << ba.data;
piCout << "r" << ba.data;*/
PIMap<PIIODevice::DeviceMode, PIStringList> map;
map[PIIODevice::ReadOnly] = {"str0", PIString::fromUTF8("русский!")};
piMSleep(100);
map[PIIODevice::ReadWrite] = {""};
piMSleep(100);
map[PIIODevice::WriteOnly] = {PIString::fromUTF8("русский!"), "", "1234567890", "qwertyuiop[]"};
piCout << map;
ba << map;
piCout << ba.data;
map.clear();
ba >> map;
piCout << map;
piCout << ba.data;
return 0;
}