(object Petal version 47 _written "Rose 8.0.0303.1400" charSet 0) (object Design "Logical View" is_unit TRUE is_loaded TRUE attributes (list Attribute_Set (object Attribute tool "Java" name "IDE" value "Internal Editor") (object Attribute tool "Java" name "UserDefineTagName1" value "") (object Attribute tool "Java" name "UserDefineTagText1" value "") (object Attribute tool "Java" name "UserDefineTagApply1" value "") (object Attribute tool "Java" name "UserDefineTagName2" value "") (object Attribute tool "Java" name "UserDefineTagText2" value "") (object Attribute tool "Java" name "UserDefineTagApply2" value "") (object Attribute tool "Java" name "UserDefineTagName3" value "") (object Attribute tool "Java" name "UserDefineTagText3" value "") (object Attribute tool "Java" name "UserDefineTagApply3" value "")) quid "365C7A6603BA" defaults (object defaults rightMargin 0.250000 leftMargin 0.250000 topMargin 0.250000 bottomMargin 0.500000 pageOverlap 0.250000 clipIconLabels TRUE autoResize TRUE snapToGrid TRUE gridX 16 gridY 16 defaultFont (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) showMessageNum 1 showClassOfObject TRUE notation "Unified") root_usecase_package (object Class_Category "Use Case View" quid "365C7A6603BC" exportControl "Public" global TRUE logical_models (list unit_reference_list) logical_presentations (list unit_reference_list (object UseCaseDiagram "Main" quid "365C7A6603D9" title "Main" zoom 100 max_height 28350 max_width 21600 origin_x 0 origin_y 0 items (list diagram_item_list)))) root_category (object Class_Category "Logical View" quid "365C7A6603BB" exportControl "Public" global TRUE subsystem "Component View" quidu "365C7A6603BD" logical_models (list unit_reference_list (object Class "MACInterface" quid "423A848D035B" operations (list Operations (object Operation "SendTo" quid "423A8500031C" parameters (list Parameters (object Parameter "mPacket" quid "4264E6BB02EB" type "Packet" quidu "423D3534012C")) concurrency "Sequential" opExportControl "Public" uid 0) (object Operation "CheckIfPacketIsReady" quid "425A44A90287" parameters (list Parameters (object Parameter "TimeOut" quid "425A44EB0029" documentation "Duration to wait in msec." type "Long" initv "0")) result "Boolean" concurrency "Sequential" opExportControl "Public" uid 0) (object Operation "GetPacket" quid "425A4514000A" parameters (list Parameters (object Parameter "PacketBuf" quid "425A45240202" type "char *") (object Parameter "PacketBufSize" quid "425A453A00A5" type "Integer")) result "Boolean" concurrency "Sequential" opExportControl "Public" uid 0)) persistence "Persistent" concurrency "Active" cardinality (value Cardinality "1..1")) (object Class "PacketParse" quid "423CF1AD0160" documentation "When a packet arrives at the MAC, it is always passed to the PacketParser. No component gets packet directly from the MAC. The PacketParser filters packets and, depending on the type of packet, the packet is placed in various FIFOs. Each component has a different FIFO. The components are able to adjust the filtering and hence which types of packets are placed in their FIFO. The PacketParser always passes packets to the TopDB. If it is a RouteReply where this node is the source, then it is passed to the RouteSearchMachine (so the search is terminated with success). If the packet is a RouteSearch, then it is passed to the PrePropagate. A RouteSearch and RouteRequest are both passed to TheGenerateRouteReply." operations (list Operations (object Operation "AsyncRecPacket" quid "423D1BC902CA" parameters (list Parameters (object Parameter "tPacket" quid "4247F1C00240" type "Packet" quidu "423D3534012C")) result "void" concurrency "Synchronous" semantics (object Semantic_Info PDL |if (RouteSeachStateAlertWhenPktRdy==TRUE) |{ |mRouteSearchState ) opExportControl "Public" uid 0) (object Operation "GetNextPacketFromRouteSerachStatePacketQueue" quid "4247EF9D01F4" documentation "This function may block until the PacketParseQueue is free." parameters (list Parameters (object Parameter "tPacket" quid "425A51A002A8" documentation "This variable should be passed as a reference" type "Packet" quidu "423D3534012C")) result "Boolean" concurrency "Synchronous" semantics (object Semantic_Info PDL "return RouteSearchStatePacketQueue.GetNextPacket(tPacket);") opExportControl "Public" uid 0) (object Operation "GetNextPacketFromFloodPropagatorPacketQueue" quid "4247EFC9011B" parameters (list Parameters (object Parameter "tPacket" quid "425A5242003E" type "Packet" quidu "423D3534012C")) result "Boolean" concurrency "Synchronous" semantics (object Semantic_Info PDL "return FloodPropagatorPacketQueue.GetNextPacket(tPacket);") opExportControl "Public" uid 0) (object Operation "GetNextPacketFromGenerateRouteReplyPacketQueue" quid "4247EFEF0378" parameters (list Parameters (object Parameter "tPacket" quid "425A52C50141" type "Packet" quidu "423D3534012C")) result "Boolean" concurrency "Synchronous" semantics (object Semantic_Info PDL "return GenerateRouteReplyPacketQueue.GetNextPacket(tPacket);") opExportControl "Public" uid 0) (object Operation "GetNextPacketFromTopologyDatabasePacketQueue" quid "4247F0100249" parameters (list Parameters (object Parameter "tPacket" quid "425A52F7011B" type "Packet" quidu "423D3534012C")) result "Boolean" concurrency "Synchronous" semantics (object Semantic_Info PDL "return TopologyDatabaePacketQueue.GetNextPacket(tPacket);") opExportControl "Public" uid 0) (object Operation "GetNextPacketFromPrepropagatorPacketQueue" quid "4247F024003F" parameters (list Parameters (object Parameter "tPacket" quid "425A5368039E" type "Packet" quidu "423D3534012C")) result "Boolean" concurrency "Synchronous" opExportControl "Public" uid 0) (object Operation "GetNextPacketFromNetworkLayerPacketQueue" quid "4247F03B00F6" parameters (list Parameters (object Parameter "tPacket" quid "425A537E0327" type "Packet" quidu "423D3534012C")) result "Boolean" concurrency "Synchronous" opExportControl "Public" uid 0) (object Operation "RouteSearchQueueIsEmpty" quid "425A54150108" result "Boolean" concurrency "Synchronous" opExportControl "Public" uid 0) (object Operation "FloodPropagationPacketQueueIsEmpty" quid "425A54300084" result "Boolean" concurrency "Synchronous" opExportControl "Public" uid 0) (object Operation "GenerateRouteReplyPacketQueueIsEmpty" quid "425A544702D6" result "Boolean" concurrency "Synchronous" opExportControl "Public" uid 0) (object Operation "TopologyDatabasePacketQueueIsEmpty" quid "425A54630060" result "Boolean" concurrency "Synchronous" opExportControl "Public" uid 0) (object Operation "NetworkLayerQueueIsEmpty" quid "425A547C01EC" result "Boolean" concurrency "Synchronous" opExportControl "Public" uid 0)) class_attributes (list class_attribute_list (object ClassAttribute "mPacket" quid "423D3505011A" type "Packet" quidu "423D3534012C") (object ClassAttribute "RouteSearchStatePacketQueue" quid "4247EA270366" type "PacketParseQueue" quidu "4247B58D024A" Containment "By Value") (object ClassAttribute "FloodPropagatorPacketQueue" quid "4247EA5A021F" type "PacketParseQueue" quidu "4247B58D024A" Containment "By Value") (object ClassAttribute "GenerateRouteReplyPacketQueue" quid "4247EACA016C" type "PacketParseQueue" quidu "4247B58D024A" Containment "By Value") (object ClassAttribute "TopologyDatabasePacketQueue" quid "4247EAF100E5" type "PacketParseQueue" quidu "4247B58D024A" Containment "By Value") (object ClassAttribute "PrepropagatePacketQueue" quid "4247EB3C00B1" type "PacketParseQueue" quidu "4247B58D024A" Containment "By Value") (object ClassAttribute "NetworkLayerPacketQueue" quid "4247EBD80318" type "PacketParseQueue" quidu "4247B58D024A" Containment "By Value") (object ClassAttribute "RouteSearchStateAlertWhenPktRdy" quid "4248CA5800DA" type "Boolean" initv "FALSE" exportControl "Public") (object ClassAttribute "FloodPropagationAlertWhenPktRdy" quid "4248CA89000F" type "Boolean" initv "FALSE" exportControl "Public") (object ClassAttribute "GenerateRouteReplyAlertWhenPktRdy" quid "4248CAA60157" type "Boolean" initv "FALSE" exportControl "Public") (object ClassAttribute "TopologyDatabaseAlertWhenPktRdy" quid "4248CAC2038A" type "Boolean" initv "FALSE" exportControl "Public") (object ClassAttribute "PrepropagateAlertWhenPktRdy" quid "4248CAD601A5" type "Boolean" initv "FALSE" exportControl "Public") (object ClassAttribute "NetworkLayerAlertWhenPktRdy" quid "4248CAEE0157" type "Boolean" initv "FALSE" exportControl "Public")) statemachine (object State_Machine "State/Activity Model" quid "423D34B500A7" states (list States (object State "WaitForPacket" quid "423D34C3004D" type "Normal") (object State "CheckPacketType1" quid "423D35CF0215" transitions (list transition_list (object State_Transition quid "423D367200C5" label "" supplier "CheckPacketType3" quidu "423D360D01EC" Event (object Event "Packet.Type=RouteSearchPacketType" quid "423D367200C6") sendEvent (object sendEvent quid "423D367200C8")) (object State_Transition quid "423D39B0008C" label "" supplier "CheckPacketType2" quidu "423D392900E2" Event (object Event "Packet.Type=RouteReply" quid "423D39B0008D") sendEvent (object sendEvent quid "423D39B0008F")) (object State_Transition quid "423D39DC0021" label "" supplier "WaitForPacket" quidu "423D34C3004D" Event (object Event "Packet.Type!=RouteReply & PacketType!=RouteSearch" quid "423D39DC0022") sendEvent (object sendEvent quid "423D39DC0024" Event (object Event "RecPacket" quid "423D3A1C007E") parameters "Packet" target "TopDatabase"))) type "Normal") (object State "CheckPacketType3" quid "423D360D01EC" transitions (list transition_list (object State_Transition quid "423D39CF03A8" supplier "WaitForPacket" quidu "423D34C3004D" sendEvent (object sendEvent quid "423D39CF03AB"))) actions (list action_list (object sendEvent quid "423D38AB0394" ActionTime (object ActionTime when "Entry") Event (object Event "RecPacket" quid "423D38AB039E") parameters "Packet" target "GenerateRouteReply") (object sendEvent quid "423D38C60180" ActionTime (object ActionTime when "Entry") Event (object Event "RecPacket" quid "423D38C60181") parameters "Packet" target "PrePropagator") (object action "" quid "423D38D303A5" ActionTime (object ActionTime when "Entry")) (object sendEvent quid "423D38F9016F" ActionTime (object ActionTime when "Entry") Event (object Event "RecPacket" quid "423D38F90170") parameters "Packet" target "TopDatabase")) type "Normal") (object State "CheckPacketType2" quid "423D392900E2" transitions (list transition_list (object State_Transition quid "423D39D30367" supplier "WaitForPacket" quidu "423D34C3004D" sendEvent (object sendEvent quid "423D39D3036A"))) actions (list action_list (object sendEvent quid "423D395501B8" ActionTime (object ActionTime when "Entry") Event (object Event "RecPacket" quid "423D395501B9") parameters "Packet" target "TopDatabase") (object sendEvent quid "423D399302E3" ActionTime (object ActionTime when "Entry") Event (object Event "RecPacket" quid "423D399302E4") parameters "Packet" target "GenerateRouteReply") (object sendEvent quid "423D39A9012C" ActionTime (object ActionTime when "Entry") Event (object Event "RecPacket" quid "423D39A9012D") parameters "Packet" target "RouteSearch")) type "Normal")) partitions (list Partitions) objects (list Objects) statediagrams (list StateDiagrams (object State_Diagram "NewDiagram" quid "423D34B500E3" title "NewDiagram" zoom 100 max_height 28350 max_width 21600 origin_x 0 origin_y 263 items (list diagram_item_list (object StateView "Normal" "WaitForPacket" @1 location (1056, 272) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) label (object ItemLabel Parent_View @1 location (1056, 261) fill_color 13434879 anchor_loc 1 nlines 2 max_width 204 justify 0 label "WaitForPacket") icon_style "Icon" line_color 3342489 fill_color 13434879 quidu "423D34C3004D" autoResize TRUE) (object StateView "Normal" "CheckPacketType1" @2 location (944, 912) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) label (object ItemLabel Parent_View @2 location (944, 901) fill_color 13434879 anchor_loc 1 nlines 2 max_width 204 justify 0 label "CheckPacketType1") icon_style "Icon" line_color 3342489 fill_color 13434879 quidu "423D35CF0215" autoResize TRUE) (object StateView "Normal" "CheckPacketType3" @3 location (912, 1408) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) label (object ItemLabel Parent_View @3 location (912, 1307) fill_color 13434879 anchor_loc 1 nlines 2 max_width 934 justify 0 label "CheckPacketType3") icon_style "Icon" line_color 3342489 fill_color 13434879 quidu "423D360D01EC" compartment (object Compartment Parent_View @3 location (454, 1348) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) icon_style "Icon" fill_color 13434879 anchor 2 nlines 4 max_width 881 compartmentItems (list Compartment "entry/ ^GenerateRouteReply.RecPacket(Packet)" "entry/ ^PrePropagator.RecPacket(Packet)" "entry/ " "entry/ ^TopDatabase.RecPacket(Packet)")) width 1030 height 315 autoResize TRUE) (object StateView "Normal" "CheckPacketType2" @4 location (2080, 1280) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) label (object ItemLabel Parent_View @4 location (2080, 1195) fill_color 13434879 anchor_loc 1 nlines 2 max_width 898 justify 0 label "CheckPacketType2") icon_style "Icon" line_color 3342489 fill_color 13434879 quidu "423D392900E2" compartment (object Compartment Parent_View @4 location (1640, 1236) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) icon_style "Icon" fill_color 13434879 anchor 2 nlines 3 max_width 881 compartmentItems (list Compartment "entry/ ^TopDatabase.RecPacket(Packet)" "entry/ ^GenerateRouteReply.RecPacket(Packet)" "entry/ ^RouteSearch.RecPacket(Packet)")) width 995 height 282 autoResize TRUE) (object TransView "" @5 stereotype TRUE line_color 3342489 quidu "423D39CF03A8" client @3 supplier @1 vertices (list Points (397, 1359) (100, 1331) (138, 363) (906, 286)) line_style 0 x_offset FALSE) (object TransView "" @6 stereotype TRUE line_color 3342489 quidu "423D39D30367" client @4 supplier @1 vertices (list Points (2051, 1138) (1894, 363) (1206, 288)) line_style 0 x_offset FALSE) (object TransView "" @7 font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) label (object SegLabel @8 Parent_View @7 location (959, 1131) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) anchor_loc 1 nlines 3 max_width 257 justify 0 label "Packet.Type=RouteSearchPacketType" pctDist 0.489711 height 17 orientation 1) stereotype TRUE line_color 3342489 quidu "423D367200C5" client @2 supplier @3 line_style 0 x_offset FALSE) (object TransView "" @9 font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) label (object SegLabel @10 Parent_View @9 location (1399, 1005) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) anchor_loc 1 nlines 1 max_width 470 justify 0 label "Packet.Type=RouteReply" pctDist 0.500000 height 45 orientation 0) stereotype TRUE line_color 3342489 quidu "423D39B0008C" client @2 supplier @4 line_style 0 x_offset FALSE) (object TransView "" @11 font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) label (object SegLabel @12 Parent_View @11 location (1029, 547) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) anchor_loc 1 nlines 1 max_width 1711 justify 0 label "Packet.Type!=RouteReply & PacketType!=RouteSearch ^TopDatabase.RecPacket(Packet)" pctDist 0.500000 height 45 orientation 0) stereotype TRUE line_color 3342489 quidu "423D39DC0021" client @2 supplier @1 line_style 0 x_offset FALSE)))))) (object Class "Address" quid "423F2D68033D" class_attributes (list class_attribute_list (object ClassAttribute "Address" quid "423F2D75038C" type "Long"))) (object Class "ComponentController" quid "423F37B60169" operations (list Operations (object Operation "MakeFloodPropagator" quid "425A67E80119" result "FloodPropagator" concurrency "Sequential" opExportControl "Public" uid 0 quidu "423A883600BB") (object Operation "MakeRouteReplyPacket" quid "425A689301A1" result "RouteReply" concurrency "Sequential" opExportControl "Public" uid 0 quidu "423F2CA9005D") (object Operation "MakeRouteSearchPacket" quid "425A68BD01F2" concurrency "Sequential" opExportControl "Public" uid 0) (object Operation "MakeRouteSearchState" quid "425A691D0204" concurrency "Sequential" opExportControl "Public" uid 0) (object Operation "MakeBeaconing" quid "425A69330025" concurrency "Sequential" opExportControl "Public" uid 0) (object Operation "MakeTopologyDatabase" quid "425A69B40048" concurrency "Sequential" opExportControl "Public" uid 0)) class_attributes (list class_attribute_list (object ClassAttribute "TypeRouteSearch" quid "423F37D1019A") (object ClassAttribute "TypeOfFlooding" quid "423F37E203C6") (object ClassAttribute "TypeOfDelayToRouteReply" quid "423F37EB03DD") (object ClassAttribute "more..." quid "423F3907033B"))) (object Class "NetworkLayerQueue" quid "423F3A3302CE" operations (list Operations (object Operation "UpdateRouteSearch" quid "4247793D01BD" parameters (list Parameters (object Parameter "mState" quid "4264E7270065" type "Long")) concurrency "Sequential" opExportControl "Public" uid 0) (object Operation "AsyncRecPacket" quid "42477955006D" concurrency "Sequential" opExportControl "Public" uid 0))) (object Class "NewClass" quid "4247B43C02C8") (object Class "PacketParseQueue" quid "4247B58D024A" operations (list Operations (object Operation "RecPacket" quid "4247B666029D" documentation "when a packet arrives, the list of PacketTypestoCollect is iterated through to dtermine if this packet should be added to this packet queue. This also updates IsEmpty" parameters (list Parameters (object Parameter "mPacket" quid "4247E8050266" type "Packet" quidu "423D3534012C")) result "Boolean" concurrency "Guarded" opExportControl "Public" uid 0) (object Operation "AddPacketTypeToCollect" quid "4247B7890291" documentation "mPacketType.push_front(PacketType);" parameters (list Parameters (object Parameter "PacketType" quid "4247B7A001C2" type "Long" initv "0")) result "Boolean" concurrency "Guarded" opExportControl "Public" uid 0) (object Operation "ClearAllPacketTypesToCollect" quid "4247B7B802B7" documentation "mPacketTypeList.clear();" result "Boolean" concurrency "Sequential" opExportControl "Public" uid 0) (object Operation "IsEmpty" quid "4247EBA4013D" result "Boolean" concurrency "Sequential" opExportControl "Public" uid 0) (object Operation "GetNextPacket" quid "425A4C080385" documentation "This gets the next packet from the packet queue. This function is synchronous, but will block until the PacketQueue is free." parameters (list Parameters (object Parameter "tPacket" quid "425A4FD0026F" type "Packet" quidu "423D3534012C")) result "Boolean" concurrency "Synchronous" semantics (object Semantic_Info PDL |mSemaphore.Lock(); |If (mPacketQueue.QueueEmpty() == FALSE) |{ |tPacket = mPacketQueue.GetNextPacket(); |mSemaphore.Unlock(); |return TRUE; |} |else |{ |mSemaphore.Unlock(); |return FALSE; |} ) opExportControl "Public" uid 0)) class_attributes (list class_attribute_list (object ClassAttribute "mPacket" quid "425A4E6101DB" type "Packet" quidu "423D3534012C"))) (object Instantiated_Class "PacketType" quid "4247B58E01F2" used_nodes (list uses_relationship_list (object Uses_Relationship quid "4247D37F024E" supplier "Logical View::List" quidu "4247CD610089")) class_attributes (list class_attribute_list (object ClassAttribute "Type" quid "4247B76C01F9" type "Long" initv "0"))) (object Parameterized_Class "List" quid "4247CD610089" stereotype "template" operations (list Operations (object Operation "push_front" quid "4247CD9301A3" parameters (list Parameters (object Parameter "element" quid "4247D0840138" type "ElementType")) concurrency "Sequential" opExportControl "Public" uid 0) (object Operation "push_back" quid "4247CD9C0174" parameters (list Parameters (object Parameter "element" quid "4247D0DD029E" type "ElementType")) concurrency "Sequential" opExportControl "Public" uid 0) (object Operation "front" quid "4247CDA70224" result "ElementType" concurrency "Sequential" opExportControl "Public" uid 0) (object Operation "back" quid "4247D06D0031" result "ElementType" concurrency "Sequential" opExportControl "Public" uid 0) (object Operation "pop_front" quid "4247D070014D" concurrency "Sequential" opExportControl "Public" uid 0) (object Operation "pop_back" quid "4247D07402D0" concurrency "Sequential" opExportControl "Public" uid 0) (object Operation "clear" quid "4247E8D101CA" concurrency "Sequential" opExportControl "Public" uid 0)) class_attributes (list class_attribute_list (object ClassAttribute "Type" quid "4247CD7801E1")) parameters (list Parameters (object Parameter "ElementType" quid "4247CF8E004E" type "Class"))) (object Association "$UNNAMED$0" quid "423A871C0157" roles (list role_list (object Role "mTopologyDatabase" quid "423A871D000F" label "mTopologyDatabase" supplier "Logical View::TopologyDatebase::TopologyDatabase" quidu "423A854301B5" client_cardinality (value cardinality "1") Containment "By Value" is_navigable TRUE) (object Role "$UNNAMED$1" quid "423A871D0011" supplier "Logical View::Prepropagator::SearchRegionLimiter" quidu "423A8664030D" client_cardinality (value cardinality "1..*") Containment "By Reference"))) (object Association "$UNNAMED$2" quid "423A88F80213" roles (list role_list (object Role "$UNNAMED$3" quid "423A88F901C5" supplier "Logical View::FloodPropagator::FloodPropagator" quidu "423A883600BB" client_cardinality (value cardinality "1") is_navigable TRUE) (object Role "$UNNAMED$4" quid "423A88F901C7" supplier "Logical View::Prepropagator::SearchRegionLimiter" quidu "423A8664030D" client_cardinality (value cardinality "1")))) (object Association "$UNNAMED$5" quid "423A88FF0186" roles (list role_list (object Role "$UNNAMED$6" quid "423A8900002E" supplier "Logical View::TopologyDatebase::TopologyDatabase" quidu "423A854301B5" is_navigable TRUE) (object Role "$UNNAMED$7" quid "423A8900003E" supplier "Logical View::FloodPropagator::FloodPropagator" quidu "423A883600BB"))) (object Association "$UNNAMED$8" quid "423A890F0157" roles (list role_list (object Role "mTopologyDatabase" quid "423A891001D4" label "mTopologyDatabase" supplier "Logical View::TopologyDatebase::TopologyDatabase" quidu "423A854301B5" client_cardinality (value cardinality "1") is_navigable TRUE) (object Role "$UNNAMED$9" quid "423A891001D6" supplier "Logical View::FloodPropagator::FloodPropagator" quidu "423A883600BB" client_cardinality (value cardinality "1") Containment "By Reference"))) (object Association "$UNNAMED$10" quid "423A89C00186" roles (list role_list (object Role "$UNNAMED$11" quid "423A89C1008C" supplier "Logical View::RouteSearchStateMachine::RouteSearchMachineFrontEnd" quidu "423A85740000" client_cardinality (value cardinality "1") Containment "By Reference") (object Role "mTopologyDatebase" quid "423A89C1008E" label "mTopologyDatebase" supplier "Logical View::TopologyDatebase::TopologyDatabase" quidu "423A854301B5" client_cardinality (value cardinality "1")))) (object Association "$UNNAMED$12" quid "423B35F4009C" roles (list role_list (object Role "mTopologyDatabase" quid "423B35F4031C" label "mTopologyDatabase" supplier "Logical View::TopologyDatebase::TopologyDatabase" quidu "423A854301B5" client_cardinality (value cardinality "1") is_navigable TRUE) (object Role "$UNNAMED$13" quid "423B35F4031E" supplier "Logical View::GenerateRouteReply::GenerateRouteReply" quidu "423A893B0177" Containment "By Reference"))) (object Association "$UNNAMED$14" quid "423CF1D60227" roles (list role_list (object Role "mPacketParser" quid "423CF1D7005C" label "mPacketParser" supplier "Logical View::PacketParse" quidu "423CF1AD0160" client_cardinality (value cardinality "1") is_navigable TRUE) (object Role "$UNNAMED$15" quid "423CF1D70066" supplier "Logical View::MACInterface" quidu "423A848D035B" client_cardinality (value cardinality "1") Containment "By Reference"))) (object Association "$UNNAMED$16" quid "423CF1EF022D" roles (list role_list (object Role "mGenerateRouteReply" quid "423CF1F000C6" label "mGenerateRouteReply" supplier "Logical View::GenerateRouteReply::GenerateRouteReply" quidu "423A893B0177" client_cardinality (value cardinality "1") Containment "By Reference" is_navigable TRUE) (object Role "mPacketParser" quid "423CF1F000D0" label "mPacketParser" supplier "Logical View::PacketParse" quidu "423CF1AD0160" client_cardinality (value cardinality "1") Containment "By Reference" is_navigable TRUE))) (object Association "$UNNAMED$17" quid "423CF1F203AE" roles (list role_list (object Role "mTopologyDatabase" quid "423CF1F3028D" label "mTopologyDatabase" supplier "Logical View::TopologyDatebase::TopologyDatabase" quidu "423A854301B5" client_cardinality (value cardinality "1") Containment "By Reference" is_navigable TRUE) (object Role "mPacketParser" quid "423CF1F30297" label "mPacketParser" supplier "Logical View::PacketParse" quidu "423CF1AD0160" client_cardinality (value cardinality "1") Containment "By Reference" is_navigable TRUE))) (object Association "$UNNAMED$18" quid "423CF1F50218" roles (list role_list (object Role "mRouteSearchState" quid "423CF1F6007F" label "mRouteSearchState" supplier "Logical View::RouteSearchStateMachine::RouteSearchMachineFrontEnd" quidu "423A85740000" client_cardinality (value cardinality "1") Containment "By Reference" is_navigable TRUE) (object Role "mPacketParser" quid "423CF1F60089" label "mPacketParser" supplier "Logical View::PacketParse" quidu "423CF1AD0160" client_cardinality (value cardinality "1") Containment "By Reference" is_navigable TRUE))) (object Association "$UNNAMED$19" quid "423CF1FD0350" roles (list role_list (object Role "mFloodPropagator" quid "423CF20002DC" label "mFloodPropagator" supplier "Logical View::FloodPropagator::FloodPropagator" quidu "423A883600BB" client_cardinality (value cardinality "1") Containment "By Reference" is_navigable TRUE) (object Role "mPacketParser" quid "423CF20002E6" label "mPacketParser" supplier "Logical View::PacketParse" quidu "423CF1AD0160" client_cardinality (value cardinality "1") Containment "By Reference" is_navigable TRUE))) (object Association "$UNNAMED$20" quid "423CF25700F6" roles (list role_list (object Role "mMAC" quid "423CF25703E6" label "mMAC" supplier "Logical View::MACInterface" quidu "423A848D035B" client_cardinality (value cardinality "1") is_navigable TRUE) (object Role "$UNNAMED$21" quid "423CF25703E8" supplier "Logical View::GenerateRouteReply::GenerateRouteReply" quidu "423A893B0177" Containment "By Reference"))) (object Association "$UNNAMED$22" quid "423CF2630108" roles (list role_list (object Role "mMAC" quid "423CF265001A" label "mMAC" supplier "Logical View::MACInterface" quidu "423A848D035B" client_cardinality (value cardinality "1") is_navigable TRUE) (object Role "$UNNAMED$23" quid "423CF2650024" supplier "Logical View::FloodPropagator::FloodPropagator" quidu "423A883600BB" client_cardinality (value cardinality "1") Containment "By Reference"))) (object Association "$UNNAMED$24" quid "423E06AE008C" roles (list role_list (object Role "mFloodPropagator" quid "423E06B00067" label "mFloodPropagator" supplier "Logical View::FloodPropagator::FloodPropagator" quidu "423A883600BB" client_cardinality (value cardinality "1") is_navigable TRUE) (object Role "$UNNAMED$25" quid "423E06B00071" supplier "Logical View::RouteSearchStateMachine::RouteSearchMachineFrontEnd" quidu "423A85740000" Containment "By Reference"))) (object Association "$UNNAMED$26" quid "423E9F8601C2" roles (list role_list (object Role "mRouteSearchDoSDetector" quid "423E9F8603CB" label "mRouteSearchDoSDetector" supplier "Logical View::RouteSearchStateMachine::NewRouteSearchDoSDetector" quidu "423E9F65005C" client_cardinality (value cardinality "1") Containment "By Value" is_navigable TRUE) (object Role "$UNNAMED$27" quid "423E9F8603D5" supplier "Logical View::RouteSearchStateMachine::RouteSearchState" quidu "423D1F9200CE" client_cardinality (value cardinality "1") Containment "By Value"))) (object Association "$UNNAMED$28" quid "423EA6690040" roles (list role_list (object Role "mRouteSearchDoSDetector" quid "423EA66902DF" label "mRouteSearchDoSDetector" supplier "Logical View::RouteSearchStateMachine::NewRouteSearchDoSDetector" quidu "423E9F65005C" client_cardinality (value cardinality "1") Containment "By Value" is_navigable TRUE) (object Role "$UNNAMED$29" quid "423EA66902E9" supplier "Logical View::RouteSearchStateMachine::RouteSearchMachineFrontEnd" quidu "423A85740000" client_cardinality (value cardinality "1") Containment "By Value"))) (object Association "$UNNAMED$30" quid "423F3806006A" roles (list role_list (object Role "$UNNAMED$31" quid "423F380602AF" supplier "Logical View::ComponentController" quidu "423F37B60169" is_navigable TRUE) (object Role "$UNNAMED$32" quid "423F380602BA" supplier "Logical View::RouteSearchStateMachine::RouteSearchState" quidu "423D1F9200CE"))) (object Association "$UNNAMED$33" quid "423F380C0041" roles (list role_list (object Role "$UNNAMED$34" quid "423F380C016D" supplier "Logical View::ComponentController" quidu "423F37B60169" is_navigable TRUE) (object Role "$UNNAMED$35" quid "423F380C0177" supplier "Logical View::RouteSearchStateMachine::RouteSearchMachineFrontEnd" quidu "423A85740000"))) (object Association "$UNNAMED$36" quid "423F381B033B" roles (list role_list (object Role "$UNNAMED$37" quid "423F381C0102" supplier "Logical View::Packet::Path" quidu "423F2EF70174" client_cardinality (value cardinality "1") is_navigable TRUE) (object Role "$UNNAMED$38" quid "423F381C010C" supplier "Logical View::Packet::PathRouteReply" quidu "423F2D1F01F7" client_cardinality (value cardinality "1")))) (object Association "$UNNAMED$39" quid "423F38220345" roles (list role_list (object Role "$UNNAMED$40" quid "423F3823013E" supplier "Logical View::Packet::Path" quidu "423F2EF70174" client_cardinality (value cardinality "1") is_navigable TRUE) (object Role "$UNNAMED$41" quid "423F38230148" supplier "Logical View::Packet::PathRouteSearch" quidu "423F2E2F0004" client_cardinality (value cardinality "1")))) (object Association "$UNNAMED$42" quid "423F386B0354" roles (list role_list (object Role "$UNNAMED$43" quid "423F386C0125" supplier "Logical View::ComponentController" quidu "423F37B60169" client_cardinality (value cardinality "1") is_navigable TRUE) (object Role "$UNNAMED$44" quid "423F386C012F" supplier "Logical View::GenerateRouteReply::GenerateRouteReply" quidu "423A893B0177"))) (object Association "$UNNAMED$45" quid "423F386E022C" roles (list role_list (object Role "$UNNAMED$46" quid "423F386F0300" supplier "Logical View::ComponentController" quidu "423F37B60169" client_cardinality (value cardinality "1") is_navigable TRUE) (object Role "$UNNAMED$47" quid "423F386F030A" supplier "Logical View::TopologyDatebase::TopologyDatabase" quidu "423A854301B5"))) (object Association "$UNNAMED$48" quid "423F3876022E" roles (list role_list (object Role "$UNNAMED$49" quid "423F38780028" supplier "Logical View::ComponentController" quidu "423F37B60169" client_cardinality (value cardinality "1") is_navigable TRUE) (object Role "$UNNAMED$50" quid "423F38780032" supplier "Logical View::RouteSearchStateMachine::RouteSearchMachineFrontEnd" quidu "423A85740000"))) (object Association "$UNNAMED$51" quid "423F387A023E" roles (list role_list (object Role "$UNNAMED$52" quid "423F387B0325" supplier "Logical View::ComponentController" quidu "423F37B60169" client_cardinality (value cardinality "1") is_navigable TRUE) (object Role "$UNNAMED$53" quid "423F387B032F" supplier "Logical View::Prepropagator::SearchRegionLimiter" quidu "423A8664030D"))) (object Association "$UNNAMED$54" quid "423F387D035A" roles (list role_list (object Role "$UNNAMED$55" quid "423F387F021D" supplier "Logical View::ComponentController" quidu "423F37B60169" client_cardinality (value cardinality "1") is_navigable TRUE) (object Role "$UNNAMED$56" quid "423F387F0231" supplier "Logical View::FloodPropagator::FloodPropagator" quidu "423A883600BB"))) (object Association "$UNNAMED$57" quid "423F3A610158" roles (list role_list (object Role "mTopologyDatabase" quid "423F3A62007D" label "mTopologyDatabase" supplier "Logical View::TopologyDatebase::TopologyDatabase" quidu "423A854301B5" client_cardinality (value cardinality "1") is_navigable TRUE) (object Role "$UNNAMED$58" quid "423F3A620091" supplier "Logical View::NetworkLayerQueue" quidu "423F3A3302CE" Containment "By Reference"))) (object Association "$UNNAMED$59" quid "423F3A6501B7" roles (list role_list (object Role "mNetworkLayerQueue" quid "423F3A65035C" label "mNetworkLayerQueue" supplier "Logical View::NetworkLayerQueue" quidu "423F3A3302CE" client_cardinality (value cardinality "1") Containment "By Reference" exportControl "Private" is_navigable TRUE) (object Role "mPacketParser" quid "423F3A650366" label "mPacketParser" supplier "Logical View::PacketParse" quidu "423CF1AD0160" client_cardinality (value cardinality "1") Containment "By Reference" exportControl "Private" is_navigable TRUE))) (object Association "$UNNAMED$60" quid "423F3A6B02A6" roles (list role_list (object Role "$UNNAMED$61" quid "423F3A6C0370" supplier "Logical View::RouteSearchStateMachine::RouteSearchMachineFrontEnd" quidu "423A85740000" is_navigable TRUE) (object Role "$UNNAMED$62" quid "423F3A6C038E" supplier "Logical View::NetworkLayerQueue" quidu "423F3A3302CE"))) (object Association "$UNNAMED$63" quid "423F3A7F002E" roles (list role_list (object Role "mMAC" quid "423F3A7F02E1" label "mMAC" supplier "Logical View::MACInterface" quidu "423A848D035B" is_navigable TRUE) (object Role "$UNNAMED$64" quid "423F3A7F02F5" supplier "Logical View::NetworkLayerQueue" quidu "423F3A3302CE" Containment "By Reference"))) (object Association "$UNNAMED$65" quid "42406553007D" roles (list role_list (object Role "mPacketParser" quid "42406553037A" label "mPacketParser" supplier "Logical View::PacketParse" quidu "423CF1AD0160" client_cardinality (value cardinality "1") Containment "By Reference" is_navigable TRUE) (object Role "mPrepropagator" quid "42406553037C" label "mPrepropagator" supplier "Logical View::Prepropagator::PrepropagatorFront" quidu "4240651500EA" client_cardinality (value cardinality "1") Containment "By Reference" is_navigable TRUE))) (object Association "$UNNAMED$66" quid "424070D8008C" roles (list role_list (object Role "mTopologyDatabase" quid "424070D802EE" label "mTopologyDatabase" supplier "Logical View::TopologyDatebase::TopologyDatabase" quidu "423A854301B5" is_navigable TRUE) (object Role "$UNNAMED$67" quid "424070D802F0" supplier "Logical View::Prepropagator::PrepropagationRouteQualityEngine" quidu "4240659B009C" Containment "By Reference"))) (object Association "$UNNAMED$68" quid "424070DB0280" roles (list role_list (object Role "mGenerateRouteReply" quid "424070DC038A" label "mGenerateRouteReply" supplier "Logical View::GenerateRouteReply::GenerateRouteReply" quidu "423A893B0177" is_navigable TRUE) (object Role "$UNNAMED$69" quid "424070DC0399" supplier "Logical View::Prepropagator::PrepropagationRouteQualityEngine" quidu "4240659B009C" Containment "By Reference"))) (object Association "$UNNAMED$70" quid "4247797E01CA" roles (list role_list (object Role "PacketQueue" quid "4247797E0397" label "PacketQueue" supplier "Logical View::Packet::PacketQueue" quidu "423E362903AB" client_cardinality (value cardinality "1") is_navigable TRUE) (object Role "$UNNAMED$71" quid "4247797E03B5" supplier "Logical View::NetworkLayerQueue" quidu "423F3A3302CE" client_cardinality (value cardinality "1") Containment "By Value"))) (object Association "$UNNAMED$72" quid "4247B65902A8" roles (list role_list (object Role "mPacketQueue" quid "4247B65A0187" label "mPacketQueue" supplier "Logical View::Packet::PacketQueue" quidu "423E362903AB" client_cardinality (value cardinality "1") is_navigable TRUE) (object Role "$UNNAMED$73" quid "4247B65A01A5" supplier "Logical View::PacketParseQueue" quidu "4247B58D024A" Containment "By Value"))) (object Association "$UNNAMED$74" quid "4247D3A80379" roles (list role_list (object Role "mPacketTypeList" quid "4247D3A90212" label "mPacketTypeList" supplier "Logical View::PacketType" quidu "4247B58E01F2" client_cardinality (value cardinality "1") is_navigable TRUE) (object Role "$UNNAMED$75" quid "4247D3A9021C" supplier "Logical View::PacketParseQueue" quidu "4247B58D024A" client_cardinality (value cardinality "1") Containment "By Value"))) (object Association "$UNNAMED$76" quid "425A4A9100FB" roles (list role_list (object Role "mSemaphore" quid "425A4A910390" label "mSemaphore" supplier "Logical View::Misc::Semaphore" quidu "424A67940157" client_cardinality (value cardinality "1") is_navigable TRUE) (object Role "$UNNAMED$77" quid "425A4A9103A4" supplier "Logical View::PacketParseQueue" quidu "4247B58D024A" Containment "By Value"))) (object Association "$UNNAMED$78" quid "425A670E030A" roles (list role_list (object Role "$UNNAMED$79" quid "425A670F00DB" supplier "Logical View::ComponentController" quidu "423F37B60169" is_navigable TRUE) (object Role "$UNNAMED$80" quid "425A670F00E5" supplier "Logical View::FloodPropagator::Beaconing::Beaconing" quidu "425A625702F1"))) (object Class_Category "Prepropagator" quid "4240617901F4" exportControl "Public" logical_models (list unit_reference_list (object Class "PrepropagatorFront" quid "4240651500EA" documentation "There are several ways in which a received route search packet is not propagated. First, it may fail to meet various secuirty constraints. Second, if could be that a route reply has been generated. However, even in this case a the route search packet might be propagated; it depends on which class is used and the state of the route given in the reply. The third reason that a route search might not be propagated is that the search has reached its limit, i.e., the maximum hop count has been exceeded. The fourth way, is that the link over which teh packet was received is on low quality. The fifth way is that the FloodPropagation class restricts the density of the flood and as a result, the route search is not propagated." operations (list Operations (object Operation "AsyncRecPacket" quid "4248D4030167" documentation "This just starts a new thread and returns. " result "void" concurrency "Sequential" semantics (object Semantic_Info PDL "// new thread - ProcessRouteRequest") opExportControl "Public" uid 0) (object Operation "ProcessRouteRequest" quid "42640A160271" concurrency "Sequential" semantics (object Semantic_Info PDL |mRouteSearchInfo.DecodeToRouteSearchInfo(mPacket); | ) opExportControl "Public" uid 0)) class_attributes (list class_attribute_list (object ClassAttribute "mPacket" quid "424066440271" type "Packet" quidu "423D3534012C" Containment "By Value") (object ClassAttribute "mRouteSearchInfo" quid "42640A2D0080" type "RouteSearchInfo" quidu "423F2E100302")) statemachine (object State_Machine "State/Activity Model2" quid "42406B5C0213" states (list States (object State "waiting" quid "42406B6001E4" transitions (list transition_list (object State_Transition quid "42406B7001F4" label "" supplier "Preprocessing" quidu "42406B6802CE" Event (object Event "ThePacketParser.QueueEmpty=FALSE" quid "42406B7001F5") sendEvent (object sendEvent quid "42406B7001F7"))) type "Normal") (object State "Preprocessing" quid "42406B6802CE" transitions (list transition_list (object State_Transition quid "42406C360280" supplier "waiting" quidu "42406B6001E4" sendEvent (object sendEvent quid "42406C360283" Event (object Event "RecPacket" quid "42406C6D030E") parameters "RouteSearchPacket" target "PropagationSecurity"))) actions (list action_list (object action "RouteSearchPacket = Packet.ConvertToRouteSearch" quid "42406C7802FD" ActionTime (object ActionTime when "Entry"))) type "Normal")) partitions (list Partitions) objects (list Objects) statediagrams (list StateDiagrams (object State_Diagram "NewDiagram2" quid "42406B5C0232" title "NewDiagram2" zoom 100 max_height 28350 max_width 21600 origin_x 0 origin_y 0 items (list diagram_item_list (object StateView "Normal" "waiting" @13 location (1472, 336) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) label (object ItemLabel Parent_View @13 location (1472, 325) fill_color 13434879 anchor_loc 1 nlines 2 max_width 204 justify 0 label "waiting") icon_style "Icon" line_color 3342489 fill_color 13434879 quidu "42406B6001E4" autoResize TRUE) (object StateView "Normal" "Preprocessing" @14 location (1456, 960) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) label (object ItemLabel Parent_View @14 location (1456, 900) fill_color 13434879 anchor_loc 1 nlines 2 max_width 1108 justify 0 label "Preprocessing") icon_style "Icon" line_color 3342489 fill_color 13434879 quidu "42406B6802CE" compartment (object Compartment Parent_View @14 location (911, 941) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) icon_style "Icon" fill_color 13434879 anchor 2 nlines 1 max_width 1090 compartmentItems (list Compartment "entry/ RouteSearchPacket = Packet.ConvertToRouteSearch")) width 1204 height 232 autoResize TRUE) (object TransView "" @15 font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) label (object SegLabel @16 Parent_View @15 location (1486, 611) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) anchor_loc 1 nlines 1 max_width 720 justify 0 label "ThePacketParser.QueueEmpty=FALSE" pctDist 0.372059 height 12 orientation 0) stereotype TRUE line_color 3342489 quidu "42406B7001F4" client @13 supplier @14 line_style 0 x_offset FALSE) (object TransView "" @17 font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) label (object SegLabel @18 Parent_View @17 location (575, 439) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) anchor_loc 1 nlines 1 max_width 1151 justify 0 label " ^PropagationSecurity.RecPacket(RouteSearchPacket)" pctDist 0.664900 height 107 orientation 1) stereotype TRUE line_color 3342489 quidu "42406C360280" client @14 supplier @13 vertices (list Points (854, 868) (153, 763) (244, 331) (1322, 335)) line_style 0 x_offset FALSE)))))) (object Class "PrepropagationDoSDetector" quid "424065840399" operations (list Operations (object Operation "RecPacket" quid "4240670401E4" parameters (list Parameters (object Parameter "RouteSearchPacket" quid "4240672701A5" type "RouteSearchInfo" quidu "423F2E100302")) result "void" concurrency "Sequential" opExportControl "Public" uid 0)) class_attributes (list class_attribute_list (object ClassAttribute "mPacket" quid "4240666002AF" type "RouteSearchInfo" quidu "423F2E100302" Containment "By Value")) statemachine (object State_Machine "State/Activity Model4" quid "42406CDE01C5" states (list States (object State "waiting" quid "42406CE002CE" transitions (list transition_list (object State_Transition quid "42406D0003A9" label "" supplier "AddToHistory" quidu "42406CFE0203" Event (object Event "RecPacket" quid "42406D0003AA" parameters "RouteSearchPacket") sendEvent (object sendEvent quid "42406D0003AC"))) type "Normal") (object State "AddToHistory" quid "42406CFE0203" transitions (list transition_list (object State_Transition quid "42406D55037A" supplier "CheckIfDoS" quidu "42406D3C036B" sendEvent (object sendEvent quid "42406D55037D"))) type "Normal") (object State "CheckIfDoS" quid "42406D3C036B" transitions (list transition_list (object State_Transition quid "42406D94038A" supplier "$UNNAMED$81" quidu "42406D5802BF" sendEvent (object sendEvent quid "42406D94038D"))) actions (list action_list (object action "" quid "42406D630232" ActionTime (object ActionTime when "Entry"))) type "Normal") (object Decision "$UNNAMED$81" quid "42406D5802BF" transitions (list transition_list (object State_Transition quid "42406D5F0167" label "" supplier "waiting" quidu "42406CE002CE" Event (object Event "DoS=TRUE" quid "42406D5F0168") sendEvent (object sendEvent quid "42406D5F016A")) (object State_Transition quid "42406DB20242" label "" supplier "waiting" quidu "42406CE002CE" Event (object Event "DoS=FALSE" quid "42406DB20243") sendEvent (object sendEvent quid "42406DB20245" Event (object Event "RecPacket" quid "42406DF401B0") parameters "RouteRequest" target "RouteQualityEngine"))))) partitions (list Partitions) objects (list Objects) statediagrams (list StateDiagrams (object State_Diagram "NewDiagram3" quid "42406CDE01D4" title "NewDiagram3" zoom 100 max_height 28350 max_width 21600 origin_x 0 origin_y 0 items (list diagram_item_list (object StateView "Normal" "waiting" @19 location (816, 320) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) label (object ItemLabel Parent_View @19 location (816, 309) fill_color 13434879 anchor_loc 1 nlines 2 max_width 204 justify 0 label "waiting") icon_style "Icon" line_color 3342489 fill_color 13434879 quidu "42406CE002CE" autoResize TRUE) (object StateView "Normal" "AddToHistory" @20 location (816, 672) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) label (object ItemLabel Parent_View @20 location (816, 663) fill_color 13434879 anchor_loc 1 nlines 2 max_width 322 justify 0 label "AddToHistory") icon_style "Icon" line_color 3342489 fill_color 13434879 quidu "42406CFE0203" width 418 height 131 autoResize TRUE) (object TransView "" @21 font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) label (object SegLabel @22 Parent_View @21 location (843, 471) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) anchor_loc 1 nlines 1 max_width 612 justify 0 label "RecPacket( RouteSearchPacket )" pctDist 0.452624 height 27 orientation 0) stereotype TRUE line_color 3342489 quidu "42406D0003A9" client @19 supplier @20 line_style 0 x_offset FALSE) (object StateView "Normal" "CheckIfDoS" @23 location (816, 944) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) label (object ItemLabel Parent_View @23 location (816, 918) fill_color 13434879 anchor_loc 1 nlines 2 max_width 360 justify 0 label "CheckIfDoS") icon_style "Icon" line_color 3342489 fill_color 13434879 quidu "42406D3C036B" compartment (object Compartment Parent_View @23 location (645, 959) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) icon_style "Icon" fill_color 13434879 anchor 2 nlines 1 max_width 125 compartmentItems (list Compartment "entry/ ")) width 456 height 165 autoResize TRUE) (object TransView "" @24 stereotype TRUE line_color 3342489 quidu "42406D55037A" client @20 supplier @23 line_style 0 x_offset FALSE) (object DecisionView "$UNNAMED$81" @25 location (816, 1232) icon_style "Icon" line_color 3342489 fill_color 13434879 quidu "42406D5802BF" autoResize TRUE) (object TransView "" @26 font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) label (object SegLabel @27 Parent_View @26 location (360, 810) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) anchor_loc 1 nlines 1 max_width 450 justify 0 label "DoS=TRUE" pctDist 0.417862 height 7 orientation 1) stereotype TRUE line_color 3342489 quidu "42406D5F0167" client @25 supplier @19 vertices (list Points (741, 1232) (322, 1125) (353, 363) (666, 333)) line_style 0 x_offset FALSE) (object TransView "" @28 stereotype TRUE line_color 3342489 quidu "42406D94038A" client @23 supplier @25 line_style 0 x_offset FALSE) (object TransView "" @29 font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) label (object SegLabel @30 Parent_View @29 location (1470, 829) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) anchor_loc 1 nlines 3 max_width 513 justify 0 label "DoS=FALSE ^RouteQualityEngine.RecPacket(RouteRequest)" pctDist 0.461407 height 226 orientation 1) stereotype TRUE line_color 3342489 quidu "42406DB20242" client @25 supplier @19 vertices (list Points (891, 1232) (1234, 1156) (1259, 316) (966, 318)) line_style 0 x_offset FALSE)))))) (object Class "PrepropagationRouteQualityEngine" quid "4240659B009C" documentation "This decides to propagate a search depending of whether a route reply has been generated and, if so, if the route found is of sufficient quality." operations (list Operations (object Operation "RecPacket" quid "4247FBE70338" parameters (list Parameters (object Parameter "mPacket" quid "4248E48E01C5" type "RouteSearchInfo" quidu "423F2E100302")) result "void" concurrency "Sequential" opExportControl "Public" uid 0)) class_attributes (list class_attribute_list (object ClassAttribute "mPacket" quid "42406683031C" type "RouteSearchInfo" quidu "423F2E100302" Containment "By Value")) statemachine (object State_Machine "State/Activity Model4" quid "424070B0031C" states (list States (object State "waiting" quid "424071F10222" transitions (list transition_list (object State_Transition quid "424071FA0167" label "" supplier "CheckIfRouteReplyWasGenerated" quidu "424071F8009C" Event (object Event "RecPacket" quid "424071FA0168") sendEvent (object sendEvent quid "424071FA016A"))) type "Normal") (object State "CheckIfRouteReplyWasGenerated" quid "424071F8009C" transitions (list transition_list (object State_Transition quid "424072A8029F" supplier "$UNNAMED$82" quidu "424072A601E4" sendEvent (object sendEvent quid "424072A802A2"))) type "Normal") (object State "CheckIfRouteFoundIsGoodEnough" quid "424072940119" transitions (list transition_list (object State_Transition quid "424072BB02AF" supplier "$UNNAMED$83" quidu "424072B803B9" sendEvent (object sendEvent quid "424072BB02B2"))) type "Normal") (object Decision "$UNNAMED$82" quid "424072A601E4" transitions (list transition_list (object State_Transition quid "424072AB035B" label "" supplier "CheckIfRouteFoundIsGoodEnough" quidu "424072940119" Event (object Event "FoundRoute" quid "424072AB035C") sendEvent (object sendEvent quid "424072AB035E")) (object State_Transition quid "424072E0029F" label "" supplier "waiting" quidu "424071F10222" Event (object Event "NoRouteReplyGenerated" quid "424072E002A0") sendEvent (object sendEvent quid "424072E002A2" Event (object Event "RecPacket" quid "4240733800B6") parameters "RouteRequestPacket" target "PropagationEngine")))) (object Decision "$UNNAMED$83" quid "424072B803B9" transitions (list transition_list (object State_Transition quid "424072BF0119" label "" supplier "waiting" quidu "424071F10222" Event (object Event "RouteFoundIsGoodEnough" quid "424072BF011A") sendEvent (object sendEvent quid "424072BF011C")) (object State_Transition quid "424072E5002E" label "" supplier "waiting" quidu "424071F10222" Event (object Event "RouteIsNotGoodEnough" quid "424072E5002F") sendEvent (object sendEvent quid "424072E50031" Event (object Event "RecPacket" quid "4240730C0308") parameters "RouteRequestPacket" target "PropagationEngine"))))) partitions (list Partitions) objects (list Objects) statediagrams (list StateDiagrams (object State_Diagram "NewDiagram4" quid "424070B0033C" title "NewDiagram4" zoom 100 max_height 28350 max_width 21600 origin_x 0 origin_y 488 items (list diagram_item_list (object StateView "Normal" "waiting" @31 location (976, 320) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) label (object ItemLabel Parent_View @31 location (976, 309) fill_color 13434879 anchor_loc 1 nlines 2 max_width 204 justify 0 label "waiting") icon_style "Icon" line_color 3342489 fill_color 13434879 quidu "424071F10222" autoResize TRUE) (object StateView "Normal" "CheckIfRouteReplyWasGenerated" @32 location (976, 672) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) label (object ItemLabel Parent_View @32 location (976, 653) fill_color 13434879 anchor_loc 1 nlines 2 max_width 648 justify 0 label "CheckIfRouteReplyWasGenerated") icon_style "Icon" line_color 3342489 fill_color 13434879 quidu "424071F8009C" width 744 height 150 autoResize TRUE) (object TransView "" @33 font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) label (object SegLabel @34 Parent_View @33 location (1002, 463) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) anchor_loc 1 nlines 1 max_width 450 justify 0 label "RecPacket" pctDist 0.448718 height 30 orientation 0) stereotype TRUE line_color 3342489 quidu "424071FA0167" client @31 supplier @32 line_style 0 x_offset FALSE) (object StateView "Normal" "CheckIfRouteFoundIsGoodEnough" @35 location (576, 1088) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) label (object ItemLabel Parent_View @35 location (576, 1068) fill_color 13434879 anchor_loc 1 nlines 2 max_width 342 justify 0 label "CheckIfRouteFoundIsGoodEnough") icon_style "Icon" line_color 3342489 fill_color 13434879 quidu "424072940119" width 438 height 152 autoResize TRUE) (object DecisionView "$UNNAMED$82" @36 location (896, 864) icon_style "Icon" line_color 3342489 fill_color 13434879 quidu "424072A601E4" autoResize TRUE) (object TransView "" @37 stereotype TRUE line_color 3342489 quidu "424072A8029F" client @32 supplier @36 line_style 0 x_offset FALSE) (object TransView "" @38 font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) label (object SegLabel @39 Parent_View @38 location (740, 936) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) anchor_loc 1 nlines 1 max_width 450 justify 0 label "FoundRoute" pctDist 0.493852 height 1 orientation 1) stereotype TRUE line_color 3342489 quidu "424072AB035B" client @36 supplier @35 line_style 0 x_offset FALSE) (object DecisionView "$UNNAMED$83" @40 location (496, 1328) icon_style "Icon" line_color 3342489 fill_color 13434879 quidu "424072B803B9" autoResize TRUE) (object TransView "" @41 stereotype TRUE line_color 3342489 quidu "424072BB02AF" client @35 supplier @40 line_style 0 x_offset FALSE) (object TransView "" @42 font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) label (object SegLabel @43 Parent_View @42 location (289, 525) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) anchor_loc 1 nlines 1 max_width 498 justify 0 label "RouteFoundIsGoodEnough" pctDist 0.512109 height 146 orientation 1) stereotype TRUE line_color 3342489 quidu "424072BF0119" client @40 supplier @31 vertices (list Points (421, 1328) (100, 1241) (163, 181) (826, 294)) line_style 0 x_offset FALSE) (object TransView "" @44 font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) label (object SegLabel @45 Parent_View @44 location (1438, 848) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) anchor_loc 1 nlines 3 max_width 575 justify 0 label "NoRouteReplyGenerated ^PropagationEngine.RecPacket(RouteRequestPacket)" pctDist 0.297959 height 5 orientation 1) stereotype TRUE line_color 3342489 quidu "424072E0029F" client @36 supplier @31 vertices (list Points (971, 864) (1613, 835) (1544, 332) (1126, 323)) line_style 0 x_offset FALSE) (object TransView "" @46 font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) label (object SegLabel @47 Parent_View @46 location (1245, 1342) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) anchor_loc 1 nlines 2 max_width 988 justify 0 label "RouteIsNotGoodEnough ^PropagationEngine.RecPacket(RouteRequestPacket)" pctDist 0.221661 height 7 orientation 1) stereotype TRUE line_color 3342489 quidu "424072E5002E" client @40 supplier @31 vertices (list Points (571, 1328) (1869, 1341) (1850, 322) (1126, 320)) line_style 0 x_offset FALSE)))))) (object Class "SearchRegionLimiter" quid "423A8664030D" documentation "This class determines if the search should be propagated, or if a delay should be imposed to allow for more search packets to arrive, or if this search packet has been seen, but the path advertised in this packet is better. " operations (list Operations (object Operation "UpdateCheckRegion" quid "42403F640232" parameters (list Parameters (object Parameter "Packet" quid "4240457A036B" type "RouteSearchInfo" quidu "423F2E100302")) result "Packet" concurrency "Sequential" opExportControl "Public" uid 0 quidu "423D3534012C") (object Operation "RecPacket" quid "4247FBC902C7" parameters (list Parameters (object Parameter "mPacket" quid "4248E4C7031C" type "RouteSearchInfo" quidu "423F2E100302")) result "void" concurrency "Sequential" opExportControl "Public" uid 0)) statemachine (object State_Machine "State/Activity Model5" quid "424073D301A5" states (list States (object State "Waiting" quid "424073DB006D" transitions (list transition_list (object State_Transition quid "424074060148" supplier "UpdateCheckRegion" quidu "424073E4036B" sendEvent (object sendEvent quid "42407406014B"))) type "Normal") (object State "UpdateCheckRegion" quid "424073E4036B" transitions (list transition_list (object State_Transition quid "424074080167" supplier "$UNNAMED$84" quidu "42407404000F" sendEvent (object sendEvent quid "42407408016A"))) type "Normal") (object Decision "$UNNAMED$84" quid "42407404000F" transitions (list transition_list (object State_Transition quid "4240740C005D" label "" supplier "Waiting" quidu "424073DB006D" Event (object Event "OutOfRegion" quid "4240740C005E") sendEvent (object sendEvent quid "4240740C0060")) (object State_Transition quid "4240744E0251" label "" supplier "CheckIfSeenBefore" quidu "4240741F0186" Event (object Event "WithinRegion" quid "4240744E0252") sendEvent (object sendEvent quid "4240744E0254")))) (object State "CheckIfSeenBefore" quid "4240741F0186" transitions (list transition_list (object State_Transition quid "4240744902EE" supplier "$UNNAMED$85" quidu "424074470177" sendEvent (object sendEvent quid "4240744902F1"))) type "Normal") (object Decision "$UNNAMED$85" quid "424074470177" transitions (list transition_list (object State_Transition quid "4240745C0138" label "" supplier "CheckQuality" quidu "424074590196" Event (object Event "SeenBefore" quid "4240745C0139") sendEvent (object sendEvent quid "4240745C013B")) (object State_Transition quid "4240749F006D" label "" supplier "Propagate" quidu "4240749700DA" Event (object Event "NotSeen" quid "4240749F006E") sendEvent (object sendEvent quid "4240749F0070")))) (object State "CheckQuality" quid "424074590196" transitions (list transition_list (object State_Transition quid "424074790203" supplier "$UNNAMED$86" quidu "4240747700DA" sendEvent (object sendEvent quid "424074790206"))) type "Normal") (object Decision "$UNNAMED$86" quid "4240747700DA" transitions (list transition_list (object State_Transition quid "4240747F0186" label "" supplier "Waiting" quidu "424073DB006D" Event (object Event "QualityNotGoodEnough" quid "4240747F0187") sendEvent (object sendEvent quid "4240747F0189")) (object State_Transition quid "424074FB006D" label "" supplier "Propagate" quidu "4240749700DA" Event (object Event "BetterQuality" quid "424074FB006E") sendEvent (object sendEvent quid "424074FB0070")))) (object State "Propagate" quid "4240749700DA" transitions (list transition_list (object State_Transition quid "424074A803D8" supplier "Waiting" quidu "424073DB006D" sendEvent (object sendEvent quid "424074A803DB" Event (object Event "RecPacket" quid "424074C901EF") parameters "RouteSearchPacket" target "mFloodPropagator"))) type "Normal")) partitions (list Partitions) objects (list Objects) statediagrams (list StateDiagrams (object State_Diagram "NewDiagram5" quid "424073D301F4" title "NewDiagram5" zoom 100 max_height 28350 max_width 21600 origin_x 0 origin_y 0 items (list diagram_item_list (object StateView "Normal" "Waiting" @48 location (912, 336) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) label (object ItemLabel Parent_View @48 location (912, 325) fill_color 13434879 anchor_loc 1 nlines 2 max_width 204 justify 0 label "Waiting") icon_style "Icon" line_color 3342489 fill_color 13434879 quidu "424073DB006D" autoResize TRUE) (object StateView "Normal" "UpdateCheckRegion" @49 location (912, 752) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) label (object ItemLabel Parent_View @49 location (912, 733) fill_color 13434879 anchor_loc 1 nlines 2 max_width 416 justify 0 label "UpdateCheckRegion") icon_style "Icon" line_color 3342489 fill_color 13434879 quidu "424073E4036B" width 513 height 150 autoResize TRUE) (object DecisionView "$UNNAMED$84" @50 location (912, 1056) icon_style "Icon" line_color 3342489 fill_color 13434879 quidu "42407404000F" autoResize TRUE) (object TransView "" @51 stereotype TRUE line_color 3342489 quidu "424074060148" client @48 supplier @49 line_style 0 x_offset FALSE) (object TransView "" @52 stereotype TRUE line_color 3342489 quidu "424074080167" client @49 supplier @50 line_style 0 x_offset FALSE) (object StateView "Normal" "CheckIfSeenBefore" @53 location (912, 1312) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) label (object ItemLabel Parent_View @53 location (912, 1301) fill_color 13434879 anchor_loc 1 nlines 2 max_width 204 justify 0 label "CheckIfSeenBefore") icon_style "Icon" line_color 3342489 fill_color 13434879 quidu "4240741F0186" autoResize TRUE) (object DecisionView "$UNNAMED$85" @54 location (912, 1488) icon_style "Icon" line_color 3342489 fill_color 13434879 quidu "424074470177" autoResize TRUE) (object TransView "" @55 stereotype TRUE line_color 3342489 quidu "4240744902EE" client @53 supplier @54 line_style 0 x_offset FALSE) (object StateView "Normal" "CheckQuality" @56 location (544, 1776) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) label (object ItemLabel Parent_View @56 location (544, 1745) fill_color 13434879 anchor_loc 1 nlines 2 max_width 310 justify 0 label "CheckQuality") icon_style "Icon" line_color 3342489 fill_color 13434879 quidu "424074590196" width 406 height 175 autoResize TRUE) (object DecisionView "$UNNAMED$86" @57 location (544, 2048) icon_style "Icon" line_color 3342489 fill_color 13434879 quidu "4240747700DA" autoResize TRUE) (object TransView "" @58 stereotype TRUE line_color 3342489 quidu "424074790203" client @56 supplier @57 line_style 0 x_offset FALSE) (object StateView "Normal" "Propagate" @59 location (1152, 2048) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) label (object ItemLabel Parent_View @59 location (1152, 2026) fill_color 13434879 anchor_loc 1 nlines 2 max_width 334 justify 0 label "Propagate") icon_style "Icon" line_color 3342489 fill_color 13434879 quidu "4240749700DA" width 431 height 156 autoResize TRUE) (object TransView "" @60 font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) label (object SegLabel @61 Parent_View @60 location (228, 1963) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) anchor_loc 1 nlines 1 max_width 450 justify 0 label "QualityNotGoodEnough" pctDist 0.150857 height 69 orientation 0) stereotype TRUE line_color 3342489 quidu "4240747F0186" client @57 supplier @48 vertices (list Points (469, 2048) (159, 2049) (159, 337) (762, 336)) line_style 0 x_offset FALSE) (object TransView "" @62 font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) label (object SegLabel @63 Parent_View @62 location (803, 2087) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) anchor_loc 1 nlines 1 max_width 450 justify 0 label "BetterQuality" pctDist 0.422158 height 39 orientation 1) stereotype TRUE line_color 3342489 quidu "424074FB006D" client @57 supplier @59 line_style 0 x_offset FALSE) (object TransView "" @64 font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) label (object SegLabel @65 Parent_View @64 location (1715, 1666) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) anchor_loc 1 nlines 1 max_width 1256 justify 0 label " ^mFloodPropagator.RecPacket(RouteSearchPacket)" pctDist 0.257087 height 69 orientation 0) stereotype TRUE line_color 3342489 quidu "424074A803D8" client @59 supplier @48 vertices (list Points (1367, 2048) (1646, 2049) (1646, 337) (1062, 336)) line_style 0 x_offset FALSE) (object TransView "" @66 font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) label (object SegLabel @67 Parent_View @66 location (583, 956) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) anchor_loc 1 nlines 1 max_width 450 justify 0 label "OutOfRegion" pctDist 0.319253 height 40 orientation 1) stereotype TRUE line_color 3342489 quidu "4240740C005D" client @50 supplier @48 vertices (list Points (837, 1056) (543, 1055) (543, 337) (762, 336)) line_style 0 x_offset FALSE) (object TransView "" @68 font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) label (object SegLabel @69 Parent_View @68 location (936, 1141) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) anchor_loc 1 nlines 1 max_width 450 justify 0 label "WithinRegion" pctDist 0.414474 height 29 orientation 0) stereotype TRUE line_color 3342489 quidu "4240744E0251" client @50 supplier @53 line_style 0 x_offset FALSE) (object TransView "" @70 font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) label (object SegLabel @71 Parent_View @70 location (764, 1544) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) anchor_loc 1 nlines 1 max_width 450 justify 0 label "SeenBefore" pctDist 0.500000 height 45 orientation 0) stereotype TRUE line_color 3342489 quidu "4240745C0138" client @54 supplier @56 line_style 0 x_offset FALSE) (object TransView "" @72 font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) label (object SegLabel @73 Parent_View @72 location (1044, 1703) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) anchor_loc 1 nlines 1 max_width 450 justify 0 label "NotSeen" pctDist 0.500000 height 45 orientation 0) stereotype TRUE line_color 3342489 quidu "4240749F006D" client @54 supplier @59 line_style 0 x_offset FALSE) (object NoteView @74 location (432, 96) font (object Font size 10 face "Arial" bold FALSE italics FALSE underline FALSE strike FALSE color 0 default_color TRUE) label (object ItemLabel Parent_View @74 location (32, 37) fill_color 13434879 nlines 2 max_width 765 label "Prepropagator:PrepropagatorEngine") line_color 3342489 fill_color 13434879 width 825 height 131)))))) (object Class "LinkStabilityAssessment" quid "42491D780186" superclasses (list inheritance_relationship_list (object Inheritance_Relationship quid "42491DB702AF" supplier "Logical View::Prepropagator::LinkQualityAssessment" quidu "42491AC30109")) operations (list Operations (object Operation "CheckLinkQuality" quid "4264116D0269" result "Boolean" concurrency "Sequential" opExportControl "Public" uid 0) (object Operation "EncodePacket" quid "42647C03039B" concurrency "Sequential" opExportControl "Public" uid 0) (object Operation "DecodePacket" quid "42647C0C0087" concurrency "Sequential" opExportControl "Public" uid 0))) (object Class "RouteSearchInfo" quid "423F2E100302" documentation |A route search data structure is embedded in the RouteSearchInfo. Here we only consider route searches that are limited by region. The region could be determined by the number if hops or by geographical information. There are many subclasses derived from the RouteSearchInfo class. While RouteSearchInfo is able to encode and decode the attributes that are contained in this class, the subclasses must decode and encode the data that is specialized to them. For example, the GeoRegionSearchInfo class must encode and decode the Center and MaxRadius from ControlData. The child class is responsable for calling the correct encode and decode functions and updating the ControlDataSize. | |Besides encoding and decoding packets, this class (or more specifically, the subclasses) implement theUpdateAndCheckRegion function. This function plays a key role in limiting the range of the search. Thus, this function defines the route search method. Of course, the type of flooding can indirectly impact the route search. | |Some subclasses also determine if the links over which the packet arrives is of suitable quality. This behavior mimics SSA where the search is restricted to links that meet certain stability constraints. operations (list Operations (object Operation "UpdateAndCheckRegion" quid "423F3C3C007E" documentation |This checks if the route search can be propagated |TRUE is returned if it can be propagated |In this case the region is updated and is ready to be reencoded into the packet. |This function is implemented by the child classes. result "Boolean" concurrency "Sequential" opExportControl "Public" uid 0) (object Operation "DecodeToRouteSearchPacket" quid "424906770280" parameters (list Parameters (object Parameter "PacketIn" quid "42490698004E" type "Packet" quidu "423D3534012C")) result "void" concurrency "Sequential" opExportControl "Public" uid 0) (object Operation "EncodeToPacket" quid "424906B5035B" result "Packet" concurrency "Sequential" opExportControl "Public" uid 0 quidu "423D3534012C")) class_attributes (list class_attribute_list (object ClassAttribute "FloodType" quid "423F36EF0240" type "Integer" initv "0") (object ClassAttribute "SeqNum" quid "423FD5680303" type "Long" initv "0") (object ClassAttribute "UseGoodLinksOnly" quid "42491CEB001F" type "Boolean" initv "FALSE" Containment "By Value"))) (object Class "HopCountSearchInfo" quid "423F3D9F018D" superclasses (list inheritance_relationship_list (object Inheritance_Relationship quid "423F3DC70271" supplier "Logical View::Prepropagator::RouteSearchInfo" quidu "423F2E100302")) operations (list Operations (object Operation "EncodeRouteSearchPacket" quid "42490C1D030D" parameters (list Parameters (object Parameter "mPacket" quid "42490C4502CE" type "Packet" quidu "423D3534012C")) result "Packet" concurrency "Sequential" opExportControl "Public" uid 0 quidu "423D3534012C") (object Operation "DecodeRouteSearchPacket" quid "42490C5C003E" parameters (list Parameters (object Parameter "mPacket" quid "42490C71001F" type "Packet" quidu "423D3534012C")) result "void" concurrency "Sequential" opExportControl "Public" uid 0) (object Operation "UpdateAndCheckRegion" quid "42640D9100EC" documentation |This checks if the route search can be propagated |TRUE is returned if it can be propagated |In this case the region is updated and is ready to be reencoded into the packet. result "Boolean" concurrency "Sequential" semantics (object Semantic_Info PDL |if (NumHop>=MaxNumHops) |{ |return FALSE; |} |else |{ |NumHops++; |return TRUE; |} ) opExportControl "Public" uid 0)) class_attributes (list class_attribute_list (object ClassAttribute "NumHops" quid "423F3DF5021D") (object ClassAttribute "MaxNumHops" quid "423F3E160120"))) (object Class "HopCountPathBasedWithLinkStability" quid "4249078002EE" superclasses (list inheritance_relationship_list (object Inheritance_Relationship quid "424907A7036B" supplier "Logical View::Packet::PathRouteSearch" quidu "423F2E2F0004") (object Inheritance_Relationship quid "42491E70007D" supplier "Logical View::Prepropagator::LinkStabilityAssessment" quidu "42491D780186") (object Inheritance_Relationship quid "426412B401BF" supplier "Logical View::Prepropagator::HopCountWithLinkQualityAssessment" quidu "4264126802D8")) operations (list Operations (object Operation "EncodeRouteSearch" quid "4264582C024D" concurrency "Sequential" semantics (object Semantic_Info PDL |PathRouteSearch::EncodeRouteSearch(); |LinkSignalStrengthAssessment::EncodeRouteSearch(); |HopCountSearchInfo.EncodeRouteSearch(); ) opExportControl "Public" uid 0) (object Operation "DecodeRouteSearch" quid "42645834026D" concurrency "Sequential" semantics (object Semantic_Info PDL |PathRouteSearch::EncodePacket(); |HopCountSearchInfo::EncodePacket(); ) opExportControl "Public" uid 0) (object Operation "UpdateAndCheckRegion" quid "42647DEC02C2" concurrency "Sequential" opExportControl "Public" uid 0))) (object Class "HopCountPathBasedWithLinkSignalStrength" quid "42491E6B006D" superclasses (list inheritance_relationship_list (object Inheritance_Relationship quid "42491E7D0128" supplier "Logical View::Packet::PathRouteSearch" quidu "423F2E2F0004") (object Inheritance_Relationship quid "42491E8D0399" supplier "Logical View::Prepropagator::LinkSignalStrengthAssessment" quidu "42491D9701A5") (object Inheritance_Relationship quid "4264129003E4" supplier "Logical View::Prepropagator::HopCountWithLinkQualityAssessment" quidu "4264126802D8")) operations (list Operations (object Operation "EncodeRouteSearch" quid "426474D100A3" result "Boolean" concurrency "Sequential" opExportControl "Public" uid 0) (object Operation "DecodeRouteSearch" quid "4264755801D4" result "Boolean" concurrency "Sequential" opExportControl "Public" uid 0) (object Operation "UpdateAndCheckRegion" quid "42647E06005C" concurrency "Sequential" opExportControl "Public" uid 0))) (object Class "GeoRegionPathBasedWithLinkStability" quid "424909B8035B" superclasses (list inheritance_relationship_list (object Inheritance_Relationship quid "424909BD0177" supplier "Logical View::Packet::PathRouteSearch" quidu "423F2E2F0004") (object Inheritance_Relationship quid "42491E2903C8" supplier "Logical View::Prepropagator::LinkStabilityAssessment" quidu "42491D780186") (object Inheritance_Relationship quid "426449000018" supplier "Logical View::Prepropagator::GeoRegionWithLinkQualityAssessment" quidu "4264489A0206")) operations (list Operations (object Operation "EncodeRouteSearch" quid "426475A60095" result "Packet" concurrency "Sequential" opExportControl "Public" uid 0 quidu "423D3534012C") (object Operation "DecodeRouteSearch" quid "426475B0023E" parameters (list Parameters (object Parameter "tPacket" quid "42647B58010A" type "Packet" quidu "423D3534012C")) result "void" concurrency "Sequential" opExportControl "Public" uid 0) (object Operation "UpdateAndCheckRegion" quid "42647E1903B7" concurrency "Sequential" opExportControl "Public" uid 0))) (object Class "GeoRegionPathBasedWithSignalStrength" quid "42491E4D01C5" superclasses (list inheritance_relationship_list (object Inheritance_Relationship quid "42491E5201C5" supplier "Logical View::Packet::PathRouteSearch" quidu "423F2E2F0004") (object Inheritance_Relationship quid "42491E5902DE" supplier "Logical View::Prepropagator::LinkSignalStrengthAssessment" quidu "42491D9701A5") (object Inheritance_Relationship quid "426448F90299" supplier "Logical View::Prepropagator::GeoRegionWithLinkQualityAssessment" quidu "4264489A0206")) operations (list Operations (object Operation "EncodeRouteSearch" quid "42647AEA0292" result "PacketParse" concurrency "Sequential" opExportControl "Public" uid 0 quidu "423CF1AD0160") (object Operation "DecodeRouteSearch" quid "42647AF2012B" concurrency "Sequential" opExportControl "Public" uid 0) (object Operation "UpdateAndCheckRegion" quid "42647E360065" concurrency "Sequential" opExportControl "Public" uid 0))) (object Class "GeoRegionSearchInfo" quid "423F3DCC0354" superclasses (list inheritance_relationship_list (object Inheritance_Relationship quid "423F3DDE022E" supplier "Logical View::Prepropagator::RouteSearchInfo" quidu "423F2E100302")) operations (list Operations (object Operation "EncodeRouteSearchPacket" quid "424918CB0203" parameters (list Parameters (object Parameter "mPacket" quid "424918F6033C" type "Packet" quidu "423D3534012C")) result "Packet" concurrency "Sequential" opExportControl "Public" uid 0 quidu "423D3534012C") (object Operation "DecodeRouteSearchPacket" quid "42491906037A" parameters (list Parameters (object Parameter "mPacket" quid "424919150213" type "Packet" quidu "423D3534012C")) result "void" concurrency "Sequential" opExportControl "Public" uid 0) (object Operation "UpdateAndCheckRegion" quid "42640E5D01FE" concurrency "Sequential" opExportControl "Public" uid 0)) class_attributes (list class_attribute_list (object ClassAttribute "Center" quid "423F3E000377") (object ClassAttribute "MaxRadius" quid "423F3E09030C"))) (object Class "GeoRegionTableBasedWithSignalStrength" quid "42491F6D0148" superclasses (list inheritance_relationship_list (object Inheritance_Relationship quid "42491F7B0138" supplier "Logical View::Packet::TableRouteSearch" quidu "423F2E2203BD") (object Inheritance_Relationship quid "42491F82034B" supplier "Logical View::Prepropagator::LinkSignalStrengthAssessment" quidu "42491D9701A5") (object Inheritance_Relationship quid "426448EB0202" supplier "Logical View::Prepropagator::GeoRegionWithLinkQualityAssessment" quidu "4264489A0206")) operations (list Operations (object Operation "EncodePacket" quid "42647C1B027D" concurrency "Sequential" opExportControl "Public" uid 0) (object Operation "DecodePacket" quid "42647C2302BB" concurrency "Sequential" opExportControl "Public" uid 0) (object Operation "UpdateAndCheckRegion" quid "42647E460361" concurrency "Sequential" opExportControl "Public" uid 0))) (object Class "GeoRegionTableBasedWithLinkStability" quid "424909E5003E" superclasses (list inheritance_relationship_list (object Inheritance_Relationship quid "424909EB035B" supplier "Logical View::Packet::TableRouteSearch" quidu "423F2E2203BD") (object Inheritance_Relationship quid "42491F860000" supplier "Logical View::Prepropagator::LinkStabilityAssessment" quidu "42491D780186") (object Inheritance_Relationship quid "426448F303B2" supplier "Logical View::Prepropagator::GeoRegionWithLinkQualityAssessment" quidu "4264489A0206")) operations (list Operations (object Operation "EncodePacket" quid "42647C320366" concurrency "Sequential" opExportControl "Public" uid 0) (object Operation "DecodePacket" quid "42647C3A00AB" concurrency "Sequential" opExportControl "Public" uid 0) (object Operation "UpdateAndCheckRegion" quid "42647E5200AC" concurrency "Sequential" opExportControl "Public" uid 0))) (object Class "HopCountTableBasedWithSignalStrength" quid "42491F52005D" superclasses (list inheritance_relationship_list (object Inheritance_Relationship quid "42491F640000" supplier "Logical View::Prepropagator::LinkSignalStrengthAssessment" quidu "42491D9701A5") (object Inheritance_Relationship quid "42491F780290" supplier "Logical View::Packet::TableRouteSearch" quidu "423F2E2203BD") (object Inheritance_Relationship quid "426412B00336" supplier "Logical View::Prepropagator::HopCountWithLinkQualityAssessment" quidu "4264126802D8")) operations (list Operations (object Operation "EncodePacket" quid "42647C50002A" concurrency "Sequential" opExportControl "Public" uid 0) (object Operation "DecodePacket" quid "42647C5702A1" concurrency "Sequential" opExportControl "Public" uid 0) (object Operation "UpdateAndCheckRegion" quid "42647E5A025C" concurrency "Sequential" opExportControl "Public" uid 0))) (object Class "HopCountTableBasedWithLinkStability" quid "424909E2004E" superclasses (list inheritance_relationship_list (object Inheritance_Relationship quid "424909EF01F4" supplier "Logical View::Packet::TableRouteSearch" quidu "423F2E2203BD") (object Inheritance_Relationship quid "42491F5D0399" supplier "Logical View::Prepropagator::LinkStabilityAssessment" quidu "42491D780186") (object Inheritance_Relationship quid "426412AC0308" supplier "Logical View::Prepropagator::HopCountWithLinkQualityAssessment" quidu "4264126802D8")) operations (list Operations (object Operation "EncodePacket" quid "42647CDE009D" concurrency "Sequential" opExportControl "Public" uid 0) (object Operation "DecodePacket" quid "42647CE402F4" concurrency "Sequential" opExportControl "Public" uid 0) (object Operation "UpdateAndCheckRegion" quid "42647E620330" concurrency "Sequential" opExportControl "Public" uid 0))) (object Class "LinkQualityAssessment" quid "42491AC30109" operations (list Operations (object Operation "CheckLinkQuality" quid "42491D2701F4" parameters (list Parameters (object Parameter "Sender" quid "42491D500000" type "RouteSearchInfo" quidu "423F2E100302")) result "Boolean" concurrency "Sequential" opExportControl "Public" uid 0))) (object Class "LinkSignalStrengthAssessment" quid "42491D9701A5" superclasses (list inheritance_relationship_list (object Inheritance_Relationship quid "42491DBA0213" supplier "Logical View::Prepropagator::LinkQualityAssessment" quidu "42491AC30109")) operations (list Operations (object Operation "CheckLinkQuality" quid "4264115A0208" result "Boolean" concurrency "Sequential" opExportControl "Public" uid 0) (object Operation "EncodePacket" quid "42647BEE02AA" concurrency "Sequential" opExportControl "Public" uid 0) (object Operation "DecodePacket" quid "42647BF8034F" concurrency "Sequential" opExportControl "Public" uid 0))) (object Class "HopCountWithLinkQualityAssessment" quid "4264126802D8" superclasses (list inheritance_relationship_list (object Inheritance_Relationship quid "426412C200A7" supplier "Logical View::Prepropagator::HopCountSearchInfo" quidu "423F3D9F018D")) operations (list Operations (object Operation "UpdateAndCheckRegion" quid "4264479D0392" result "Boolean" concurrency "Synchronous" semantics (object Semantic_Info PDL |if (SSA.FullSearch == FALSE) |{ |if (CheckLinkQuality(mRouteSearchInfo)==TRUE) |{ |HopCountSearchInfo::UpdateAndCheckRegion(); |} |} |else |{ |HopCountSearchInfo::UpdateAndCheckRegion(); |} | ) opExportControl "Public" uid 0))) (object Class "GeoRegionWithLinkQualityAssessment" quid "4264489A0206" superclasses (list inheritance_relationship_list (object Inheritance_Relationship quid "426449080204" supplier "Logical View::Prepropagator::GeoRegionSearchInfo" quidu "423F3DCC0354")) operations (list Operations (object Operation "UpdateAndCheckRegion" quid "426448BF014B" result "Boolean" concurrency "Sequential" opExportControl "Public" uid 0))) (object Class "HopCountWithoutLinkQualityAssessment" quid "4264492303BB" superclasses (list inheritance_relationship_list (object Inheritance_Relationship quid "426449480057" supplier "Logical View::Prepropagator::HopCountSearchInfo" quidu "423F3D9F018D")) operations (list Operations (object Operation "UpdateAndCheckRegion" quid "4264498D02F5" result "Boolean" concurrency "Sequential" opExportControl "Public" uid 0))) (object Class "HopCountTableBased" quid "4264494D0087" superclasses (list inheritance_relationship_list (object Inheritance_Relationship quid "426449840054" supplier "Logical View::Prepropagator::HopCountWithoutLinkQualityAssessment" quidu "4264492303BB")) operations (list Operations (object Operation "EncodePacket" quid "4264D8C40240" concurrency "Sequential" opExportControl "Public" uid 0) (object Operation "DecodePacket" quid "4264D8CA0357" concurrency "Sequential" opExportControl "Public" uid 0))) (object Class "HopCountPathBased" quid "426449640333" superclasses (list inheritance_relationship_list (object Inheritance_Relationship quid "4264498001D4" supplier "Logical View::Prepropagator::HopCountWithoutLinkQualityAssessment" quidu "4264492303BB")) operations (list Operations (object Operation "EncodePacket" quid "4264D8AE0284" concurrency "Sequential" opExportControl "Public" uid 0) (object Operation "DecodePacket" quid "4264D8B703AA" concurrency "Sequential" opExportControl "Public" uid 0))) (object Class "GeoRegionWithoutLinkQualityAssessment" quid "42644B5C0337" superclasses (list inheritance_relationship_list (object Inheritance_Relationship quid "42644BC50130" supplier "Logical View::Prepropagator::GeoRegionSearchInfo" quidu "423F3DCC0354")) operations (list Operations (object Operation "UpdateAndCheckRegion" quid "42644C0103C1" result "Boolean" concurrency "Sequential" opExportControl "Public" uid 0))) (object Class "GeoRegionPathBased" quid "42644B750135" superclasses (list inheritance_relationship_list (object Inheritance_Relationship quid "42644BD10065" supplier "Logical View::Prepropagator::GeoRegionWithoutLinkQualityAssessment" quidu "42644B5C0337"))) (object Class "GeoRegionTableBased" quid "42644B7E02D2" superclasses (list inheritance_relationship_list (object Inheritance_Relationship quid "42644BC903A2" supplier "Logical View::Prepropagator::GeoRegionWithoutLinkQualityAssessment" quidu "42644B5C0337"))) (object Association "$UNNAMED$87" quid "424066B6000F" roles (list role_list (object Role "PrepropagationSecurity" quid "424066B60138" label "PrepropagationSecurity" supplier "Logical View::Prepropagator::PrepropagationDoSDetector" quidu "424065840399" client_cardinality (value cardinality "1") is_navigable TRUE) (object Role "$UNNAMED$88" quid "424066B6013A" supplier "Logical View::Prepropagator::PrepropagatorFront" quidu "4240651500EA" client_cardinality (value cardinality "1") Containment "By Reference"))) (object Association "$UNNAMED$89" quid "42640BD10250" roles (list role_list (object Role "mPrepropagtorRouteQualityEngine" quid "42640BD202CA" label "mPrepropagtorRouteQualityEngine" supplier "Logical View::Prepropagator::PrepropagationRouteQualityEngine" quidu "4240659B009C" client_cardinality (value cardinality "1") is_navigable TRUE) (object Role "$UNNAMED$90" quid "42640BD202D4" supplier "Logical View::Prepropagator::PrepropagatorFront" quidu "4240651500EA" Containment "By Reference"))) (object Association "$UNNAMED$91" quid "42640BF60267" roles (list role_list (object Role "mSearchRegionLimiter" quid "42640BF70088" label "mSearchRegionLimiter" supplier "Logical View::Prepropagator::SearchRegionLimiter" quidu "423A8664030D" client_cardinality (value cardinality "1") is_navigable TRUE) (object Role "$UNNAMED$92" quid "42640BF7009C" supplier "Logical View::Prepropagator::PrepropagatorFront" quidu "4240651500EA" Containment "By Reference"))) (object Association "$UNNAMED$93" quid "42640CD6001B" roles (list role_list (object Role "mRouteSearchInfo" quid "42640CD60260" label "mRouteSearchInfo" supplier "Logical View::Prepropagator::RouteSearchInfo" quidu "423F2E100302" is_navigable TRUE) (object Role "$UNNAMED$94" quid "42640CD6027E" supplier "Logical View::Prepropagator::SearchRegionLimiter" quidu "423A8664030D" Containment "By Value"))) (object Mechanism @75 logical_models (list unit_reference_list (object Object "$UNNAMED$95" quid "4247FCFF00E2" class "Logical View::PacketParse" quidu "423CF1AD0160" persistence "Transient" creationObj FALSE multi FALSE) (object Object "$UNNAMED$96" quid "4247FD1D0167" collaborators (list link_list (object Link quid "4247FDE40109" supplier "$UNNAMED$95" quidu "4247FCFF00E2" messages (list Messages (object Message "AsyncRecPacket( )" quid "42640B5B0016" frequency "Aperiodic" synchronization "Simple" dir "ToClientFromSupplier" sequence "1" ordinal 0 quidu "4248D4030167" creation FALSE) (object Message "" quid "42640B5F0080" frequency "Aperiodic" synchronization "Return" dir "FromClientToSupplier" sequence "1.1" ordinal 1 quidu "000000000000" creation FALSE))) (object Link quid "4247FE230041" supplier "$UNNAMED$97" quidu "4247FD390167" messages (list Messages (object Message "RecPacket(RouteSearchInfo)" quid "4247FE230042" frequency "Aperiodic" synchronization "ProcedureCall" dir "FromClientToSupplier" sequence "3" ordinal 4 quidu "4240670401E4" creation FALSE) (object Message "" quid "425F586E031C" frequency "Aperiodic" synchronization "Return" dir "ToClientFromSupplier" sequence "3.1" ordinal 5 quidu "000000000000" creation FALSE))) (object Link quid "425F58B1033C" supplier "$UNNAMED$98" quidu "4247FD9E03C5" messages (list Messages (object Message "RecPacket(RouteSearchInfo)" quid "425F58B1033D" frequency "Aperiodic" synchronization "ProcedureCall" dir "FromClientToSupplier" sequence "4" ordinal 6 quidu "4247FBE70338" creation FALSE) (object Message "" quid "426409A100BA" frequency "Aperiodic" synchronization "Return" dir "ToClientFromSupplier" sequence "4.1.1.1" ordinal 9 quidu "000000000000" creation FALSE))) (object Link quid "425F58D703A9" supplier "$UNNAMED$99" quidu "4247FDAB0298" messages (list Messages (object Message "UpdateCheckRegion(RouteSearchInfo)" quid "425F58D703AA" frequency "Aperiodic" synchronization "ProcedureCall"