diff --git a/include/File.h b/include/File.h index a99c83edb3fd0bdb2f687dba4e1c2106ffda19c8..a314d5f0e834e9bc07d881be915981b62a713c0d 100644 --- a/include/File.h +++ b/include/File.h @@ -71,7 +71,7 @@ public: virtual void close( ) throw(PacketExceptionIO*); /// \return true if file is closed, false if file is opened. - virtual bool isClosed(); + virtual bool isClosed() const; /// \return Returns last line read from file. char* getLastLineRead(); @@ -93,7 +93,7 @@ public: virtual bool setLastBookmarkPos(); /// \return Returns true is the position into file is at end of file - virtual bool isEOF(); + virtual bool isEOF() const; /// \pre The file must be opened. long setFirstPos() throw(PacketExceptionIO*); diff --git a/include/InputSerial.h b/include/InputSerial.h index c721e4d9ef18de8d6b45682605deecce1d61db3e..e00b52588813fc9f3e393a2d77c889e4b60df688 100644 --- a/include/InputSerial.h +++ b/include/InputSerial.h @@ -37,7 +37,7 @@ public: virtual void close() throw(PacketExceptionIO*); - virtual ByteStreamPtr readByteStream(int n_byte) throw(PacketExceptionIO*); + virtual ByteStreamPtr readByteStream(dword n_byte) throw(PacketExceptionIO*); virtual char* readString() throw(PacketExceptionIO*); diff --git a/include/MemoryBuffer.h b/include/MemoryBuffer.h index cf82f3905e25f1e1bafe85172d6e962a323d1c33..2581fe7dc4b51e0064f3c8036a7914459576214d 100644 --- a/include/MemoryBuffer.h +++ b/include/MemoryBuffer.h @@ -88,8 +88,6 @@ private: dword indexread; - char* currentpwd; - char* bufferName; bool eof; diff --git a/include/Packet.h b/include/Packet.h index 271b382fdab9e0418514d245ac1a757cffe7f4e5..dd08f0c21accb9e046da307f66f37d63ac07a854 100644 --- a/include/Packet.h +++ b/include/Packet.h @@ -356,8 +356,6 @@ private: bool decodedPacketTail; - bool iscompressed; - int compressionAlgorithmsSection; int compressionAlgorithmsIndex; diff --git a/include/PacketDataField.h b/include/PacketDataField.h index e5067066a24f93f98b33596722530f881d636cef..46a280c042c0a992443db0a6a30619c584a311e0 100644 --- a/include/PacketDataField.h +++ b/include/PacketDataField.h @@ -44,7 +44,7 @@ public: dword sizeMax(); /// Creates the outputstream ByteStream for the generation of the output stream - virtual bool setOutputStream(ByteStreamPtr os, word first); + virtual bool setOutputStream(ByteStreamPtr os, dword first); virtual ByteStreamPtr generateStream(bool bigendian); diff --git a/include/PacketNotRecognized.h b/include/PacketNotRecognized.h index 814fe707c7e4620f637184d01fe997525d67b4e1..75e14d2f01ec01b520c8120e1a6e2341ff5c5383 100644 --- a/include/PacketNotRecognized.h +++ b/include/PacketNotRecognized.h @@ -35,7 +35,7 @@ public: virtual bool createPacketType(char* fileName, bool prefix, word dimprefix) throw (PacketException*); - virtual bool setPacketValue(ByteStreamPtr prefix, ByteStreamPtr packetHeader, ByteStreamPtr packetDataField); + virtual bool setPacketValue(ByteStreamPtr prefix, ByteStreamPtr packetHeader, ByteStreamPtr packetDataField, int decodeType); }; } diff --git a/include/SDFBlock.h b/include/SDFBlock.h index e6cc18b5b107bf69fd76cfd59152084eafc0a899..667f592d82e80d079db73056a5119fe20f07d160 100644 --- a/include/SDFBlock.h +++ b/include/SDFBlock.h @@ -150,6 +150,8 @@ public: virtual ByteStreamPtr generateStream(bool bigendian); + using PartOfPacket::setByteStream; + virtual bool setByteStream(ByteStreamPtr s, int decodeType); virtual ByteStreamPtr getByteStream() @@ -384,7 +386,7 @@ public: virtual word getTotalNumberOfFields(); /// Prints the value of each field of this part of packet - virtual char** printValue(char* addString = ""); + virtual char** printValue(const char* addString = ""); virtual void printValueStdout(); diff --git a/include/SourceDataField.h b/include/SourceDataField.h index a07deb6820130fd97573b8a8ec6a3fb94c311577..68c4f67f3f8781a2998d218d775d9b22d20e6841 100644 --- a/include/SourceDataField.h +++ b/include/SourceDataField.h @@ -221,6 +221,8 @@ public: virtual dword sizeFixedPart(); + using PartOfPacket::setByteStream; + //onlySections = false virtual bool setByteStream(ByteStreamPtr s, int decodeType); @@ -243,7 +245,7 @@ public: /// Prints the value of each field of this part of packet - virtual char** printValue(char* addString = ""); + virtual char** printValue(const char* addString = ""); virtual void printValueStdout(); diff --git a/src/ByteStream.cpp b/src/ByteStream.cpp index be87b8bc8de7b365e29ef0a226a6dc2cce854a36..7b8568582c832b2612cd7275a6c205708753298c 100644 --- a/src/ByteStream.cpp +++ b/src/ByteStream.cpp @@ -73,7 +73,7 @@ PacketLib::ByteStream::ByteStream(byte* stream, dword dim, bool bigendian, bool PacketLib::ByteStream::ByteStream(ByteStreamPtr b0, dword start, dword end, bool memory_sharing) { mem_allocation_constructor = true; - if(end == -1) + if(end == (dword)-1) end = b0->size(); byteInTheStream = end-start; diff --git a/src/ConfigurationFile.cpp b/src/ConfigurationFile.cpp index 76d2644868bf327c56d5d767070cbf8d329f5281..07e21ff44f19a4ef208925111f151133102a1481 100644 --- a/src/ConfigurationFile.cpp +++ b/src/ConfigurationFile.cpp @@ -52,7 +52,7 @@ bool ConfigurationFile::open(char** parameters) throw(PacketExceptionIO*) XmlConfig config; std::string streamfile = confdir + config.convert(parameters[0]); int size = streamfile.size(); - parameters[0] = new char[size]; + parameters[0] = new char[size+1]; memcpy(parameters[0], streamfile.c_str(), size); parameters[0][size] = 0; chdir(currentpwd); diff --git a/src/File.cpp b/src/File.cpp index 21c35b1bfd03466b4b33d65c22b07049652e2c71..6457625e263bd037f300bd0f10cce7de145ae1be 100644 --- a/src/File.cpp +++ b/src/File.cpp @@ -188,7 +188,7 @@ void File::close( ) throw(PacketExceptionIO*) } -bool File::isClosed() +bool File::isClosed() const { return closed; } @@ -240,7 +240,7 @@ bool File::setLastBookmarkPos() -bool File::isEOF() +bool File::isEOF() const { if(!closed) return eof; diff --git a/src/InputSerial.cpp b/src/InputSerial.cpp index 5650d720271ff8aa35778ad7238eff5889828191..b2b3d269019560e4cf867500f8157684ad0ea11c 100644 --- a/src/InputSerial.cpp +++ b/src/InputSerial.cpp @@ -56,12 +56,12 @@ void InputSerial::close() throw(PacketExceptionIO*) -ByteStreamPtr InputSerial::readByteStream(int n_byte) throw(PacketExceptionIO*) +ByteStreamPtr InputSerial::readByteStream(dword n_byte) throw(PacketExceptionIO*) { //cout << "waiting " << n_byte << endl; ByteStreamPtr bs; byte* buff = new byte[n_byte]; - int current = 0; + dword current = 0; if(!closed) { while(current != n_byte) diff --git a/src/Packet.cpp b/src/Packet.cpp index 09bee46ed0c3cb4cf10af54f72b6325bb72ae7d9..564eb5eb9aaa17dd08fd99b8b4d0463f540b9ebd 100644 --- a/src/Packet.cpp +++ b/src/Packet.cpp @@ -24,6 +24,7 @@ using namespace PacketLib; #define DECODETYPE 2 Packet::Packet(bool bigendian) + : decodedPacketDataFieldHeader(false) { header = (PacketHeader*) new PacketHeader(); dataField = (PacketDataField*) new PacketDataField(); @@ -101,7 +102,6 @@ bool Packet::createPacketType(char* fileName, bool isprefix, word dimprefix) thr dimPacketDataFieldHeader = dataField->getPacketDataFieldHeader()->size(); //cout << (dataField->dataFieldHeader->printStructure())->c_str(); line=file.getLastLineRead(); - char *typeOfPacket = 0; if(strcmp(line, "[SourceDataField]") == 0) { /// determination of the source data field type @@ -518,7 +518,7 @@ bool Packet::setPacketValueSourceDataField(ByteStreamPtr packetDataField, int de dword nrd = dataField->getNumberOfRealDataBlock(); dataField->sourceDataField->setNumberOfBlocks(nrd); } - / + */ /*if(dataField->sourceDataField->isRBlock()) { word nrd = dataField->sourceDataField->getNumberOfRealDataBlock(); dataField->sourceDataField->setNumberOfBlocks(nrd); @@ -615,7 +615,7 @@ ByteStreamPtr Packet::encodeAndSetData(ByteStreamPtr sourceDataVariable) if(sourceDataVariable->size() != size() - dimPacketStartingFixedPart - dimPacketTail) throw new PacketException("the size of the sourceDataVariable is wrong"); bool swapped = false; - if(!ARCH_BIGENDIAN && bigendian || ARCH_BIGENDIAN && !bigendian) { + if((!ARCH_BIGENDIAN && bigendian) || (ARCH_BIGENDIAN && !bigendian)) { sourceDataVariable->swapWord(); swapped = true; } diff --git a/src/PacketDataField.cpp b/src/PacketDataField.cpp index e70e84d919b3a41c424f8f74fe8af3dcd832ced3..6ad18c8810c54acbc898e25f8f8ffe50d637aa2d 100644 --- a/src/PacketDataField.cpp +++ b/src/PacketDataField.cpp @@ -61,7 +61,7 @@ dword PacketDataField::sizeMax() -bool PacketDataField::setOutputStream(ByteStreamPtr os, word first) +bool PacketDataField::setOutputStream(ByteStreamPtr os, dword first) { outputstream = ByteStreamPtr(new ByteStream((os->stream + first), size(), os->isBigendian())); dataFieldHeader->setOutputStream(os, first); diff --git a/src/PacketNotRecognized.cpp b/src/PacketNotRecognized.cpp index d806b6414d4139acb4d9b30c5b0408361a9c9a95..b9ae8fdf7c07d04b685228fad1036c3dffae0156 100644 --- a/src/PacketNotRecognized.cpp +++ b/src/PacketNotRecognized.cpp @@ -73,7 +73,7 @@ PacketNotRecognized::~PacketNotRecognized() -bool PacketNotRecognized::setPacketValue(ByteStreamPtr prefix, ByteStreamPtr packetHeader, ByteStreamPtr packetDataField) +bool PacketNotRecognized::setPacketValue(ByteStreamPtr prefix, ByteStreamPtr packetHeader, ByteStreamPtr packetDataField, int decodeType) { /// It reads and sets the packet header if(!header->setByteStream(packetHeader)) diff --git a/src/SDFBlock.cpp b/src/SDFBlock.cpp index 104e59775c06df893f6ef6ad287c8ae44d93541f..124ff378302d09e9180ac12f5309fc04a987cdce 100644 --- a/src/SDFBlock.cpp +++ b/src/SDFBlock.cpp @@ -570,7 +570,7 @@ bool SDFBlock::setByteStream(ByteStreamPtr s, int decodeType) } -char** SDFBlock::printValue(char* addString) +char** SDFBlock::printValue(const char* addString) { char** cc; char** ct; @@ -610,7 +610,7 @@ char** SDFBlock::printValue(char* addString) i += type->maxNumberOfBlock[rbi] - getNumberOfBlocks(rbi) - 1; } } - cc[index] = '\0'; + cc[index] = 0; return cc; } diff --git a/src/SourceDataField.cpp b/src/SourceDataField.cpp index 3b0c426c29cd354fc5299ea01a04adaf6fe73987..c3e7d2de4debd425f52bbcd7183db57ec83cb339 100644 --- a/src/SourceDataField.cpp +++ b/src/SourceDataField.cpp @@ -198,7 +198,7 @@ word SourceDataField::getNumberOfFields() return block[0].getNumberOfFields(); } -char** SourceDataField::printValue(char* addString) +char** SourceDataField::printValue(const char* addString) { return block[0].printValue(addString); }