Commit 09dc86f3 authored by Andrea Bulgarelli's avatar Andrea Bulgarelli
Browse files

packet lenght exception management

parent f6224601
Loading
Loading
Loading
Loading
+50 −0
Original line number Diff line number Diff line
25 July 2003
v2.0.3 on git

+ 32 bit packet length
Example of .header format
-- name of header
Header CTA
-- number of field with dimension of packet (or first field if dim of packet is stored in a 32 bit field)
6
-- 16 or 32 bit size dimension of the packet lenght
32
[Field]
-- field 0
Version number
3
0b100
-- field 1
Type
1
0b0
-- field 2
DHFH
1
0b1
-- field 3
APID
11
none
-- field 4
SF
2
0b11
-- field 5
Source Sequence Counter
14
none
-- field 6
Packet Length MSB (4_14) - 1
16
none
-- field 7
Packet Length LSB (4_14) - 1
16
none

If the field '-- 16 or 32 bit size dimension of the packet lenght' is set to 16 or it is absent, the packet lenght is 16 bit.

+ Field::value management (set predefined value=0 and during output stream generation


15 July 2013
TAG CVS: PACKETLIB_1_4_0
+ 32 and 64 bit compatibility
+82 −44
Original line number Diff line number Diff line
@@ -15,6 +15,44 @@
	<integer>0</integer>
	<key>OpenDocuments:bulgarelli</key>
	<array>
		<dict>
			<key>BookmarkData</key>
			<data>
			Ym9va7gDAAAAAAQQMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
			AAAAAAAAAAAAtAIAAAUAAAABAQAAVXNlcnMAAAAKAAAAAQEAAGJ1
			bGdhcmVsbGkAAAgAAAABAQAAUHJvamVjdHMJAAAAAQEAAFBhY2tl
			dExpYgAAAAMAAAABAQAAc3JjABAAAAABAQAAUGFja2V0SGVhZGVy
			LmNwcBgAAAABBgAABAAAABQAAAAoAAAAOAAAAEwAAABYAAAACAAA
			AAQDAABNwAAAAAAAAAgAAAAEAwAAX2oEAAAAAAAIAAAABAMAAPDs
			DgAAAAAACAAAAAQDAAAxh44BAAAAAAgAAAAEAwAAD4iOAQAAAAAI
			AAAABAMAACyIjgEAAAAAGAAAAAEGAACQAAAAoAAAALAAAADAAAAA
			0AAAAOAAAAAYAAAAAQIAAAEAAAAAAAAADwAAAAAAAAAAAAAAAAAA
			AAAAAAABBQAABAAAAAMDAAACAAAABAAAAAMDAAAEAAAABAAAAAMD
			AAD1AQAADAAAAAEBAABNYWNpbnRvc2ggSEQIAAAABAMAAACAgT10
			AAAACAAAAAAEAABBtRHxowAAACQAAAABAQAAMjlCNTJDM0MtNDBC
			Mi0zRUY0LUJBODUtRjU1NzlENzQ3QkMxGAAAAAECAACBAAAAAQAI
			AO8/AAABAAgAAAAAAAAAAAABAAAAAQEAAC8AAADBAAAAAQIAADc2
			ODRkOTk4MWNmMTU2MWIxNWI5NmY5MzY4MWZhMTBjODIzY2JjZWY7
			MDAwMDAwMDA7MDAwMDAwMDAwMDAwMDAyMDtjb20uYXBwbGUuYXBw
			LXNhbmRib3gucmVhZC13cml0ZTswMDAwMDAwMTswZTAwMDAwMjsw
			MDAwMDAwMDAxOGU4ODJjOy91c2Vycy9idWxnYXJlbGxpL3Byb2pl
			Y3RzL3BhY2tldGxpYi9zcmMvcGFja2V0aGVhZGVyLmNwcAAAAADM
			AAAA/v///wEAAAAAAAAAEAAAAAQQAABwAAAAAAAAAAUQAADwAAAA
			AAAAABAQAAAQAQAAAAAAAFUQAAA4AQAAAAAAAFYQAAAwAQAAAAAA
			AAIgAADcAQAAAAAAABAgAABcAQAAAAAAABEgAACQAQAAAAAAABIg
			AABwAQAAAAAAABMgAACAAQAAAAAAACAgAAC8AQAAAAAAADAgAAAw
			AQAAAAAAAAHAAABEAQAAAAAAABHAAAAUAAAAAAAAABLAAABQAQAA
			AAAAAIDwAADoAQAAAAAAAA==
			</data>
			<key>FileURL</key>
			<string>file://localhost/Users/bulgarelli/Projects/PacketLib/src/PacketHeader.cpp</string>
			<key>RelativePath</key>
			<string>./src/PacketHeader.cpp</string>
			<key>TypeID</key>
			<string>_CFileLocator</string>
			<key>Version</key>
			<integer>1</integer>
		</dict>
		<dict>
			<key>BookmarkData</key>
			<data>
@@ -100,6 +138,50 @@
	<true/>
	<key>RecentItems:bulgarelli</key>
	<array>
		<dict>
			<key>Date</key>
			<date>2013-07-25T17:12:08Z</date>
			<key>Location</key>
			<dict>
				<key>BookmarkData</key>
				<data>
				Ym9va5QDAAAAAAQQMAAAAAAAAAAAAAAAAAAAAAAAAAAA
				AAAAAAAAAAAAAAAAAAAAqAIAAAUAAAABAQAAVXNlcnMA
				AAAKAAAAAQEAAGJ1bGdhcmVsbGkAAAgAAAABAQAAUHJv
				amVjdHMJAAAAAQEAAFBhY2tldExpYgAAAAMAAAABAQAA
				c3JjABAAAAABAQAAUGFja2V0SGVhZGVyLmNwcBgAAAAB
				BgAABAAAABQAAAAoAAAAOAAAAEwAAABYAAAACAAAAAQD
				AABNwAAAAAAAAAgAAAAEAwAAX2oEAAAAAAAIAAAABAMA
				APDsDgAAAAAACAAAAAQDAAAxh44BAAAAAAgAAAAEAwAA
				D4iOAQAAAAAIAAAABAMAACyIjgEAAAAAGAAAAAEGAACQ
				AAAAoAAAALAAAADAAAAA0AAAAOAAAAAYAAAAAQIAAAEA
				AAAAAAAADwAAAAAAAAAAAAAAAAAAAAQAAAADAwAABAAA
				AAQAAAADAwAA9QEAAAwAAAABAQAATWFjaW50b3NoIEhE
				CAAAAAQDAAAAgIE9dAAAAAgAAAAABAAAQbUR8aMAAAAk
				AAAAAQEAADI5QjUyQzNDLTQwQjItM0VGNC1CQTg1LUY1
				NTc5RDc0N0JDMRgAAAABAgAAgQAAAAEACADvPwAAAQAI
				AAAAAAAAAAAAAQAAAAEBAAAvAAAAAAAAAAEFAADBAAAA
				AQIAADc2ODRkOTk4MWNmMTU2MWIxNWI5NmY5MzY4MWZh
				MTBjODIzY2JjZWY7MDAwMDAwMDA7MDAwMDAwMDAwMDAw
				MDAyMDtjb20uYXBwbGUuYXBwLXNhbmRib3gucmVhZC13
				cml0ZTswMDAwMDAwMTswZTAwMDAwMjswMDAwMDAwMDAx
				OGU4ODJjOy91c2Vycy9idWxnYXJlbGxpL3Byb2plY3Rz
				L3BhY2tldGxpYi9zcmMvcGFja2V0aGVhZGVyLmNwcAAA
				AAC0AAAA/v///wEAAAAAAAAADgAAAAQQAABwAAAAAAAA
				AAUQAADwAAAAAAAAABAQAAAQAQAAAAAAAAIgAADIAQAA
				AAAAABAgAABIAQAAAAAAABEgAAB8AQAAAAAAABIgAABc
				AQAAAAAAABMgAABsAQAAAAAAACAgAACoAQAAAAAAADAg
				AADUAQAAAAAAAAHAAAAwAQAAAAAAABHAAAAUAAAAAAAA
				ABLAAAA8AQAAAAAAAIDwAADcAQAAAAAAAA==
				</data>
				<key>FileURL</key>
				<string>file://localhost/Users/bulgarelli/Projects/PacketLib/src/PacketHeader.cpp</string>
				<key>TypeID</key>
				<string>_CFileLocator</string>
				<key>Version</key>
				<integer>1</integer>
			</dict>
		</dict>
		<dict>
			<key>Date</key>
			<date>2013-07-25T17:04:25Z</date>
@@ -941,50 +1023,6 @@
				<integer>1</integer>
			</dict>
		</dict>
		<dict>
			<key>Date</key>
			<date>2013-07-25T17:01:55Z</date>
			<key>Location</key>
			<dict>
				<key>BookmarkData</key>
				<data>
				Ym9va5QDAAAAAAQQMAAAAAAAAAAAAAAAAAAAAAAAAAAA
				AAAAAAAAAAAAAAAAAAAAqAIAAAUAAAABAQAAVXNlcnMA
				AAAKAAAAAQEAAGJ1bGdhcmVsbGkAAAgAAAABAQAAUHJv
				amVjdHMJAAAAAQEAAFBhY2tldExpYgAAAAMAAAABAQAA
				c3JjABAAAAABAQAAUGFja2V0SGVhZGVyLmNwcBgAAAAB
				BgAABAAAABQAAAAoAAAAOAAAAEwAAABYAAAACAAAAAQD
				AABNwAAAAAAAAAgAAAAEAwAAX2oEAAAAAAAIAAAABAMA
				APDsDgAAAAAACAAAAAQDAAAxh44BAAAAAAgAAAAEAwAA
				D4iOAQAAAAAIAAAABAMAACyIjgEAAAAAGAAAAAEGAACQ
				AAAAoAAAALAAAADAAAAA0AAAAOAAAAAYAAAAAQIAAAEA
				AAAAAAAADwAAAAAAAAAAAAAAAAAAAAQAAAADAwAABAAA
				AAQAAAADAwAA9QEAAAwAAAABAQAATWFjaW50b3NoIEhE
				CAAAAAQDAAAAgIE9dAAAAAgAAAAABAAAQbUR8aMAAAAk
				AAAAAQEAADI5QjUyQzNDLTQwQjItM0VGNC1CQTg1LUY1
				NTc5RDc0N0JDMRgAAAABAgAAgQAAAAEACADvPwAAAQAI
				AAAAAAAAAAAAAQAAAAEBAAAvAAAAAAAAAAEFAADBAAAA
				AQIAADc2ODRkOTk4MWNmMTU2MWIxNWI5NmY5MzY4MWZh
				MTBjODIzY2JjZWY7MDAwMDAwMDA7MDAwMDAwMDAwMDAw
				MDAyMDtjb20uYXBwbGUuYXBwLXNhbmRib3gucmVhZC13
				cml0ZTswMDAwMDAwMTswZTAwMDAwMjswMDAwMDAwMDAx
				OGU4ODJjOy91c2Vycy9idWxnYXJlbGxpL3Byb2plY3Rz
				L3BhY2tldGxpYi9zcmMvcGFja2V0aGVhZGVyLmNwcAAA
				AAC0AAAA/v///wEAAAAAAAAADgAAAAQQAABwAAAAAAAA
				AAUQAADwAAAAAAAAABAQAAAQAQAAAAAAAAIgAADIAQAA
				AAAAABAgAABIAQAAAAAAABEgAAB8AQAAAAAAABIgAABc
				AQAAAAAAABMgAABsAQAAAAAAACAgAACoAQAAAAAAADAg
				AADUAQAAAAAAAAHAAAAwAQAAAAAAABHAAAAUAAAAAAAA
				ABLAAAA8AQAAAAAAAIDwAADcAQAAAAAAAA==
				</data>
				<key>FileURL</key>
				<string>file://localhost/Users/bulgarelli/Projects/PacketLib/src/PacketHeader.cpp</string>
				<key>TypeID</key>
				<string>_CFileLocator</string>
				<key>Version</key>
				<integer>1</integer>
			</dict>
		</dict>
		<dict>
			<key>Date</key>
			<date>2013-07-25T17:01:55Z</date>
+6 −3
Original line number Diff line number Diff line
@@ -40,7 +40,10 @@ bool PacketHeader::loadHeader(char* fileName) throw(PacketException*)
        	dimensionOfPacketLenght = 16;
        else
        	dimensionOfPacketLenght = atoi(line);
        //cout << 	dimensionOfPacketLenght << endl;

        if(!(dimensionOfPacketLenght == 16 || dimensionOfPacketLenght == 32))
        	throw new PacketExceptionIO("Dimension of packet length, 16 or 32 bit");;

        header.setpos(0);

        //find the start position of the fields
@@ -53,12 +56,12 @@ bool PacketHeader::loadHeader(char* fileName) throw(PacketException*)
            return true;
        }
        else
            throw new PacketExceptionIO("Can't create the header.");;
            throw new PacketExceptionIO("Can't create the header.");

    }
    else {
    	delete[] argv; 
        throw new PacketExceptionIO("Can't open the header file configuration.");;
        throw new PacketExceptionIO("Can't open the header file configuration.");
    }
}