|
From: <xb...@us...> - 2013-01-28 10:52:25
|
Revision: 1558
http://scstudio.svn.sourceforge.net/scstudio/?rev=1558&view=rev
Author: xborza
Date: 2013-01-28 10:52:18 +0000 (Mon, 28 Jan 2013)
Log Message:
-----------
Pcap 32bit linux fix
Modified Paths:
--------------
trunk/FindPCAP.cmake
Added Paths:
-----------
trunk/third-party-sw/pcap/lib32/
trunk/third-party-sw/pcap/lib32/libpcap.a
trunk/third-party-sw/pcap/lib32/libpcap.so.1.2.1
trunk/third-party-sw/pcap/lib64/
trunk/third-party-sw/pcap/lib64/libpcap.a
trunk/third-party-sw/pcap/lib64/libpcap.so
trunk/third-party-sw/pcap/lib64/libpcap.so.0.8
trunk/third-party-sw/pcap/lib64/libpcap.so.1.1.1
trunk/third-party-sw/win_pcap/lib32/
trunk/third-party-sw/win_pcap/lib32/Packet.lib
trunk/third-party-sw/win_pcap/lib32/wpcap.dll
trunk/third-party-sw/win_pcap/lib32/wpcap.lib
trunk/third-party-sw/win_pcap/lib64/wpcap.dll
Modified: trunk/FindPCAP.cmake
===================================================================
--- trunk/FindPCAP.cmake 2013-01-27 22:54:33 UTC (rev 1557)
+++ trunk/FindPCAP.cmake 2013-01-28 10:52:18 UTC (rev 1558)
@@ -15,7 +15,6 @@
FIND_LIBRARY(PCAP_LIBRARY
NAMES wpcap pcap
PATHS
- ${PCAP_ROOT}/lib
${PCAP_ROOT}/lib${ARCHITECTURE_PTR_SIZE}
NO_DEFAULT_PATH
DOC "The PCAP library")
Added: trunk/third-party-sw/pcap/lib32/libpcap.a
===================================================================
(Binary files differ)
Property changes on: trunk/third-party-sw/pcap/lib32/libpcap.a
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/third-party-sw/pcap/lib32/libpcap.so.1.2.1
===================================================================
(Binary files differ)
Property changes on: trunk/third-party-sw/pcap/lib32/libpcap.so.1.2.1
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/third-party-sw/pcap/lib64/libpcap.a
===================================================================
(Binary files differ)
Property changes on: trunk/third-party-sw/pcap/lib64/libpcap.a
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/third-party-sw/pcap/lib64/libpcap.so
===================================================================
(Binary files differ)
Property changes on: trunk/third-party-sw/pcap/lib64/libpcap.so
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/third-party-sw/pcap/lib64/libpcap.so.0.8
===================================================================
(Binary files differ)
Property changes on: trunk/third-party-sw/pcap/lib64/libpcap.so.0.8
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/third-party-sw/pcap/lib64/libpcap.so.1.1.1
===================================================================
(Binary files differ)
Property changes on: trunk/third-party-sw/pcap/lib64/libpcap.so.1.1.1
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/third-party-sw/win_pcap/lib32/Packet.lib
===================================================================
(Binary files differ)
Property changes on: trunk/third-party-sw/win_pcap/lib32/Packet.lib
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/third-party-sw/win_pcap/lib32/wpcap.dll
===================================================================
(Binary files differ)
Property changes on: trunk/third-party-sw/win_pcap/lib32/wpcap.dll
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/third-party-sw/win_pcap/lib32/wpcap.lib
===================================================================
(Binary files differ)
Property changes on: trunk/third-party-sw/win_pcap/lib32/wpcap.lib
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/third-party-sw/win_pcap/lib64/wpcap.dll
===================================================================
(Binary files differ)
Property changes on: trunk/third-party-sw/win_pcap/lib64/wpcap.dll
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <xr...@us...> - 2013-02-09 18:48:44
|
Revision: 1567
http://scstudio.svn.sourceforge.net/scstudio/?rev=1567&view=rev
Author: xrehak
Date: 2013-02-09 18:48:37 +0000 (Sat, 09 Feb 2013)
Log Message:
-----------
Fix of commit 1565
Modified Paths:
--------------
trunk/CMakeLists.txt
trunk/third-party-sw/boost/CMakeLists.txt
Property Changed:
----------------
trunk/CHANGELOG
trunk/CMakeLists.txt
trunk/COPYING
trunk/CTestConfig.cmake
trunk/third-party-sw/boost/CMakeLists.txt
Property changes on: trunk/CHANGELOG
___________________________________________________________________
Modified: svn:keywords
- Date
Revision
+ Date Revision Author HeadURL Id
Modified: trunk/CMakeLists.txt
===================================================================
--- trunk/CMakeLists.txt 2013-02-09 17:59:01 UTC (rev 1566)
+++ trunk/CMakeLists.txt 2013-02-09 18:48:37 UTC (rev 1567)
@@ -63,9 +63,11 @@
ENDIF(WIN32)
SET(Boost_USE_MULTITHREADED ON)
+SET(Boost_NO_SYSTEM_PATHS TRUE)
execute_process(COMMAND cmake .
- WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/third-party-sw/boost/)
+# WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/third-party-sw/boost/)
+ WORKING_DIRECTORY ${BOOST_ROOT})
FIND_PACKAGE(Boost COMPONENTS date_time thread serialization system chrono REQUIRED)
Property changes on: trunk/CMakeLists.txt
___________________________________________________________________
Modified: svn:keywords
- Id
+ Date Revision Author HeadURL Id
Property changes on: trunk/COPYING
___________________________________________________________________
Added: svn:keywords
+ Date Revision Author HeadURL Id
Property changes on: trunk/CTestConfig.cmake
___________________________________________________________________
Modified: svn:keywords
- Id
+ Date Revision Author HeadURL Id
Modified: trunk/third-party-sw/boost/CMakeLists.txt
===================================================================
--- trunk/third-party-sw/boost/CMakeLists.txt 2013-02-09 17:59:01 UTC (rev 1566)
+++ trunk/third-party-sw/boost/CMakeLists.txt 2013-02-09 18:48:37 UTC (rev 1567)
@@ -1,25 +1,27 @@
-CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
-
-SET(BOOST_ROOT "${CMAKE_SOURCE_DIR}" CACHE PATH "The BOOST directory root.")
-
-FIND_PACKAGE(Boost COMPONENTS date_time thread serialization system)
-
-IF(NOT Boost_FOUND)
- MESSAGE("Compiling boost")
- IF(WIN32)
- execute_process(COMMAND bootstrap.bat
- WORKING_DIRECTORY ${CMAKE_SOURCE_DIR})
- execute_process(COMMAND ./b2 --with-date_time --with-thread --with-serialization --with-system --with-chrono
- WORKING_DIRECTORY ${CMAKE_SOURCE_DIR})
- ELSE(WIN32)
- execute_process(COMMAND chmod u+x ./tools/build/v2/engine/build.sh
- WORKING_DIRECTORY ${CMAKE_SOURCE_DIR})
- execute_process(COMMAND chmod u+x ./bootstrap.sh
- WORKING_DIRECTORY ${CMAKE_SOURCE_DIR})
- execute_process(COMMAND ./bootstrap.sh
- WORKING_DIRECTORY ${CMAKE_SOURCE_DIR})
- execute_process(COMMAND ./b2 --with-date_time --with-thread --with-serialization --with-system --with-chrono
- WORKING_DIRECTORY ${CMAKE_SOURCE_DIR})
- ENDIF(WIN32)
- MESSAGE("Compiling boost done")
-ENDIF(NOT Boost_FOUND)
\ No newline at end of file
+# $Id$
+
+CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
+
+SET(BOOST_ROOT "${CMAKE_SOURCE_DIR}" CACHE PATH "The BOOST directory root.")
+
+FIND_PACKAGE(Boost COMPONENTS date_time thread serialization system chrono)
+
+IF(NOT Boost_FOUND)
+ MESSAGE("Compiling boost")
+ IF(WIN32)
+ execute_process(COMMAND bootstrap.bat
+ WORKING_DIRECTORY ${CMAKE_SOURCE_DIR})
+ execute_process(COMMAND ./b2 --with-date_time --with-thread --with-serialization --with-system --with-chrono
+ WORKING_DIRECTORY ${CMAKE_SOURCE_DIR})
+ ELSE(WIN32)
+ execute_process(COMMAND chmod u+x ./tools/build/v2/engine/build.sh
+ WORKING_DIRECTORY ${CMAKE_SOURCE_DIR})
+ execute_process(COMMAND chmod u+x ./bootstrap.sh
+ WORKING_DIRECTORY ${CMAKE_SOURCE_DIR})
+ execute_process(COMMAND ./bootstrap.sh
+ WORKING_DIRECTORY ${CMAKE_SOURCE_DIR})
+ execute_process(COMMAND ./b2 --with-date_time --with-thread --with-serialization --with-system --with-chrono
+ WORKING_DIRECTORY ${CMAKE_SOURCE_DIR})
+ ENDIF(WIN32)
+ MESSAGE("Compiling boost done")
+ENDIF(NOT Boost_FOUND)
Property changes on: trunk/third-party-sw/boost/CMakeLists.txt
___________________________________________________________________
Added: svn:keywords
+ Date Revision Author HeadURL Id
Added: svn:eol-style
+ native
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <xb...@us...> - 2013-02-14 08:42:48
|
Revision: 1575
http://scstudio.svn.sourceforge.net/scstudio/?rev=1575&view=rev
Author: xborza
Date: 2013-02-14 08:42:36 +0000 (Thu, 14 Feb 2013)
Log Message:
-----------
pcap help + RTP filter fix
Modified Paths:
--------------
trunk/doc/help/CMakeLists.txt
trunk/doc/help/menu.htm
trunk/doc/help/menui.htm
trunk/src/data/pcap/flow.cpp
trunk/src/view/visio/addon/pcapSettingGDlg.h
Added Paths:
-----------
trunk/doc/help/pcap/
trunk/doc/help/pcap/pcap.body.htm
trunk/doc/help/pcap/pcap.head.htm
trunk/doc/help/pcap/pictures/
trunk/doc/help/pcap/pictures/all_flow.png
trunk/doc/help/pcap/pictures/arp_without_aggreg.png
trunk/doc/help/pcap/pictures/continuous_bw.png
trunk/doc/help/pcap/pictures/continuous_ow.png
trunk/doc/help/pcap/pictures/http_clear.png
trunk/doc/help/pcap/pictures/http_parts.png
trunk/doc/help/pcap/pictures/http_reassembly.png
trunk/doc/help/pcap/pictures/lst_flow.png
trunk/doc/help/pcap/pictures/no_flow.png
trunk/doc/help/pcap/pictures/pcap_advanced_dialog.png
trunk/doc/help/pcap/pictures/pcap_aggreg_dialog.png
trunk/doc/help/pcap/pictures/pcap_general_dialog.png
trunk/doc/help/pcap/pictures/pcap_view_dialog.png
trunk/doc/help/pcap/pictures/time_flow.png
Modified: trunk/doc/help/CMakeLists.txt
===================================================================
--- trunk/doc/help/CMakeLists.txt 2013-02-13 22:38:30 UTC (rev 1574)
+++ trunk/doc/help/CMakeLists.txt 2013-02-14 08:42:36 UTC (rev 1575)
@@ -11,6 +11,7 @@
set( iHTML_FILES
acyclic/acyclic.html
beautify/beautify.html
+ pcap/pcap.html
boundedness/boundedness.html
deadlock/deadlock.html
fifo/fifo.html
Modified: trunk/doc/help/menu.htm
===================================================================
--- trunk/doc/help/menu.htm 2013-02-13 22:38:30 UTC (rev 1574)
+++ trunk/doc/help/menu.htm 2013-02-14 08:42:36 UTC (rev 1575)
@@ -90,7 +90,15 @@
</li>
</ul>
</li>
- <li>
+ <li>
+ Import and Export
+ <ul>
+ <li>
+ <a href="pcap/pcap.html">Pcap</a>
+ </li>
+ </ul>
+ </li>
+ <li>
Examples
<ul>
<li>
Modified: trunk/doc/help/menui.htm
===================================================================
--- trunk/doc/help/menui.htm 2013-02-13 22:38:30 UTC (rev 1574)
+++ trunk/doc/help/menui.htm 2013-02-14 08:42:36 UTC (rev 1575)
@@ -90,6 +90,14 @@
</li>
</ul>
</li>
+ <li>
+ Import and export
+ <ul>
+ <li>
+ <a href="../pcap/pcap.html">Pcap</a>
+ </li>
+ </ul>
+ </li>
<li>
Examples
<ul>
Added: trunk/doc/help/pcap/pcap.body.htm
===================================================================
--- trunk/doc/help/pcap/pcap.body.htm (rev 0)
+++ trunk/doc/help/pcap/pcap.body.htm 2013-02-14 08:42:36 UTC (rev 1575)
@@ -0,0 +1,255 @@
+<div class="content">
+ <h2>
+ Pcap
+ </h2>
+ <p>
+ The main aim of this function is to import <code>".pcap"</code> files and visualize them as BMSC diagrams. It
+ is accessible via menu <code>Check -> Drawing -> Import...</code>
+ </p>
+ <h3>
+ Setting of parameteres
+ </h3>
+ <p>
+ The parameters respected by <code>Pcap</code> can be changed via menu
+ <code>Check->Options->Pcap</code>.
+ </p>
+ <p>
+ By pressing <code><b>General settings</b></code> the dialog with options concerning the main functionality of pcap will be shown:
+ <ul>
+ <li><a href="http://www.winpcap.org/docs/docs_40_2/html/group__language.html" target="_blank">Pcap filter</a>: filters communication by entered expression (write yourself or choose one)</li>
+ <li>Layer to parse: choose the layer [ISO/OSI] from which you require parsing data </li>
+ <li>Time format, time unit, data unit: in which format and units you want to see the data </li>
+ </ul>
+ </p>
+ <ul class="gallery">
+ <li>
+ <ul>
+ <li>
+ <img src="pictures/pcap_general_dialog.png" width="500" border="0"
+ alt="General Dialog" />
+ </li>
+ </ul>
+ </li>
+ </ul>
+ <p>
+ </p>
+ <p>
+ By pressing <code><b>View settings</b></code> the dialog used for setting of more specific information,
+ which should be displayed in the diagram will be shown:
+ <ul>
+ <li>Whether the message labels should contain information only from selected layer or all parsed lower layers too</li>
+ <li>Whether the packet should be added to the diagram or not, if it doesn't contain data from selected layer </li>
+ <li>Which information will be shown in message label </li>
+ </ul>
+ </p>
+ <ul class="gallery">
+ <li>
+ <ul>
+ <li>
+ <img src="pictures/pcap_view_dialog.png" width="500" border="0"
+ alt="General Dialog" />
+ </li>
+ </ul>
+ </li>
+ </ul>
+ <p>
+ </p>
+ <p>
+ By pressing <code><b>Advanced settings</b></code> the dialog with options concerning the information displayed in dependency of
+ the specific protocol will be shown:
+ <ul>
+ <li>The more specific functionality of advanced settings is smart reassembling of packets and recognition,
+ which part of data the packet transfers (see examples below)</li>
+ </ul>
+ </p>
+ <ul class="gallery">
+ <li>
+ <ul>
+ <li>
+ <img src="pictures/pcap_advanced_dialog.png" width="500" border="0"
+ alt="General Dialog" />
+ </li>
+ </ul>
+ </li>
+ </ul>
+ <p>
+ <ul>
+ <li>
+ Example of HTTP communication without reassembling and showing data segments </br></br>
+ <ul class="gallery">
+ <li>
+ </li>
+ <li>
+ <img src="pictures/http_clear.png" width="500" border="1" alt="http without res and date segments"/>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ </p>
+ <p>
+ <ul>
+ <li>
+ Example of HTTP communication with showing data segments </br></br>
+ <ul class="gallery">
+ <li>
+ </li>
+ <li>
+ <img src="pictures/http_parts.png" width="500" border="1" alt="http without res and date segments"/>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ </p>
+ <p>
+ <ul>
+ <li>
+ Example of HTTP communication with reassembling </br>(the information about count or size of reassembled packets will be shown accroding to settings in <code>view settings</code>) </br></br>
+ <ul class="gallery">
+ <li>
+ </li>
+ <li>
+ <img src="pictures/http_reassembly.png" width="500" border="1" alt="http with reassembling"/>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ </p>
+
+ <p>
+ By pressing <code><b>Aggregation settings</b></code> the dialog with options concerning the possible ways of packets aggregation will be shown:
+ <ul>
+ <li>The main idea is to aggregate more "equal" packets in pcap file in one message in BMSC diagram.</li>
+ <li>You can select two important options:
+ <ul>
+ <li><code>Equality rule:</code>
+ </br> Which data in packets have to be equal in order to make the packets "equal" </li>
+ <li><code>Aggreagation rule:</code>
+ </br> By which manner should be the "equal" packets aggregated (examples below)</li>
+ </ul>
+ </li>
+ </ul>
+ </p>
+ <ul class="gallery">
+ <li>
+ <ul>
+ <li>
+ <img src="pictures/pcap_aggreg_dialog.png" width="500" border="0"
+ alt="General Dialog" />
+ </li>
+ </ul>
+ </li>
+ </ul>
+ <p>
+ <ul>
+ <li>
+ Example of Ipv4 communication without aggregation </br></br>
+ <ul class="gallery">
+ <li>
+ </li>
+ <li>
+ <img src="pictures/no_flow.png" width="550" border="1" alt="no aggregation"/>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ <p>
+ <ul>
+ <li>
+ Example of Ipv4 communication with aggregation:</br>
+ <ul>
+ <li>Equality rule:<code> Network protocol</code></li>
+ <li>Aggreagation rule:<code> Succesive equal packets in entire communication</code>
+ <li><i>The aggregation is relating to all channels TOGETHER. All succesive "equal" packets are joined together.</i>
+ </br><font size="1.5" color="red">The differences with last example are highlighted with red color</font></li>
+ </ul>
+ </br></br>
+ <ul class="gallery">
+ <li>
+ </li>
+ <li>
+ <img src="pictures/lst_flow.png" width="550" border="1" alt="Succesive equal packets in entire communication"/>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ <p>
+ <ul>
+ <li>
+ Example of Ipv4 communication with aggregation:</br>
+ <ul>
+ <li>Equality rule:<code> Network protocol</code></li>
+ <li>Aggreagation rule:<code> Continuous one-way communication in every channel</code></li>
+ <li><i>The aggregation is relating to every channel SEPARATELY. All "equal" packets with same direction are joining together until start of communication in opposite direction. </i></br>
+ <font size="1.5" color="red">The differences with last example are highlighted with red color</font></li>
+ </ul>
+ </br></br>
+ <ul class="gallery">
+ <li>
+ </li>
+ <li>
+ <img src="pictures/continuous_ow.png" width="550" border="1" alt="Continuous one-way communication in every channel"/>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ <p>
+ <ul>
+ <li>
+ Example of Ipv4 communication with aggregation:</br>
+ <ul>
+ <li>Equality rule:<code> Network protocol</code></li>
+ <li>Aggreagation rule:<code> Continuous both-way communication in every channel</code></li>
+ <li><i>The aggregation is relating to every channel SEPARATELY. All "equal" packets in the same communication channel are joining together until start of communication in the other channel.</i></li>
+ </ul>
+ </br></br>
+ <ul class="gallery">
+ <li>
+ </li>
+ <li>
+ <img src="pictures/continuous_bw.png" width="550" border="1" alt="Continuous both-way communication in every channel"/>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ <p>
+ <ul>
+ <li>
+ Example of Ipv4 communication with aggregation:</br>
+ <ul>
+ <li>Equality rule:<code> Network protocol</code></li>
+ <li>Aggreagation rule:<code> Equal packets in entire communication </code></li>
+ <li><i>The aggregation is relating to all channels TOGETHER. All "equal" packets with the same direction are simply joined together.</i></li>
+ </ul>
+ </br></br>
+ <ul class="gallery">
+ <li>
+ </li>
+ <li>
+ <img src="pictures/all_flow.png" width="550" border="1" alt="Equal packets in entire communication"/>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ <p>
+ <ul>
+ <li>
+ Example of Ipv4 communication with aggregation:</br>
+ <ul>
+ <li>Equality rule:<code> Network protocol</code></li>
+ <li>Aggreagation rule:<code> Equal packets in interval[100]time units<font size="2">(in ms for this case) </font></code></li>
+ <li><i>The aggregation is relating to all channels TOGETHER. All "equal" packets in the section of 100 ms are simply joined together.</i></br>
+ <font size="1.5" color="red">The different time sections are highlighted with red color</font></li>
+ </ul>
+ </br></br>
+ <ul class="gallery">
+ <li>
+ </li>
+ <li>
+ <img src="pictures/time_flow.png" width="550" border="1" alt="Equal packets in interval[100]time units"/>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: trunk/doc/help/pcap/pcap.head.htm
===================================================================
--- trunk/doc/help/pcap/pcap.head.htm (rev 0)
+++ trunk/doc/help/pcap/pcap.head.htm 2013-02-14 08:42:36 UTC (rev 1575)
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" >
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <title>
+ Beautify
+ </title>
+ <link href="../help.css" rel="stylesheet" type="text/css" />
+ </head>
+ <body>
Added: trunk/doc/help/pcap/pictures/all_flow.png
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/pictures/all_flow.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/pictures/arp_without_aggreg.png
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/pictures/arp_without_aggreg.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/pictures/continuous_bw.png
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/pictures/continuous_bw.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/pictures/continuous_ow.png
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/pictures/continuous_ow.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/pictures/http_clear.png
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/pictures/http_clear.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/pictures/http_parts.png
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/pictures/http_parts.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/pictures/http_reassembly.png
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/pictures/http_reassembly.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/pictures/lst_flow.png
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/pictures/lst_flow.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/pictures/no_flow.png
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/pictures/no_flow.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/pictures/pcap_advanced_dialog.png
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/pictures/pcap_advanced_dialog.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/pictures/pcap_aggreg_dialog.png
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/pictures/pcap_aggreg_dialog.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/pictures/pcap_general_dialog.png
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/pictures/pcap_general_dialog.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/pictures/pcap_view_dialog.png
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/pictures/pcap_view_dialog.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/pictures/time_flow.png
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/pictures/time_flow.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Modified: trunk/src/data/pcap/flow.cpp
===================================================================
--- trunk/src/data/pcap/flow.cpp 2013-02-13 22:38:30 UTC (rev 1574)
+++ trunk/src/data/pcap/flow.cpp 2013-02-14 08:42:36 UTC (rev 1575)
@@ -42,7 +42,7 @@
}
else // USE ONLY FOR REASSEMBLING MOSLTY
{
- ss << "X " << id.data.get_label() << "X ";
+ //ss << "X " << id.data.get_label() << "X ";
std::string label = it->second.get_smart_label();
// if this is a smart reassembling (HTTP,TCP,SIP), the size is allready included at the end of smart label -> delete it!
size_t pos = label.find("SIZE");
@@ -50,11 +50,11 @@
{
label.erase(pos);
}
- ss << label;
+ ss << label;
}
if(settings->show_packet_count)
- {
+ {
int packet_count = it->second.get_count();
(packet_count == 1) ? ((pcap_settings->is_aggregation_active()) ? ss << "" : ss << "1 packet" ) : ss << packet_count << " packets ";
}
@@ -94,12 +94,12 @@
pckt_id = it->second.get_ids().first;
ids = std::make_pair(pckt_id,pckt_id);
return flow_output(MESSAGE_BEGIN,it->first,ids,"",it->second.get_times().first);
-
- case MESSAGE_END :
+
+ case MESSAGE_END :
return flow_output(MESSAGE_END,it->first,it->second.get_ids(),get_label(it),it->second.get_times().second);
-
- case WHOLE_MESSAGE :
- return flow_output(WHOLE_MESSAGE,it->first,it->second.get_ids(),get_label(it),it->second.get_times().second);
+
+ case WHOLE_MESSAGE :
+ return flow_output(WHOLE_MESSAGE,it->first,it->second.get_ids(),get_label(it),it->second.get_times().second);
default : return result;
}
return result;
@@ -110,16 +110,16 @@
std::vector<std::map<msg_id,FlowStats>::iterator> FlowControl::active_com_interrupt(msg_id packet,bool inherit)
{
std::vector<std::map<msg_id,FlowStats>::iterator> result;
-
+
int first = packet.source_pair.first;
int second = packet.destin_pair.first;
int count = 0;
for(std::map<msg_id,FlowStats>::iterator it = flow_map.begin(); it != flow_map.end(); it++)
- { // dont't interrupt on data level
- if(packet.data != it->first.data)
+ { // dont't interrupt on data level
+ if(packet.data != it->first.data)
continue;
-
+
if(it->first.source_pair.first == first || it->first.source_pair.first == second)
count++;
if(it->first.destin_pair.first == first || it->first.destin_pair.first == second)
@@ -136,7 +136,7 @@
std::vector<std::map<msg_id,FlowStats>::iterator> result;
for(std::map<msg_id,FlowStats>::iterator it = flow_map.begin(); it != flow_map.end(); it++)
- {
+ {
if(it->first.data.proto == proto)
result.push_back(it);
}
@@ -150,12 +150,12 @@
defer_msg.push_back(get_flowout_flowstats(MESSAGE_END,flow_map.begin()));
return defer_msg;
}
-
+
for(std::map<msg_id,FlowStats>::iterator it = flow_map.begin(); it != flow_map.end(); it++)
{
flush_flowstats(it);
}
-
+
flow_map.clear();
// sort by order of incoming packets
std::sort(defer_msg.begin(),defer_msg.end());
@@ -164,7 +164,7 @@
std::vector<flow_output> FlowControl::update_flow(int pkt_id,num_inst_pair src_pair,num_inst_pair dst_pair,SpecData flow_data,double time,std::string smart_label)
{
-
+
std::vector<flow_output> result;
std::map<msg_id,FlowStats>::iterator it;
std::vector<std::map<msg_id,FlowStats>::iterator> interrupted;
@@ -195,28 +195,28 @@
flow_map[default_id] = FlowStats(pkt_id,time,flow_data.data_size);
}
return result;
-
- case HDX_FLOW :
+
+ case HDX_FLOW :
//active communication in this direction
if((it = flow_map.find(default_id)) != flow_map.end())
{
it->second.update_id_time_data(pkt_id,time,flow_data.data_size);
}
else
- { // add to active com
+ { // add to active com
flow_map[default_id] = FlowStats(pkt_id,time,flow_data.data_size);
//for HDX check the communication in opposite direction, if were there, putt in defer messages
if((it = flow_map.find(opposite_id)) != flow_map.end())
- {
+ {
flush_flowstats(it);
flow_map.erase(it);
}
}
- return result;
+ return result;
- case FDX_FLOW :
+ case FDX_FLOW :
if((it = flow_map.find(default_id)) != flow_map.end())
- {
+ {
it->second.update_id_time_data(pkt_id,time,flow_data.data_size);
}
else
@@ -224,14 +224,14 @@
flow_map[default_id] = FlowStats(pkt_id,time,flow_data.data_size);
}
return result;
-
- case FDX_CON_FLOW : // full duplex -> bind the CONTINOUS communication between two nodes together
+
+ case FDX_CON_FLOW : // full duplex -> bind the CONTINOUS communication between two nodes together
interrupted = active_com_interrupt(default_id,false);
if(!interrupted.empty()) // interrupt active communications
{
for(u_int i=0; i < interrupted.size();i++)
- {
+ {
it = interrupted[i];
flush_flowstats(it);
}
@@ -239,7 +239,7 @@
for(u_int i=0; i < interrupted.size();i++)
flow_map.erase(interrupted[i]);
}
- if((it = flow_map.find(default_id)) != flow_map.end())
+ if((it = flow_map.find(default_id)) != flow_map.end())
{
it->second.update_id_time_data(pkt_id,time,flow_data.data_size);
}
@@ -265,7 +265,7 @@
flow_map.clear();
flow_map[default_id] = FlowStats(pkt_id,time,flow_data.data_size);
}
- else if((it = flow_map.find(default_id)) != flow_map.end())
+ else if((it = flow_map.find(default_id)) != flow_map.end())
{
it->second.update_id_time_data(pkt_id,time,flow_data.data_size);
}
@@ -273,7 +273,7 @@
{
flow_map[default_id] = FlowStats(pkt_id,time,flow_data.data_size);
}
-
+
return result;
case AGGREG_FLOW:
@@ -282,11 +282,11 @@
case HTTP_AGGR:
if(flow_data.http_msg->message_complete || !(flow_data.http_msg->is_segment))
{
- if((it = flow_map.find(default_id)) != flow_map.end())
+ if((it = flow_map.find(default_id)) != flow_map.end())
{
- if(flow_data.http_msg->is_segment) // if its segment, update last values
+ if(flow_data.http_msg->is_segment) // if its segment, update last values
it->second.update_id_time_data(pkt_id,time,flow_data.data_size);
-
+
flush_flowstats(it);
flow_map.erase(it);
@@ -310,7 +310,7 @@
}
}
return result;
-
+
case TCP_AGGR:
if(flow_data.tcp_flow_item->segment || flow_data.tcp_flow_item->segment_ack)
{
@@ -339,15 +339,15 @@
{
interrupted = interrupt_with_proto(RTP);
for(u_int i=0; i < interrupted.size();i++)
- {
+ {
it = interrupted[i];
flush_flowstats(it);
}
for(u_int i=0; i < interrupted.size();i++)
flow_map.erase(interrupted[i]);
- defer_msg.push_back(get_whole_flowout(default_id,pkt_id,time,smart_label)); // add sip packet to defer msg
-
+ defer_msg.push_back(get_whole_flowout(default_id,pkt_id,time,smart_label)); // add sip packet to defer msg
+
}
else // RTP packet
{
@@ -363,7 +363,7 @@
return result;
default : // other packets
- defer_msg.push_back(get_whole_flowout(default_id,pkt_id,time,smart_label));
+ defer_msg.push_back(get_whole_flowout(default_id,pkt_id,time,smart_label));
return result;
}
default : return result;
Modified: trunk/src/view/visio/addon/pcapSettingGDlg.h
===================================================================
--- trunk/src/view/visio/addon/pcapSettingGDlg.h 2013-02-13 22:38:30 UTC (rev 1574)
+++ trunk/src/view/visio/addon/pcapSettingGDlg.h 2013-02-14 08:42:36 UTC (rev 1575)
@@ -35,7 +35,7 @@
L"tcp",
L"tcp port 80",
L"(tcp || udp) && (port 5060 || port 5061)",
- L"udp[1] & 1 != 1 && udp[3] & 1 != 1 && udp[8]"
+ L"udp[1] & 1 != 1 && udp[3] & 1 != 1 && udp[8] & 0x80 == 0x80"
};
class CPcapSettingsGDlg
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <tm...@us...> - 2013-02-15 17:06:55
|
Revision: 1582
http://scstudio.svn.sourceforge.net/scstudio/?rev=1582&view=rev
Author: tmarton
Date: 2013-02-15 16:50:00 +0000 (Fri, 15 Feb 2013)
Log Message:
-----------
Prepared for release 0.5.3
Modified Paths:
--------------
trunk/doc/scstudio-instructions.rtf
trunk/make_build.bat
trunk/tests/montecarlo/montecarlo_test.cpp
trunk/tests/pcap/pcap_test.cpp
Modified: trunk/doc/scstudio-instructions.rtf
===================================================================
--- trunk/doc/scstudio-instructions.rtf 2013-02-15 16:45:24 UTC (rev 1581)
+++ trunk/doc/scstudio-instructions.rtf 2013-02-15 16:50:00 UTC (rev 1582)
@@ -1,174133 +1,276188 @@
-{\rtf1\adeflang1025\ansi\ansicpg1250\uc1\adeff1\deff0\stshfdbch0\stshfloch0\stshfhich0\stshfbi0\deflang1051\deflangfe1051\themelang1051\themelangfe0\themelangcs0{\fonttbl{\f0\fbidi \froman\fcharset238\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f1\fbidi \fswiss\fcharset238\fprq2{\*\panose 020b0604020202020204}Arial;}
-{\f2\fbidi \fmodern\fcharset238\fprq1{\*\panose 02070309020205020404}Courier New;}{\f3\fbidi \froman\fcharset2\fprq2{\*\panose 05050102010706020507}Symbol;}{\f10\fbidi \fnil\fcharset2\fprq2{\*\panose 05000000000000000000}Wingdings;}
-{\f34\fbidi \froman\fcharset1\fprq2{\*\panose 02040503050406030204}Cambria Math;}{\f36\fbidi \froman\fcharset238\fprq2{\*\panose 02040503050406030204}Cambria;}{\f38\fbidi \fswiss\fcharset238\fprq2{\*\panose 020b0604030504040204}Tahoma;}
-{\flomajor\f31500\fbidi \froman\fcharset238\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\fdbmajor\f31501\fbidi \froman\fcharset238\fprq2{\*\panose 02020603050405020304}Times New Roman;}
-{\fhimajor\f31502\fbidi \froman\fcharset238\fprq2{\*\panose 02040503050406030204}Cambria;}{\fbimajor\f31503\fbidi \froman\fcharset238\fprq2{\*\panose 02020603050405020304}Times New Roman;}
-{\flominor\f31504\fbidi \froman\fcharset238\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\fdbminor\f31505\fbidi \froman\fcharset238\fprq2{\*\panose 02020603050405020304}Times New Roman;}
-{\fhiminor\f31506\fbidi \fswiss\fcharset238\fprq2{\*\panose 020f0502020204030204}Calibri;}{\fbiminor\f31507\fbidi \froman\fcharset238\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f41\fbidi \froman\fcharset0\fprq2 Times New Roman;}
-{\f40\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\f42\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\f43\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\f44\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}
-{\f45\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\f46\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\f47\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\f51\fbidi \fswiss\fcharset0\fprq2 Arial;}
-{\f50\fbidi \fswiss\fcharset204\fprq2 Arial Cyr;}{\f52\fbidi \fswiss\fcharset161\fprq2 Arial Greek;}{\f53\fbidi \fswiss\fcharset162\fprq2 Arial Tur;}{\f54\fbidi \fswiss\fcharset177\fprq2 Arial (Hebrew);}
-{\f55\fbidi \fswiss\fcharset178\fprq2 Arial (Arabic);}{\f56\fbidi \fswiss\fcharset186\fprq2 Arial Baltic;}{\f57\fbidi \fswiss\fcharset163\fprq2 Arial (Vietnamese);}{\f61\fbidi \fmodern\fcharset0\fprq1 Courier New;}
-{\f60\fbidi \fmodern\fcharset204\fprq1 Courier New Cyr;}{\f62\fbidi \fmodern\fcharset161\fprq1 Courier New Greek;}{\f63\fbidi \fmodern\fcharset162\fprq1 Courier New Tur;}{\f64\fbidi \fmodern\fcharset177\fprq1 Courier New (Hebrew);}
-{\f65\fbidi \fmodern\fcharset178\fprq1 Courier New (Arabic);}{\f66\fbidi \fmodern\fcharset186\fprq1 Courier New Baltic;}{\f67\fbidi \fmodern\fcharset163\fprq1 Courier New (Vietnamese);}{\f401\fbidi \froman\fcharset0\fprq2 Cambria;}
-{\f400\fbidi \froman\fcharset204\fprq2 Cambria Cyr;}{\f402\fbidi \froman\fcharset161\fprq2 Cambria Greek;}{\f403\fbidi \froman\fcharset162\fprq2 Cambria Tur;}{\f406\fbidi \froman\fcharset186\fprq2 Cambria Baltic;}
-{\f407\fbidi \froman\fcharset163\fprq2 Cambria (Vietnamese);}{\f421\fbidi \fswiss\fcharset0\fprq2 Tahoma;}{\f420\fbidi \fswiss\fcharset204\fprq2 Tahoma Cyr;}{\f422\fbidi \fswiss\fcharset161\fprq2 Tahoma Greek;}
-{\f423\fbidi \fswiss\fcharset162\fprq2 Tahoma Tur;}{\f424\fbidi \fswiss\fcharset177\fprq2 Tahoma (Hebrew);}{\f425\fbidi \fswiss\fcharset178\fprq2 Tahoma (Arabic);}{\f426\fbidi \fswiss\fcharset186\fprq2 Tahoma Baltic;}
-{\f427\fbidi \fswiss\fcharset163\fprq2 Tahoma (Vietnamese);}{\f428\fbidi \fswiss\fcharset222\fprq2 Tahoma (Thai);}{\flomajor\f31510\fbidi \froman\fcharset0\fprq2 Times New Roman;}{\flomajor\f31509\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}
-{\flomajor\f31511\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\flomajor\f31512\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\flomajor\f31513\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}
-{\flomajor\f31514\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\flomajor\f31515\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\flomajor\f31516\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}
-{\fdbmajor\f31520\fbidi \froman\fcharset0\fprq2 Times New Roman;}{\fdbmajor\f31519\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\fdbmajor\f31521\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}
-{\fdbmajor\f31522\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\fdbmajor\f31523\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\fdbmajor\f31524\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}
-{\fdbmajor\f31525\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\fdbmajor\f31526\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\fhimajor\f31530\fbidi \froman\fcharset0\fprq2 Cambria;}
-{\fhimajor\f31529\fbidi \froman\fcharset204\fprq2 Cambria Cyr;}{\fhimajor\f31531\fbidi \froman\fcharset161\fprq2 Cambria Greek;}{\fhimajor\f31532\fbidi \froman\fcharset162\fprq2 Cambria Tur;}
-{\fhimajor\f31535\fbidi \froman\fcharset186\fprq2 Cambria Baltic;}{\fhimajor\f31536\fbidi \froman\fcharset163\fprq2 Cambria (Vietnamese);}{\fbimajor\f31540\fbidi \froman\fcharset0\fprq2 Times New Roman;}
-{\fbimajor\f31539\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\fbimajor\f31541\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\fbimajor\f31542\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}
-{\fbimajor\f31543\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\fbimajor\f31544\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\fbimajor\f31545\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}
-{\fbimajor\f31546\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\flominor\f31550\fbidi \froman\fcharset0\fprq2 Times New Roman;}{\flominor\f31549\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}
-{\flominor\f31551\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\flominor\f31552\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\flominor\f31553\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}
-{\flominor\f31554\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\flominor\f31555\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\flominor\f31556\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}
-{\fdbminor\f31560\fbidi \froman\fcharset0\fprq2 Times New Roman;}{\fdbminor\f31559\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\fdbminor\f31561\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}
-{\fdbminor\f31562\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\fdbminor\f31563\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\fdbminor\f31564\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}
-{\fdbminor\f31565\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\fdbminor\f31566\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\fhiminor\f31570\fbidi \fswiss\fcharset0\fprq2 Calibri;}
-{\fhiminor\f31569\fbidi \fswiss\fcharset204\fprq2 Calibri Cyr;}{\fhiminor\f31571\fbidi \fswiss\fcharset161\fprq2 Calibri Greek;}{\fhiminor\f31572\fbidi \fswiss\fcharset162\fprq2 Calibri Tur;}
-{\fhiminor\f31575\fbidi \fswiss\fcharset186\fprq2 Calibri Baltic;}{\fhiminor\f31576\fbidi \fswiss\fcharset163\fprq2 Calibri (Vietnamese);}{\fbiminor\f31580\fbidi \froman\fcharset0\fprq2 Times New Roman;}
-{\fbiminor\f31579\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\fbiminor\f31581\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\fbiminor\f31582\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}
-{\fbiminor\f31583\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\fbiminor\f31584\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\fbiminor\f31585\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}
-{\fbiminor\f31586\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}}{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;
-\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;\red128\green0\blue128;\red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;}{\*\defchp \fs22 }{\*\defpap
-\ql \li0\ri0\sa200\sl276\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 }\noqfpromote {\stylesheet{\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af1\afs20\alang1025
-\ltrch\fcs0 \f1\fs20\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \snext0 \sqformat \spriority0 \styrsid6893578 Normal;}{\s1\ql \li2268\ri0\sb120\sa240\sl280\slmult0
-\keepn\pagebb\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin2268\itap0 \rtlch\fcs1 \ab\af1\afs28\alang1025 \ltrch\fcs0 \b\f1\fs28\lang1033\langfe1029\kerning32\cgrid\langnp1033\langfenp1029
-\sbasedon16 \snext16 \slink17 \sqformat \styrsid12978455 heading 1;}{\s2\ql \li2268\ri0\sb360\sa60\sl280\slmult0\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin2268\itap0 \rtlch\fcs1 \ab\af1\afs24\alang1025
-\ltrch\fcs0 \b\f1\fs24\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \sbasedon16 \snext16 \slink15 \sqformat \styrsid10886401 heading 2;}{\*\cs10 \additive \ssemihidden Default Paragraph Font;}{\*
-\ts11\tsrowd\trftsWidthB3\trpaddl108\trpaddr108\trpaddfl3\trpaddft3\trpaddfb3\trpaddfr3\tblind0\tblindtype3\tsvertalt\tsbrdrt\tsbrdrl\tsbrdrb\tsbrdrr\tsbrdrdgl\tsbrdrdgr\tsbrdrh\tsbrdrv \ql \li0\ri0\sa200\sl276\slmult1
-\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs22\alang1025 \ltrch\fcs0 \fs22\lang1051\langfe1051\cgrid\langnp1051\langfenp1051 \snext11 \ssemihidden \sunhideused Normal Table;}{\*\cs15 \additive \rtlch\fcs1
-\ab\ai\af0\afs28 \ltrch\fcs0 \b\i\f36\fs28\lang0\langfe1029\langnp0\langfenp1029 \sbasedon10 \slink2 \slocked \ssemihidden Nadpis 2 Char;}{\s16\ql \li2268\ri0\sb120\sa120\sl280\slmult0
-\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin2268\itap0 \rtlch\fcs1 \af1\afs20\alang1025 \ltrch\fcs0 \f1\fs20\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \sbasedon0 \snext16 \styrsid4814744 Paragraph;}{\*\cs17 \additive
-\rtlch\fcs1 \ab\af0\afs32 \ltrch\fcs0 \b\f36\fs32\lang0\langfe1029\kerning32\langnp0\langfenp1029 \sbasedon10 \slink1 \slocked Nadpis 1 Char;}{\s18\ql \fi-2268\li2268\ri0\sb120\sa120\sl280\slmult0
-\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin2268\itap0 \rtlch\fcs1 \af1\afs20\alang1025 \ltrch\fcs0 \f1\fs20\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \sbasedon16 \snext18 \styrsid10750423 Paragraph w Sidehead;}{\*
-\ts19\tsrowd\trbrdrt\brdrs\brdrw10 \trbrdrl\brdrs\brdrw10 \trbrdrb\brdrs\brdrw10 \trbrdrr\brdrs\brdrw10 \trbrdrh\brdrs\brdrw10 \trbrdrv\brdrs\brdrw10
-\trftsWidthB3\trpaddl108\trpaddr108\trpaddfl3\trpaddft3\trpaddfb3\trpaddfr3\tblind0\tblindtype0\tsvertalt\tsbrdrt\tsbrdrl\tsbrdrb\tsbrdrr\tsbrdrdgl\tsbrdrdgr\tsbrdrh\tsbrdrv
-\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af1\afs20\alang1025 \ltrch\fcs0 \f1\fs20\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon11 \snext19 \styrsid14371250 Table Grid;}{\*\cs20
-\additive \rtlch\fcs1 \af0 \ltrch\fcs0 \ul\cf2 \sbasedon10 \styrsid3177514 Hyperlink;}{\s21\ql \li2268\ri0\sl280\slmult0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin2268\itap0 \rtlch\fcs1 \af2\afs18\alang1025 \ltrch\fcs0
-\f2\fs18\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \sbasedon16 \snext21 \styrsid7881996 Example;}{\s22\ql \li0\ri0\widctlpar\brdrt\brdrs\brdrw10\brsp20 \tqc\tx4536\tqr\tx9072\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0
-\rtlch\fcs1 \af1\afs20\alang1025 \ltrch\fcs0 \f1\fs20\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \sbasedon0 \snext22 \slink24 \styrsid12473112 footer;}{\*\cs23 \additive \rtlch\fcs1 \af0 \ltrch\fcs0 \sbasedon10 \styrsid12473112 page number;}{\*
-\cs24 \additive \rtlch\fcs1 \af1\afs20 \ltrch\fcs0 \f1\fs20\lang0\langfe1029\langnp0\langfenp1029 \sbasedon10 \slink22 \slocked \ssemihidden Z\'e1pat\'ed Char;}{\s25\ql \li0\ri0\widctlpar
-\tqc\tx4536\tqr\tx9072\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af1\afs20\alang1025 \ltrch\fcs0 \f1\fs20\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \sbasedon0 \snext25 \slink27 \styrsid12473112 header;}{\*\cs26
-\additive \rtlch\fcs1 \af0\afs16 \ltrch\fcs0 \fs16 \sbasedon10 \ssemihidden \styrsid14681692 annotation reference;}{\*\cs27 \additive \rtlch\fcs1 \af1\afs20 \ltrch\fcs0 \f1\fs20\lang0\langfe1029\langnp0\langfenp1029
-\sbasedon10 \slink25 \slocked \ssemihidden Z\'e1hlav\'ed Char;}{\s28\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af1\afs20\alang1025 \ltrch\fcs0
-\f1\fs20\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \sbasedon0 \snext28 \slink30 \ssemihidden \styrsid14681692 annotation text;}{\s29\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1
-\ab\af1\afs20\alang1025 \ltrch\fcs0 \b\f1\fs20\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \sbasedon28 \snext28 \slink32 \ssemihidden \styrsid14681692 annotation subject;}{\*\cs30 \additive \rtlch\fcs1 \af1\afs20 \ltrch\fcs0
-\f1\fs20\lang0\langfe1029\langnp0\langfenp1029 \sbasedon10 \slink28 \slocked \ssemihidden Text koment\'e1\'f8e Char;}{\s31\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs16\alang1025 \ltrch\fcs0
-\f38\fs16\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \sbasedon0 \snext31 \slink34 \ssemihidden \styrsid14681692 Balloon Text;}{\*\cs32 \additive \rtlch\fcs1 \ab\af1\afs20 \ltrch\fcs0 \b\f1\fs20\lang0\langfe1029\langnp0\langfenp1029
-\sbasedon30 \slink29 \slocked \ssemihidden P\'f8edm\'ect koment\'e1\'f8e Char;}{\*\cs33 \additive \rtlch\fcs1 \af0 \ltrch\fcs0 \f2\fs20 \sbasedon10 \styrsid8486799 Keyboard Shortcut;}{\*\cs34 \additive \rtlch\fcs1 \af38\afs16 \ltrch\fcs0
-\f38\fs16\lang0\langfe1029\langnp0\langfenp1029 \sbasedon10 \slink31 \slocked \ssemihidden Text bubliny Char;}{\*\cs35 \additive \rtlch\fcs1 \af0 \ltrch\fcs0 \sbasedon10 \styrsid3303158 mw-headline;}}{\*\listtable{\list\listtemplateid-318340160\listhybrid
-{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\leveltemplateid67436545\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li720\jclisttab\tx720\lin720 }{\listlevel\levelnfc23
-\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace360\levelindent0{\leveltext\leveltemplateid67436547\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc23\levelnfcn23\leveljc0
-\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace360\levelindent0{\leveltext\leveltemplateid67436549\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li2160\jclisttab\tx2160\lin2160 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0
-\levelfollow0\levelstartat1\lvltentative\levelspace360\levelindent0{\leveltext\leveltemplateid67436545\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li2880\jclisttab\tx2880\lin2880 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0
-\levelstartat1\lvltentative\levelspace360\levelindent0{\leveltext\leveltemplateid67436547\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li3600\jclisttab\tx3600\lin3600 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1
-\lvltentative\levelspace360\levelindent0{\leveltext\leveltemplateid67436549\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li4320\jclisttab\tx4320\lin4320 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative
-\levelspace360\levelindent0{\leveltext\leveltemplateid67436545\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li5040\jclisttab\tx5040\lin5040 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace360
-\levelindent0{\leveltext\leveltemplateid67436547\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li5760\jclisttab\tx5760\lin5760 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace360\levelindent0{\leveltext
-\leveltemplateid67436549\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li6480\jclisttab\tx6480\lin6480 }{\listname ;}\listid88896242}{\list\listtemplateid-2435210\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0
-\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid-598469796\'01\'96;}{\levelnumbers;}\f0\fbias0 \fi-311\li3033\jclisttab\tx3033\lin3033 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454
-\levelindent0{\leveltext\leveltemplateid67436547\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li3708\jclisttab\tx3708\lin3708 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext
-\leveltemplateid67436549\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li4428\jclisttab\tx4428\lin4428 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436545
-\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li5148\jclisttab\tx5148\lin5148 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436547\'01o;}{\levelnumbers;}
-\f2\fbias0 \fi-360\li5868\jclisttab\tx5868\lin5868 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436549\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li6588
-\jclisttab\tx6588\lin6588 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436545\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li7308\jclisttab\tx7308\lin7308 }
-{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436547\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li8028\jclisttab\tx8028\lin8028 }{\listlevel\levelnfc23\levelnfcn23
-\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436549\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li8748\jclisttab\tx8748\lin8748 }{\listname ;}\listid218248755}{\list\listtemplateid-707857544
-\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\leveltemplateid67436545\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li2988\jclisttab\tx2988\lin2988 }{\listlevel
-\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\leveltemplateid67436547\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li3708\jclisttab\tx3708\lin3708 }{\listlevel\levelnfc23\levelnfcn23\leveljc0
-\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\leveltemplateid67436549\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li4428\jclisttab\tx4428\lin4428 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0
-\levelstartat1\levelspace360\levelindent0{\leveltext\leveltemplateid67436545\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li5148\jclisttab\tx5148\lin5148 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360
-\levelindent0{\leveltext\leveltemplateid67436547\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li5868\jclisttab\tx5868\lin5868 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext
-\leveltemplateid67436549\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li6588\jclisttab\tx6588\lin6588 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\leveltemplateid67436545
-\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li7308\jclisttab\tx7308\lin7308 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\leveltemplateid67436547\'01o;}{\levelnumbers;}
-\f2\fbias0 \fi-360\li8028\jclisttab\tx8028\lin8028 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\leveltemplateid67436549\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li8748
-\jclisttab\tx8748\lin8748 }{\listname ;}\listid380901966}{\list\listtemplateid-2075480342{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0
-\fi-360\li2988\jclisttab\tx2988\lin2988 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li3708\jclisttab\tx3708\lin3708 }{\listlevel
-\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li4428\jclisttab\tx4428\lin4428 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0
-\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li5148\jclisttab\tx5148\lin5148 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0
-{\leveltext\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li5868\jclisttab\tx5868\lin5868 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0
-\fi-360\li6588\jclisttab\tx6588\lin6588 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li7308\jclisttab\tx7308\lin7308 }{\listlevel
-\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li8028\jclisttab\tx8028\lin8028 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0
-\levelstartat1\levelspace360\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li8748\jclisttab\tx8748\lin8748 }{\listname ;}\listid407309104}{\list\listtemplateid-234069712\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0
-\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid-598469796\'01\'96;}{\levelnumbers;}\f0\fbias0 \fi-311\li3033\jclisttab\tx3033\lin3033 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0
-\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436547\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li3708\jclisttab\tx3708\lin3708 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454
-\levelindent0{\leveltext\leveltemplateid67436549\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li4428\jclisttab\tx4428\lin4428 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext
-\leveltemplateid67436545\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li5148\jclisttab\tx5148\lin5148 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436547
-\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li5868\jclisttab\tx5868\lin5868 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436549\'01\u-3929 ?;}{\levelnumbers;}
-\f10\fbias0 \fi-360\li6588\jclisttab\tx6588\lin6588 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436545\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li7308
-\jclisttab\tx7308\lin7308 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436547\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li8028\jclisttab\tx8028\lin8028 }{\listlevel
-\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436549\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li8748\jclisttab\tx8748\lin8748 }{\listname ;}\listid432867918}
-{\list\listtemplateid-1494471816\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid-598469796\'01\'96;}{\levelnumbers;}\f0\fbias0 \fi-311\li3033
-\jclisttab\tx3033\lin3033 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436547\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li3708\jclisttab\tx3708\lin3708 }{\listlevel
-\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436549\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li4428\jclisttab\tx4428\lin4428 }{\listlevel\levelnfc23\levelnfcn23
-\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436545\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li5148\jclisttab\tx5148\lin5148 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0
-\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436547\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li5868\jclisttab\tx5868\lin5868 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1
-\levelspace454\levelindent0{\leveltext\leveltemplateid67436549\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li6588\jclisttab\tx6588\lin6588 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0
-{\leveltext\leveltemplateid67436545\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li7308\jclisttab\tx7308\lin7308 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext
-\leveltemplateid67436547\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li8028\jclisttab\tx8028\lin8028 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436549
-\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li8748\jclisttab\tx8748\lin8748 }{\listname ;}\listid501548701}{\list\listtemplateid1339591888\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454
-\levelindent0{\leveltext\leveltemplateid-598469796\'01\'96;}{\levelnumbers;}\f0\fbias0 \fi-311\li3033\jclisttab\tx3033\lin3033 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext
-\leveltemplateid67436547\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li3708\jclisttab\tx3708\lin3708 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436549
-\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li4428\jclisttab\tx4428\lin4428 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436545\'01\u-3913 ?;}{\levelnumbers
-;}\f3\fbias0 \fi-360\li5148\jclisttab\tx5148\lin5148 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436547\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li5868
-\jclisttab\tx5868\lin5868 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436549\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li6588\jclisttab\tx6588\lin6588 }
-{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436545\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li7308\jclisttab\tx7308\lin7308 }{\listlevel\levelnfc23
-\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436547\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li8028\jclisttab\tx8028\lin8028 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0
-\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436549\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li8748\jclisttab\tx8748\lin8748 }{\listname ;}\listid739594883}{\list\listtemplateid-1331897098{\listlevel
-\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fs20\fbias0 \fi-360\li720\jclisttab\tx720\lin720 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0
-\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fs20\fbias0 \fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative
-\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbe...
[truncated message content] |
|
From: <xb...@us...> - 2013-02-19 23:45:04
|
Revision: 1589
http://scstudio.svn.sourceforge.net/scstudio/?rev=1589&view=rev
Author: xborza
Date: 2013-02-19 23:44:54 +0000 (Tue, 19 Feb 2013)
Log Message:
-----------
pcap documentation update + small fix in pcap_settings.cpp
Modified Paths:
--------------
trunk/doc/help/pcap/pcap.body.htm
trunk/doc/help/pcap/pcap.head.htm
trunk/doc/help/pcap/pictures/http_clear.png
trunk/doc/help/pcap/pictures/http_parts.png
trunk/doc/help/pcap/pictures/http_reassembly.png
trunk/src/data/pcap/pcap_settings.cpp
Added Paths:
-----------
trunk/doc/help/pcap/capture/
trunk/doc/help/pcap/capture/arp.pcap
trunk/doc/help/pcap/capture/bfd-raw-auth.pcap
trunk/doc/help/pcap/capture/dhcp.pcap
trunk/doc/help/pcap/capture/dns.pcap
trunk/doc/help/pcap/capture/ftpv6.pcap
trunk/doc/help/pcap/capture/http.pcap
trunk/doc/help/pcap/capture/http_gzip.pcap
trunk/doc/help/pcap/capture/ipv4_cisco_option.pcap
trunk/doc/help/pcap/capture/ipv6.pcap
trunk/doc/help/pcap/capture/sample.pcap
trunk/doc/help/pcap/capture/sip_call.pcap
trunk/doc/help/pcap/capture/sip_rtp.pcap
trunk/doc/help/pcap/capture/skypeIRC.pcap
trunk/doc/help/pcap/capture/smtp.pcap
trunk/doc/help/pcap/capture/tcp_ecn.pcap
trunk/doc/help/pcap/capture/telnet_raw.pcap
trunk/doc/help/pcap/pictures/http_clear.vsd
trunk/doc/help/pcap/pictures/http_parts.vsd
trunk/doc/help/pcap/pictures/http_reassembly.vsd
trunk/doc/help/pcap/pictures/ipv4_all_equal.png
trunk/doc/help/pcap/pictures/ipv4_all_equal.vsd
trunk/doc/help/pcap/pictures/ipv4_bothway.png
trunk/doc/help/pcap/pictures/ipv4_bothway.vsd
trunk/doc/help/pcap/pictures/ipv4_no_aggregation.png
trunk/doc/help/pcap/pictures/ipv4_no_aggregation.vsd
trunk/doc/help/pcap/pictures/ipv4_oneway.png
trunk/doc/help/pcap/pictures/ipv4_oneway.vsd
trunk/doc/help/pcap/pictures/ipv4_sucequal.png
trunk/doc/help/pcap/pictures/ipv4_sucequal.vsd
trunk/doc/help/pcap/pictures/ipv4_time_aggreg.png
trunk/doc/help/pcap/pictures/ipv4_time_aggreg.vsd
Added: trunk/doc/help/pcap/capture/arp.pcap
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/capture/arp.pcap
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/capture/bfd-raw-auth.pcap
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/capture/bfd-raw-auth.pcap
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/capture/dhcp.pcap
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/capture/dhcp.pcap
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/capture/dns.pcap
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/capture/dns.pcap
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/capture/ftpv6.pcap
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/capture/ftpv6.pcap
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/capture/http.pcap
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/capture/http.pcap
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/capture/http_gzip.pcap
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/capture/http_gzip.pcap
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/capture/ipv4_cisco_option.pcap
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/capture/ipv4_cisco_option.pcap
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/capture/ipv6.pcap
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/capture/ipv6.pcap
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/capture/sample.pcap
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/capture/sample.pcap
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/capture/sip_call.pcap
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/capture/sip_call.pcap
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/capture/sip_rtp.pcap
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/capture/sip_rtp.pcap
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/capture/skypeIRC.pcap
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/capture/skypeIRC.pcap
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/capture/smtp.pcap
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/capture/smtp.pcap
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/capture/tcp_ecn.pcap
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/capture/tcp_ecn.pcap
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/capture/telnet_raw.pcap
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/capture/telnet_raw.pcap
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Modified: trunk/doc/help/pcap/pcap.body.htm
===================================================================
--- trunk/doc/help/pcap/pcap.body.htm 2013-02-19 12:11:16 UTC (rev 1588)
+++ trunk/doc/help/pcap/pcap.body.htm 2013-02-19 23:44:54 UTC (rev 1589)
@@ -6,6 +6,27 @@
The main aim of this function is to import <code>".pcap"</code> files and visualize them as BMSC diagrams. It
is accessible via menu <code>Check -> Drawing -> Import...</code>
</p>
+ <p>
+ <h3>Some pcap files to download</h3>
+ <ul>
+ <li><a href="capture/sample.pcap">Sample (used in this tutorial)</a></li>
+ <li><a href="capture/arp.pcap">Arp</a></li>
+ <li><a href="capture/bfd-raw-auth.pcap">Bfd-raw-auth</a></li>
+ <li><a href="capture/dhcp.pcap">Dhcp</a></li>
+ <li><a href="capture/dns.pcap">Dns</a></li>
+ <li><a href="capture/ftpv6.pcap">Ftpv6</a></li>
+ <li><a href="capture/http.pcap">Http</a></li>
+ <li><a href="capture/http_gzip.pcap">Http_gzip</a></li>
+ <li><a href="capture/ipv4_cisco_option.pcap">Ipv4_cisco_option</a></li>
+ <li><a href="capture/ipv6.pcap">Ipv6</a></li>
+ <li><a href="capture/sip_call.pcap">Sip_call</a></li>
+ <li><a href="capture/sip_rtp.pcap">Sip_rtp</a></li>
+ <li><a href="capture/skypeIRC.pcap">Skype_IRC</a></li>
+ <li><a href="capture/smtp.pcap">Smtp</a></li>
+ <li><a href="capture/tcp_ecn.pcap">Tcp_ecn</a></li>
+ <li><a href="capture/telnet_raw.pcap">Telnet_raw</a></li>
+ </ul>
+ </p>
<h3>
Setting of parameteres
</h3>
@@ -75,13 +96,21 @@
<p>
<ul>
<li>
- Example of HTTP communication without reassembling and showing data segments </br></br>
+ Example of HTTP communication without reassembling and showing splitted parts of data </br></br>
<ul class="gallery">
- <li>
- </li>
+ <li>
+ <ul>
+ <a href="pictures/http_clear.vsd">
<li>
- <img src="pictures/http_clear.png" width="500" border="1" alt="http without res and date segments"/>
+ <img src="pictures/http_clear.png" width="500" border="0"
+ alt="Without reassembling and showing data segments" />
</li>
+ <li class="caption">
+ HTTP without reassembling and showing splitted parts
+ </li>
+ </a>
+ </ul>
+ </li>
</ul>
</li>
</ul>
@@ -91,11 +120,19 @@
<li>
Example of HTTP communication with showing data segments </br></br>
<ul class="gallery">
- <li>
- </li>
+ <li>
+ <ul>
+ <a href="pictures/http_parts.vsd">
<li>
- <img src="pictures/http_parts.png" width="500" border="1" alt="http without res and date segments"/>
+ <img src="pictures/http_parts.png" width="600" border="0"
+ alt="With showing splitted parts" />
</li>
+ <li class="caption">
+ HTTP with showing splitted parts
+ </li>
+ </a>
+ </ul>
+ </li>
</ul>
</li>
</ul>
@@ -105,12 +142,18 @@
<li>
Example of HTTP communication with reassembling </br>(the information about count or size of reassembled packets will be shown accroding to settings in <code>view settings</code>) </br></br>
<ul class="gallery">
- <li>
- </li>
+ <li>
+ <ul>
+ <a href="pictures/http_reassembly.vsd">
<li>
- <img src="pictures/http_reassembly.png" width="500" border="1" alt="http with reassembling"/>
+ <img src="pictures/http_reassembly.png" width="500" border="0"
+ alt="With reassembling" />
</li>
- </ul>
+ <li class="caption">
+ HTTP with reassembling
+ </li>
+ </a>
+ </ul>
</li>
</ul>
</p>
@@ -144,112 +187,145 @@
<li>
Example of Ipv4 communication without aggregation </br></br>
<ul class="gallery">
- <li>
- </li>
+ <li>
+ <ul>
+ <a href="pictures/ipv4_no_aggregation.vsd">
<li>
- <img src="pictures/no_flow.png" width="550" border="1" alt="no aggregation"/>
+ <img src="pictures/ipv4_no_aggregation.png" width="500" border="0"
+ alt="ipv4_no_aggregation" />
</li>
+ <li class="caption">
+ Ipv4 without aggregation
+ </li>
+ </a>
</ul>
</li>
</ul>
<p>
- <ul>
+ </li>
<li>
Example of Ipv4 communication with aggregation:</br>
<ul>
<li>Equality rule:<code> Network protocol</code></li>
- <li>Aggreagation rule:<code> Succesive equal packets in entire communication</code>
- <li><i>The aggregation is relating to all channels TOGETHER. All succesive "equal" packets are joined together.</i>
- </br><font size="1.5" color="red">The differences with last example are highlighted with red color</font></li>
+ <li>Aggregation rule:<code> Succesive equal packets in entire communication</code></li>
+ <li><i>The aggregation is relating to all channels TOGETHER. All succesive "equal" packets are joined together.</i></li>
</ul>
</br></br>
<ul class="gallery">
- <li>
- </li>
+ <li>
+ <ul>
+ <a href="pictures/ipv4_sucequal.vsd">
<li>
- <img src="pictures/lst_flow.png" width="550" border="1" alt="Succesive equal packets in entire communication"/>
+ <img src="pictures/ipv4_sucequal.png" width="500" border="0"
+ alt="ipv4 successive eual" />
</li>
+ <li class="caption">
+ Ipv4 succesive equal packets in entire communication
+ </li>
+ </a>
</ul>
</li>
</ul>
+ </li>
<p>
- <ul>
<li>
Example of Ipv4 communication with aggregation:</br>
<ul>
<li>Equality rule:<code> Network protocol</code></li>
- <li>Aggreagation rule:<code> Continuous one-way communication in every channel</code></li>
- <li><i>The aggregation is relating to every channel SEPARATELY. All "equal" packets with same direction are joining together until start of communication in opposite direction. </i></br>
- <font size="1.5" color="red">The differences with last example are highlighted with red color</font></li>
+ <li>Aggregation rule:<code> Continuous one-way communication in every channel</code></li>
+ <li><i>The aggregation is relating to every channel SEPARATELY. All "equal" packets with same direction are joining together until start of communication in opposite direction. </i></li>
</ul>
</br></br>
- <ul class="gallery">
- <li>
- </li>
+ <ul class="gallery">
+ <li>
+ <ul>
+ <a href="pictures/ipv4_oneway.vsd">
<li>
- <img src="pictures/continuous_ow.png" width="550" border="1" alt="Continuous one-way communication in every channel"/>
+ <img src="pictures/ipv4_oneway.png" width="500" border="0"
+ alt="ipv4 one way" />
</li>
+ <li class="caption">
+ Ipv4 continuous one-way communication in every channel
+ </li>
+ </a>
</ul>
</li>
</ul>
<p>
- <ul>
<li>
Example of Ipv4 communication with aggregation:</br>
<ul>
<li>Equality rule:<code> Network protocol</code></li>
- <li>Aggreagation rule:<code> Continuous both-way communication in every channel</code></li>
+ <li>Aggregation rule:<code> Continuous both-way communication in every channel</code></li>
<li><i>The aggregation is relating to every channel SEPARATELY. All "equal" packets in the same communication channel are joining together until start of communication in the other channel.</i></li>
</ul>
</br></br>
- <ul class="gallery">
- <li>
- </li>
+ <ul class="gallery">
+ <li>
+ <ul>
+ <a href="pictures/ipv4_bothway.vsd">
<li>
- <img src="pictures/continuous_bw.png" width="550" border="1" alt="Continuous both-way communication in every channel"/>
+ <img src="pictures/ipv4_bothway.png" width="500" border="0"
+ alt="ipv4 both way" />
</li>
+ <li class="caption">
+ Ipv4 continuous both-way communication in every channel
+ </li>
+ </a>
</ul>
</li>
</ul>
<p>
- <ul>
<li>
Example of Ipv4 communication with aggregation:</br>
<ul>
<li>Equality rule:<code> Network protocol</code></li>
- <li>Aggreagation rule:<code> Equal packets in entire communication </code></li>
+ <li>Aggregation rule:<code> Equal packets in entire communication </code></li>
<li><i>The aggregation is relating to all channels TOGETHER. All "equal" packets with the same direction are simply joined together.</i></li>
</ul>
</br></br>
- <ul class="gallery">
- <li>
- </li>
+ <ul class="gallery">
+ <li>
+ <ul>
+ <a href="pictures/ipv4_all_equal.vsd">
<li>
- <img src="pictures/all_flow.png" width="550" border="1" alt="Equal packets in entire communication"/>
+ <img src="pictures/ipv4_all_equal.png" width="500" border="0"
+ alt="ipv4 all equal" />
</li>
+ <li class="caption">
+ Ipv4 equal packets in entire communication
+ </li>
+ </a>
</ul>
</li>
</ul>
<p>
- <ul>
<li>
Example of Ipv4 communication with aggregation:</br>
<ul>
<li>Equality rule:<code> Network protocol</code></li>
- <li>Aggreagation rule:<code> Equal packets in interval[100]time units<font size="2">(in ms for this case) </font></code></li>
- <li><i>The aggregation is relating to all channels TOGETHER. All "equal" packets in the section of 100 ms are simply joined together.</i></br>
- <font size="1.5" color="red">The different time sections are highlighted with red color</font></li>
+ <li>Aggregation rule:<code> Equal packets in interval[100]time units<font size="2">(in ms for this case) </font></code></li>
+ <li><i>The aggregation is relating to all channels TOGETHER. All "equal" packets in the section of 100 ms are simply joined together.</i></li>
</ul>
</br></br>
<ul class="gallery">
- <li>
- </li>
+ <li>
+ <ul>
+ <a href="pictures/ipv4_time_aggreg.vsd">
<li>
- <img src="pictures/time_flow.png" width="550" border="1" alt="Equal packets in interval[100]time units"/>
+ <img src="pictures/ipv4_time_aggreg.png" width="500" border="0"
+ alt="ipv4 equal packets in interval 100 ms" />
</li>
+ <li class="caption">
+ Ipv4 euqal packets in interval 100 time units
+ </li>
+ </a>
</ul>
</li>
</ul>
+ </li>
+ </li>
+ </ul>
</div>
</body>
</html>
\ No newline at end of file
Modified: trunk/doc/help/pcap/pcap.head.htm
===================================================================
--- trunk/doc/help/pcap/pcap.head.htm 2013-02-19 12:11:16 UTC (rev 1588)
+++ trunk/doc/help/pcap/pcap.head.htm 2013-02-19 23:44:54 UTC (rev 1589)
@@ -7,7 +7,7 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>
- Beautify
+ Pcap
</title>
<link href="../help.css" rel="stylesheet" type="text/css" />
</head>
Modified: trunk/doc/help/pcap/pictures/http_clear.png
===================================================================
(Binary files differ)
Added: trunk/doc/help/pcap/pictures/http_clear.vsd
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/pictures/http_clear.vsd
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Modified: trunk/doc/help/pcap/pictures/http_parts.png
===================================================================
(Binary files differ)
Added: trunk/doc/help/pcap/pictures/http_parts.vsd
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/pictures/http_parts.vsd
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Modified: trunk/doc/help/pcap/pictures/http_reassembly.png
===================================================================
(Binary files differ)
Added: trunk/doc/help/pcap/pictures/http_reassembly.vsd
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/pictures/http_reassembly.vsd
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/pictures/ipv4_all_equal.png
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/pictures/ipv4_all_equal.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/pictures/ipv4_all_equal.vsd
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/pictures/ipv4_all_equal.vsd
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/pictures/ipv4_bothway.png
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/pictures/ipv4_bothway.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/pictures/ipv4_bothway.vsd
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/pictures/ipv4_bothway.vsd
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/pictures/ipv4_no_aggregation.png
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/pictures/ipv4_no_aggregation.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/pictures/ipv4_no_aggregation.vsd
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/pictures/ipv4_no_aggregation.vsd
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/pictures/ipv4_oneway.png
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/pictures/ipv4_oneway.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/pictures/ipv4_oneway.vsd
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/pictures/ipv4_oneway.vsd
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/pictures/ipv4_sucequal.png
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/pictures/ipv4_sucequal.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/pictures/ipv4_sucequal.vsd
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/pictures/ipv4_sucequal.vsd
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/pictures/ipv4_time_aggreg.png
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/pictures/ipv4_time_aggreg.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/doc/help/pcap/pictures/ipv4_time_aggreg.vsd
===================================================================
(Binary files differ)
Property changes on: trunk/doc/help/pcap/pictures/ipv4_time_aggreg.vsd
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Modified: trunk/src/data/pcap/pcap_settings.cpp
===================================================================
--- trunk/src/data/pcap/pcap_settings.cpp 2013-02-19 12:11:16 UTC (rev 1588)
+++ trunk/src/data/pcap/pcap_settings.cpp 2013-02-19 23:44:54 UTC (rev 1589)
@@ -104,6 +104,9 @@
bool PcapSettings::is_aggregation_active()
{
+ if(flow_settings->apply_aggreg)
+ return false;
+
return (adv_settings->http_settings->reassembly || adv_settings->tcp_settings->reassembly
|| adv_settings->sip_settings->reassembly);
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <tm...@us...> - 2013-02-24 18:36:57
|
Revision: 1595
http://scstudio.svn.sourceforge.net/scstudio/?rev=1595&view=rev
Author: tmarton
Date: 2013-02-24 18:19:59 +0000 (Sun, 24 Feb 2013)
Log Message:
-----------
edited instructions
Modified Paths:
--------------
trunk/doc/scstudio-instructions.rtf
trunk/src/view/visio/scstudio.sln
Modified: trunk/doc/scstudio-instructions.rtf
===================================================================
--- trunk/doc/scstudio-instructions.rtf 2013-02-24 10:12:33 UTC (rev 1594)
+++ trunk/doc/scstudio-instructions.rtf 2013-02-24 18:19:59 UTC (rev 1595)
@@ -1,276188 +1,168042 @@
-{\rtf1\ansi\ansicpg1250\deff0\deflang1051\deflangfe1051\deftab709{\fonttbl{\f0\fswiss\fprq2\fcharset238{\*\fname Arial;}Arial CE;}{\f1\froman\fprq2\fcharset238{\*\fname Times New Roman;}Times New Roman CE;}{\f2\fswiss\fprq2\fcharset0 Arial;}{\f3\fnil\fcharset0 Calibri;}{\f4\fmodern\fprq1\fcharset238{\*\fname Courier New;}Courier New CE;}}
-{\colortbl ;\red0\green0\blue255;\red0\green0\blue128;}
-{\stylesheet{ Normal;}{\s1 heading 1;}{\s2 heading 2;}}
-{\*\generator Msftedit 5.41.21.2510;}\viewkind4\uc1\pard\li2268\sb120\sa120\sl280\slmult0\f0\fs40\par
-\par
-\par
-\par
-\b Sequence Chart Studio\par
-\b0 User Instructions\par
-\par
-Version 0.5.3\par
-\pard\fs20\par
-\par
-\par
-\par
-\par
-\par
-\par
-\par
-\par
-\par
-\par
-\par
-\par
-\par
-\par
-\par
-\par
-\par
-\par
-\par
-\par
-\par
-\par
-\par
-\par
-\par
-\par
-\par
-\par
-\par
-\pard\li2268 Copyright (c) 2008\endash 2010 Petr Gotthard\par
-\pard\li2268\sb120\sa120\sl280\slmult0 Copyright (c) 2011\endash 2012 Ond\'f8ej Bouda\lang1029\par
-\lang1051 All rights reserved. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License version 1.3, as published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.\par
-\pard\keepn\pagebb\s1\li2268\sb120\sa240\sl280\slmult0\kerning32\b\fs36 Introduction\par
-\pard\li2268\sb120\sa120\sl280\slmult0\kerning0\b0\fs20 The Sequence Chart Studio (or SCStudio, for short) is a user-friendly drawing and verification tool for Message Sequence Charts (MSC).\par
-The first part of this document describes the SCStudio graphical user interface. As it is implemented as a Microsoft Visio add-on, it requires Microsoft Visio 2003 or higher and runs on Microsoft Windows only.\par
-Besides the graphical frontend, a command-line interface is also available for verifying and manipulation with MSCs in the ITU-T Z.120 textual representation. See the Command-Line Interface part of this document.\par
-\par
-\pard\fi-2268\li2268 Download\tab The latest version of SCStudio can be freely downloaded from {\field{\*\fldinst{HYPERLINK "http://scstudio.sourceforge.net"}}{\fldrslt{\ul\cf1 http://scstudio.sourceforge.net}}}\f0\fs20\par
-\pard\li2268\sb120\sa120\sl280\slmult0\par
-\pard\fi-2268\li2268\sb120\sa120\sl280\slmult0 User Support\tab If you need help:\par
-\pard\fi-311\li3033\f1\endash\tab\f0 Join {\field{\*\fldinst{HYPERLINK "http://lists.sourceforge.net/mailman/listinfo/scstudio-devel"}}{\fldrslt{\ul\cf1 http://lists.sourceforge.net/mailman/listinfo/scstudio-devel}}}\f0\fs20 ;\par
-\f1\endash\tab\f0 Send an e-mail to {\field{\*\fldinst{HYPERLINK "mailto:scs...@li..."}}{\fldrslt{\cf1\ul scs...@li...}}}\cf0\ulnone\f0\fs20 .\par
-\pard\li2268\sb120\sa120\sl280\slmult0 Please note, to avoid SPAM (egg sausage and bacon), the list doesn't accept mails from non-members; you have to join the list.\par
-\par
-\pard\keepn\pagebb\s1\li2268\sb120\sa240\sl280\slmult0\kerning32\b\fs36 Part I. Graphical User Interface\par
-\pard\li2268\sb120\sa120\sl280\slmult0\kerning0\b0\fs20\par
-\pard\keepn\s1\li2268\sb120\sa240\sl280\slmult0\kerning32\b\fs28 Basic Instructions\par
-\pard\fi-2268\li2268\sb120\sa120\sl280\slmult0\kerning0\b0\fs20 Requirements\tab The graphical frontend of the SCStudio runs on Microsoft Windows only, and requires an already installed copy of Microsoft Visio 2003 or higher.\par
-Installation\tab Download and run 'scstudio-setup-0.5.\lang1033\f2 3\lang1051\f0 .exe'. The setup application will guide you through the installation process.\par
-Macro Security\tab The installation application will ask you to import a new certificate. This is necessary to certify the installed macros.\par
-\pard\li2268\sb120\sa120\sl280\slmult0 When executing Microsoft Visio, a security warning may appear. When it appears:\par
-\pard\fi-311\li3033\sb120\sa120\sl280\slmult0\tx3033\f1\endash\tab\f0 Verify the macros are published by \ldblquote Sequence Chart Studio\rdblquote ;\par
-\f1\endash\tab\f0 Select "Always trust macros from this publisher";\par
-\pard\fi-311\li3033\sb120\sa120\sl280\slmult0\f1\endash\tab\f0 Click "Enable Macros".\par
-\pard\li2268\sb120\sa120\sl280\slmult0\par
-\pard\fi-2268\li2268\sb120\sa120\sl280\slmult0 Operation\tab The add-on will be automatically enabled when the MSC template is used, or when a MSC stencil is dropped to (any) document.\par
-\pard\li2268\sb120\sa120\sl280\slmult0 Please note, the templates and stencils from other products (e.g. Sandrila) are not supported. Only files provided with the SCStudio application will work correctly.\par
-If you don't want to use the MSC template and/or MSC stencils,\par
-\pard\fi-311\li3033\sb120\sa120\sl280\slmult0\tx3033\f1\endash\tab\f0 Open or create your document;\par
-\pard\fi-311\li3033\sb120\sa120\sl280\slmult0\f1\endash\tab\f0 Select menu Tools \endash Add-Ons \endash Run Add-On..., select "Sequence Chart Studio" and click OK.\par
-\pard\keepn\pagebb\s1\li2268\sb120\sa240\sl280\slmult0\kerning32\b\fs28 Graphics Editor\par
-\pard\keepn\s2\li2268\sb360\sa60\sl280\slmult0\kerning0\fs24 Introduction\par
-\pard\fi-2268\li2268\sb120\sa120\sl280\slmult0\b0\fs20 Selecting Template\tab After starting the Microsoft Visio, select the category \ldblquote Sequence Chart Studio\rdblquote and choose the MSC drawing template.\par
-\pard\qr\cf2 Category\par
-\cf0\lang9\f3\fs22{\pict\wmetafile8\picw21749\pich14393\picwgoal6165\pichgoal4080
-0100090000038a3e0a000000613e0a0000000400000003010800050000000b0200000000050000
-000c0221023703030000001e0004000000070104000400000007010400613e0a00410b2000cc00
-200236030000000020023603000000002800000036030000200200000100180000000000807c14
-000000000000000000000000000000000042424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-424242424242424242424242424242424242424242424242424242424242424242424242424242
-42424242424242424242424242424242424242424242424242420000ced6de8484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484848484848484
-848484848484848484848484848484848484848484848484848484848484848484844242420000
-ced6d6ffffffced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6
-ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6de
-ced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6
-ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6de
-ced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6
-ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6de
-ced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6
-ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6de
-ced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6
-ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6de
-ced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6
-ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6de
-ced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6
-ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6de
-ced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6
-ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6de
-ced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6
-ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6de
-ced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6
-ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6de
-ced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6
-ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6de
-ced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6
-ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6de
-ced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6
-ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6de
-ced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6
-ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6de
-ced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6
-ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6de
-ced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6
-ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6de
-ced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6
-ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6de
-ced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6
-ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6de
-ced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6
-ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6de
-ced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6
-ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6de
-ced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6
-ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6de
-ced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6
-ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6de
-ced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6
-ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6de
-ced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6
-ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6de
-ced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6
-ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6de
-ced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6
-ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6de
-ced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6
-ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6de
-ced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6
-ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6de
-ced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6
-ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6de
-ced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6
-ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6de
-ced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6
-ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6de
-ced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6
-ced6de8484844242420000ced6deffffffced6deced6d6ced6deced6d6ced6deced6d6ced6dece
-d6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ce
-d6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6dece
-d6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ce
-d6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6dece
-d6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ce
-d6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6dece
-d6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ce
-d6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6dece
-d6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ce
-d6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6dece
-d6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ce
-d6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6dece
-d6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ce
-d6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6dece
-d6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ce
-d6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6dece
-d6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ce
-d6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6dece
-d6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ce
-d6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6dece
-d6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ce
-d6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6dece
-d6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ce
-d6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6dece
-d6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ce
-d6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6dece
-d6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ce
-d6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6dece
-d6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ce
-d6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6dece
-d6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ce
-d6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6dece
-d6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ce
-d6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6dece
-d6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ce
-d6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6dece
-d6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ce
-d6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6dece
-d6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ce
-d6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6dece
-d6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ce
-d6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6dece
-d6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ce
-d6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6dece
-d6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ce
-d6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6dece
-d6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ce
-d6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6dece
-d6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ce
-d6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6dece
-d6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ce
-d6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6dece
-d6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ce
-d6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6dece
-d6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ce
-d6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6dece
-d6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ce
-d6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6dece
-d6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ce
-d6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6dece
-d6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ce
-d6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6deced6d6ced6dece
-d6d6ced6deced6d6ced6deced6d68484844242420000ced6d6ffffffced6d6ced6deffdec6ffe7
-c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffde
-c6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7
-c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffde
-c6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7
-c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffde
-c6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7
-c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffde
-c6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7
-c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffde
-c6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7
-c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffde
-c6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7
-c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffde
-c6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7
-c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffde
-c6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7
-c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffde
-c6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7
-c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffde
-c6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7
-c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffde
-c6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7
-c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffde
-c6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7
-c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffde
-c6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7
-c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffde
-c6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7
-c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffde
-c6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7
-c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffde
-c6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7
-c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffde
-c6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7
-c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffde
-c6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7
-c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffde
-c6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7
-c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffde
-c6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7
-c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffde
-c6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7
-c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffde
-c6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7
-c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffde
-c6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6ffe7c6ffdec6f...
[truncated message content] |
|
From: <ob...@us...> - 2013-03-21 18:08:51
|
Revision: 1724
http://sourceforge.net/p/scstudio/code/1724
Author: obouda
Date: 2013-03-21 18:08:46 +0000 (Thu, 21 Mar 2013)
Log Message:
-----------
merged from conditions branch
Modified Paths:
--------------
trunk/README
trunk/doc/help/CMakeLists.txt
trunk/src/check/localchoice/local_choice_checker.cpp
trunk/src/check/localchoice/local_choice_checker.h
trunk/src/check/order/acyclic_checker.cpp
trunk/src/check/order/acyclic_checker.h
trunk/src/check/order/fifo_checker.cpp
trunk/src/check/order/fifo_checker.h
trunk/src/check/pseudocode/causal_closure_initiator.cpp
trunk/src/check/pseudocode/causal_closure_initiator.h
trunk/src/check/pseudocode/communication_graph.cpp
trunk/src/check/pseudocode/communication_graph.h
trunk/src/check/pseudocode/msc_duplicators.cpp
trunk/src/check/pseudocode/msc_duplicators.h
trunk/src/check/pseudocode/utils.cpp
trunk/src/check/pseudocode/utils.h
trunk/src/check/pseudocode/visual_closure_initiator.cpp
trunk/src/check/pseudocode/visual_closure_initiator.h
trunk/src/check/race/footprint.cpp
trunk/src/check/race/footprint.h
trunk/src/check/race/race_checker.cpp
trunk/src/check/race/race_checker.h
trunk/src/check/structure/name_checker.cpp
trunk/src/check/time/constraint_syntax.cpp
trunk/src/check/time/tightening.cpp
trunk/src/check/time/tightening.h
trunk/src/check/time/time_consistency.h
trunk/src/check/time/time_pseudocode.cpp
trunk/src/check/time/time_pseudocode.h
trunk/src/check/time/time_trace_race.h
trunk/src/check/time/traverse_erase.cpp
trunk/src/check/time/traverse_erase.h
trunk/src/data/CMakeLists.txt
trunk/src/data/Z120/Context.cpp
trunk/src/data/Z120/Context_Impl.h
trunk/src/data/Z120/string_list_printer.h
trunk/src/data/Z120/z120.h
trunk/src/data/Z120/z120_save.cpp
trunk/src/data/beautify/instance_sequencer.cpp
trunk/src/data/beautify/layout_optimizer.cpp
trunk/src/data/beautify/time_transformer.cpp
trunk/src/data/checker.h
trunk/src/data/dfs_area_traverser.cpp
trunk/src/data/dfs_area_traverser.h
trunk/src/data/dfs_events_traverser.cpp
trunk/src/data/dfs_events_traverser.h
trunk/src/data/dfs_instance_events_traverser.cpp
trunk/src/data/dfs_instance_events_traverser.h
trunk/src/data/engmann/engmann.cpp
trunk/src/data/exporttex/exportTex.cpp
trunk/src/data/modelchecking/divine.cpp
trunk/src/data/modelchecking/divine.h
trunk/src/data/msc/BMsc.cpp
trunk/src/data/msc/BMsc.h
trunk/src/data/msc/Comment.h
trunk/src/data/msc/Commentable.h
trunk/src/data/msc/CompleteMessage.cpp
trunk/src/data/msc/CompleteMessage.h
trunk/src/data/msc/Condition.h
trunk/src/data/msc/ConditionNode.cpp
trunk/src/data/msc/ConditionNode.h
trunk/src/data/msc/ConnectionNode.h
trunk/src/data/msc/CoregionArea.cpp
trunk/src/data/msc/CoregionArea.h
trunk/src/data/msc/CoregionEventRelation.h
trunk/src/data/msc/EndNode.h
trunk/src/data/msc/EventArea.h
trunk/src/data/msc/HMsc.cpp
trunk/src/data/msc/HMsc.h
trunk/src/data/msc/HMscNode.cpp
trunk/src/data/msc/HMscNode.h
trunk/src/data/msc/IncompleteMessage.cpp
trunk/src/data/msc/IncompleteMessage.h
trunk/src/data/msc/Instance.cpp
trunk/src/data/msc/Instance.h
trunk/src/data/msc/LocalAction.h
trunk/src/data/msc/Msc.h
trunk/src/data/msc/MscElement.h
trunk/src/data/msc/MscElementTmpl.h
trunk/src/data/msc/MscMessage.cpp
trunk/src/data/msc/MscMessage.h
trunk/src/data/msc/NodeRelation.cpp
trunk/src/data/msc/NodeRelation.h
trunk/src/data/msc/PredecessorNode.cpp
trunk/src/data/msc/PredecessorNode.h
trunk/src/data/msc/ReferenceNode.h
trunk/src/data/msc/StartNode.h
trunk/src/data/msc/StrictOrderArea.h
trunk/src/data/msc/SuccessorNode.cpp
trunk/src/data/msc/SuccessorNode.h
trunk/src/data/msc/time/AbsoluteTime.h
trunk/src/data/msc/time/TimeConstraint.cpp
trunk/src/data/msc/time/TimeConstraint.h
trunk/src/data/msc/time/TimeRelation.cpp
trunk/src/data/msc/time/TimeRelation.h
trunk/src/data/msc/time/TimeRelationEvent.cpp
trunk/src/data/msc/time/TimeRelationEvent.h
trunk/src/data/msc/time/TimeRelationRefNode.cpp
trunk/src/data/msc/time/TimeRelationRefNode.h
trunk/src/data/msc.h
trunk/src/data/mscgen/MscgenContext.cpp
trunk/src/data/mscgen/mscgen.h
trunk/src/data/mscgen/string_list_printer.h
trunk/src/data/pcap/pcap_handler.cpp
trunk/src/data/pcap/pcap_handler.h
trunk/src/data/pcap/pcap_settings.cpp
trunk/src/data/time_relevant_ordering/dfs_backward_traverser.cpp
trunk/src/data/time_relevant_ordering/dfs_backward_traverser.h
trunk/src/data/time_relevant_ordering/time_order_optimizer.cpp
trunk/src/data/time_relevant_ordering/time_order_optimizer.h
trunk/src/data/time_relevant_ordering/time_relevant_ordering.cpp
trunk/src/data/time_relevant_ordering/time_relevant_ordering.h
trunk/src/membership/diff_impl.cpp
trunk/src/membership/diff_impl.h
trunk/src/membership/membership_additional.cpp
trunk/src/membership/membership_additional.h
trunk/src/membership/membership_alg.cpp
trunk/src/membership/membership_alg.h
trunk/src/membership/membership_base.h
trunk/src/membership/membership_time.cpp
trunk/src/membership/membership_time.h
trunk/src/montecarlo/montecarlo.cpp
trunk/src/montecarlo/montecarlo.h
trunk/src/scstudio.cpp
trunk/src/view/visio/addon/enums.h
trunk/src/view/visio/addon/extract.cpp
trunk/src/view/visio/addon/extract.h
trunk/src/view/visio/addon/instancesfielddlg.cpp
trunk/src/view/visio/addon/instancesfielddlg.h
trunk/src/view/visio/addon/messagesequencedlg.cpp
trunk/src/view/visio/addon/messagesequencedlg.h
trunk/src/view/visio/addon/pageutils.cpp
trunk/src/view/visio/addon/pageutils.h
trunk/src/view/visio/addon/shapeutils.cpp
trunk/src/view/visio/addon/shapeutils.h
trunk/src/view/visio/addon/visualize.cpp
trunk/src/view/visio/addon/visualize.h
trunk/tests/acyclic_checker_test.cpp
trunk/tests/bmsc_matrix_converter_test.cpp
trunk/tests/bmsc_tightening_test.cpp
trunk/tests/constrain_check_test.cpp
trunk/tests/exporttex_test/exporttex_diff.py
trunk/tests/exporttex_test/exporttex_test.cpp
trunk/tests/exporttex_test/exporttex_test00.mpr.result
trunk/tests/exporttex_test/exporttex_test94.mpr
trunk/tests/fifo_checker_test.cpp
trunk/tests/hmsc_all_paths_test.cpp
trunk/tests/local_choice_checker_test.cpp
trunk/tests/max_tightener_test.cpp
trunk/tests/race_checker_test.cpp
trunk/tests/tighten_hmsc_test.cpp
trunk/tests/tighten_msc_test.cpp
trunk/tests/universal_boundedness_checker_test.cpp
Added Paths:
-----------
trunk/.gitignore
trunk/src/data/msc/Event.cpp
trunk/src/data/msc/Event.h
trunk/src/data/msc/EventArea.cpp
trunk/src/data/msc/EventTmpl.h
trunk/src/data/msc/MessageEvent.cpp
trunk/src/data/msc/MessageEvent.h
trunk/src/data/msc/StrictOrderArea.cpp
trunk/src/view/visio/scstudio.vs2012.sln
Removed Paths:
-------------
trunk/src/check/race/bmsc_race_checker.cpp
trunk/src/check/race/bmsc_race_checker.h
trunk/src/data/msc/CoregionEvent.cpp
trunk/src/data/msc/CoregionEvent.h
trunk/src/data/msc/Event.cpp
trunk/src/data/msc/Event.h
trunk/src/data/msc/EventTmpl.h
trunk/src/data/msc/GeneralEvent.cpp
trunk/src/data/msc/GeneralEvent.h
trunk/src/data/msc/GeneralEventTmpl.h
trunk/src/data/msc/StrictEvent.h
trunk/src/data/msc_modifications.h
Property Changed:
----------------
trunk/
trunk/third-party-sw/antlr/runtime/C/configure
trunk/third-party-sw/antlr/runtime/C/copy.sh
Index: trunk
===================================================================
--- trunk 2013-03-21 17:02:30 UTC (rev 1723)
+++ trunk 2013-03-21 18:08:46 UTC (rev 1724)
Property changes on: trunk
___________________________________________________________________
Modified: svn:mergeinfo
## -1,2 +1,3 ##
+/branches/conditions:1599-1723
/branches/internal-structure-refactoring:1540-1552
/branches/refactoring:1332-1337,1339,1341
\ No newline at end of property
Copied: trunk/.gitignore (from rev 1723, branches/conditions/.gitignore)
===================================================================
--- trunk/.gitignore (rev 0)
+++ trunk/.gitignore 2013-03-21 18:08:46 UTC (rev 1724)
@@ -0,0 +1,89 @@
+CMakeCache.txt
+DartConfiguration.tcl
+Debug/
+Release/
+Testing/
+*.vcproj
+*.vcproj.*.user
+*.cmake
+*.dir
+CMakeFiles/
+*.sln
+*.suo
+Makefile
+*.so
+doc/beautify.aux
+doc/beautify.log
+doc/beautify.out
+doc/beautify.pdf
+doc/doxygen/doxygen.config.local
+doc/find_flow/memb_alg.aux
+doc/find_flow/memb_alg.log
+doc/find_flow/memb_alg.out
+doc/find_flow/memb_alg.pdf
+doc/help/*.html
+doc/help/*/*.html
+scstudio.ncb
+src/config.h
+src/data/Z120/Z120.tokens
+src/data/Z120/Z120Lexer.c
+src/data/Z120/Z120Lexer.h
+src/data/Z120/Z120Parser.c
+src/data/Z120/Z120Parser.h
+src/data/mscgen/Mscgen.tokens
+src/data/mscgen/MscgenLexer.c
+src/data/mscgen/MscgenLexer.h
+src/data/mscgen/MscgenParser.c
+src/data/mscgen/MscgenParser.h
+src/scstudio
+src/view/visio/addon/dlldata.c
+src/view/visio/addon/eventsink.h
+src/view/visio/addon/eventsink_i.c
+src/view/visio/addon/eventsink_p.c
+src/view/visio/redistribute
+src/view/visio/setup-nsis/api.h
+src/view/visio/setup-nsis/pluginapi.h
+src/view/visio/setup-nsis/pluginapi.c
+tests/acyclic_checker_test
+tests/checker_test
+tests/deadlock_checker_test
+tests/decimal_test
+tests/diff/diff_test
+tests/engmann_test
+tests/fifo_checker_test
+tests/find_block_test
+tests/interval_set_test
+tests/interval_string
+tests/interval_test
+tests/livelock_checker_test
+tests/local_choice_checker_test
+tests/membership/membership_test
+tests/montecarlo/montecarlo_test
+tests/pcap/pcap_test
+tests/race_checker_test
+tests/tighten_hmsc_test
+tests/tighten_msc_test
+tests/tightening_tests/tighten_test
+tests/time_relevant_ordering/time_relevant_ordering
+tests/universal_boundedness_checker_test
+tests/z120_test/z120_test
+third-party-sw/boost/*.exe
+third-party-sw/boost/bin.v2/
+third-party-sw/boost/bootstrap.log
+third-party-sw/boost/project-config.jam
+third-party-sw/boost/stage/
+third-party-sw/boost/tools/build/v2/engine/bin.*/
+third-party-sw/boost/tools/build/v2/engine/bootstrap/
+third-party-sw/antlr/runtime/C/.deps/
+third-party-sw/antlr/runtime/C/.libs/
+third-party-sw/antlr/runtime/C/*.o
+third-party-sw/antlr/runtime/C/*.lo
+third-party-sw/antlr/runtime/C/config.log
+third-party-sw/antlr/runtime/C/config.status
+third-party-sw/antlr/runtime/C/libantlr3c.a
+third-party-sw/antlr/runtime/C/libantlr3c.la
+third-party-sw/antlr/runtime/C/libantlr3c.lai
+third-party-sw/antlr/runtime/C/libtool
+third-party-sw/antlr/runtime/C/stamp-h1
+third-party-sw/boost/b2
+third-party-sw/boost/bjam
Modified: trunk/README
===================================================================
--- trunk/README 2013-03-21 17:02:30 UTC (rev 1723)
+++ trunk/README 2013-03-21 18:08:46 UTC (rev 1724)
@@ -31,7 +31,7 @@
Compiling SCStudio (Linux version)
----------------------------------
-$ cd scstudio/trunk
+$ cd scstudio
$ cmake .
$ make
[$ make test]
Modified: trunk/doc/help/CMakeLists.txt
===================================================================
--- trunk/doc/help/CMakeLists.txt 2013-03-21 17:02:30 UTC (rev 1723)
+++ trunk/doc/help/CMakeLists.txt 2013-03-21 18:08:46 UTC (rev 1724)
@@ -81,4 +81,3 @@
ENDFOREACH(FILE)
# $Id$
-
Modified: trunk/src/check/localchoice/local_choice_checker.cpp
===================================================================
--- trunk/src/check/localchoice/local_choice_checker.cpp 2013-03-21 17:02:30 UTC (rev 1723)
+++ trunk/src/check/localchoice/local_choice_checker.cpp 2013-03-21 18:08:46 UTC (rev 1724)
@@ -11,12 +11,13 @@
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
- * Copyright (c) 2008 V\xE1clav Vacek <va...@ic...>
+ * Copyright (c) 2008 Vaclav Vacek <va...@ic...>
*
* $Id$
*/
#include "check/localchoice/local_choice_checker.h"
+#include "data/msc/CoregionArea.h"
LocalChoiceCheckerPtr LocalChoiceChecker::m_instance;
const std::string LocalChoiceChecker::lc_mep_attribute = "lcmep";
@@ -66,22 +67,21 @@
current_node->set_attribute(LocalChoiceChecker::lc_nip_attribute, nip);
}
-void BMscInitListener::on_white_event_found(Event *e)
+void BMscInitListener::on_white_event_found(MessageEvent *e)
{
- CoregionEventPtr cor_e;
if(m_first) //Still looking for a possibly first event in the instance
{
- cor_e = dynamic_cast<CoregionEvent*>(e);
- if(cor_e)
+ CoregionArea* coregion = dynamic_cast<CoregionArea*>(e->get_area());
+ if(coregion != NULL)
{
if(m_first_coregion == NULL)
- m_first_coregion = cor_e->get_coregion_area();
+ m_first_coregion = coregion;
- if(m_first_coregion == cor_e->get_coregion_area())
+ if(m_first_coregion == coregion)
{
- if(cor_e->is_minimal())
+ if(e->is_minimal())
{
- if(cor_e->is_send())
+ if(e->is_send())
m_mep = true;
}
else //the event is not minimal
@@ -109,9 +109,9 @@
HMscNodePListPtr successors;
HMscNodePList::iterator it;
std::set<std::wstring>::iterator str_it;
-
+
std::set<std::wstring> empty; //neutral value for get_attribute
-
+
successors = NodeFinder::successors(n, "rnf_inner"); //the string is the name of the dynamic attribute
std::set<std::wstring> &curr_nip = n->get_attribute(LocalChoiceChecker::lc_nip_attribute, empty);
Modified: trunk/src/check/localchoice/local_choice_checker.h
===================================================================
--- trunk/src/check/localchoice/local_choice_checker.h 2013-03-21 17:02:30 UTC (rev 1723)
+++ trunk/src/check/localchoice/local_choice_checker.h 2013-03-21 18:08:46 UTC (rev 1724)
@@ -11,7 +11,7 @@
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
- * Copyright (c) 2008 V\xE1clav Vacek <va...@ic...>
+ * Copyright (c) 2008 Vaclav Vacek <va...@ic...>
*
* $Id$
*/
@@ -31,7 +31,7 @@
class NonlocalNode: public std::exception
{
-public:
+public:
virtual const char* what() const throw()
{
return "A nonlocal choice node has been found.";
@@ -86,7 +86,7 @@
}
void on_white_node_found(HMscNode *n);
bool changed(void)
- {
+ {
return m_change;
}
};
@@ -105,7 +105,7 @@
bool m_mep;
CoregionArea *m_first_coregion;
public:
- void on_white_event_found(Event *e);
+ void on_white_event_found(MessageEvent *e);
BMscInitListener(void)
:m_idle(true),m_first(true),m_mep(false), m_first_coregion(NULL)
{}
@@ -117,7 +117,7 @@
m_first_coregion = NULL;
}
bool is_idle(void)
- {
+ {
return m_idle;
}
bool is_mep(void)
@@ -129,19 +129,19 @@
class SCLOCALCHOICE_EXPORT LocalChoiceChecker: public Checker, public HMscChecker
{
protected:
-
+
/**
* Common instance.
*/
static LocalChoiceCheckerPtr m_instance;
BMscGraphDuplicator m_graph_duplicator;
-
-
+
+
public:
static const std::string lc_mep_attribute;
static const std::string lc_nip_attribute;
-
+
LocalChoiceChecker(){};
/**
* Human readable name of the property being checked.
@@ -167,7 +167,7 @@
* Cleans up no more needed attributes.
*/
void cleanup_attributes();
-
+
/**
* Supports all mappers
*/
@@ -175,8 +175,8 @@
{
return true;
}
-
-
+
+
static LocalChoiceCheckerPtr instance()
{
if(!m_instance.get())
@@ -185,5 +185,5 @@
}
};
-
+
// $Id$
Modified: trunk/src/check/order/acyclic_checker.cpp
===================================================================
--- trunk/src/check/order/acyclic_checker.cpp 2013-03-21 17:02:30 UTC (rev 1723)
+++ trunk/src/check/order/acyclic_checker.cpp 2013-03-21 18:08:46 UTC (rev 1724)
@@ -57,28 +57,12 @@
BMscDuplicator duplicator;
for(it = bmsc->get_instances().begin(); it != bmsc->get_instances().end(); it++)
{
- ConnectionNode *dummy;
- EventAreaPtr eap = (*it)->get_first_area();
- while(eap)
+ const MessageEventPList min_events = (*it)->get_minimal_events();
+ for (MessageEventPList::const_iterator i = min_events.begin(); i != min_events.end(); ++i)
{
- if(eap->is_empty())
- eap = eap->get_next_area();
- else
- break;
+ ConnectionNode* node = (*i)->get_attribute<ConnectionNode*>("ACC_node", NULL);
+ start->add_successor(node);
}
- if(eap)
- {
- StrictOrderArea *seap = dynamic_cast<StrictOrderArea*>(eap.get());
- if(seap)
- start->add_successor(seap->get_first_event()->get_attribute("ACC_node", dummy));
- else
- {
- CoregionArea *ceap = dynamic_cast<CoregionArea*>(eap.get());
- CoregionEventPVector::const_iterator cit;
- for(cit = ceap->get_minimal_events().begin(); cit != ceap->get_minimal_events().end(); cit++)
- start->add_successor((*cit)->get_attribute("ACC_node", dummy));
- }
- }
}
cycle_traverser.traverse(hmsc);
std::list<BMscPtr> res;
@@ -96,8 +80,7 @@
cono = dynamic_cast<ConnectionNode*>((*eit));
if(cono)
{
- Event *e, *dummy;
- e = cono->get_attribute("ACC_event", dummy);
+ MessageEventP e = cono->get_attribute<MessageEventP>("ACC_event", NULL);
duplicator.get_copy(e)->set_marked(MARKED);
}
nore = dynamic_cast<NodeRelation*>((*eit));
Modified: trunk/src/check/order/acyclic_checker.h
===================================================================
--- trunk/src/check/order/acyclic_checker.h 2013-03-21 17:02:30 UTC (rev 1723)
+++ trunk/src/check/order/acyclic_checker.h 2013-03-21 18:08:46 UTC (rev 1724)
@@ -49,7 +49,7 @@
AssignHMscListener(HMsc *hmsc)
:m_hmsc(hmsc)
{}
- void on_white_event_found(Event *e)
+ void on_white_event_found(MessageEvent *e)
{
ConnectionNode *node = new ConnectionNode();
m_hmsc->add_node(node);
@@ -61,7 +61,7 @@
class MessageSuceessors: public SendReceivePairListener
{
public:
- void on_send_receive_pair(Event *send, Event *receive)
+ void on_send_receive_pair(MessageEvent *send, MessageEvent *receive)
{
ConnectionNode *first, *second;
first = send->get_attribute("ACC_node", second);
@@ -75,7 +75,7 @@
class InstanceSuccessors: public EventSuccessorListener
{
public:
- void on_event_successor(Event *event, Event *successor)
+ void on_event_successor(MessageEvent *event, MessageEvent *successor)
{
ConnectionNode *first, *second;
first = event->get_attribute("ACC_node", second);
@@ -87,7 +87,7 @@
class CleanHMscListener: public WhiteEventFoundListener
{
public:
- void on_white_event_found(Event *e)
+ void on_white_event_found(MessageEvent *e)
{
ConnectionNode *node, *dummy;
NodeRelation* nr;
@@ -98,7 +98,7 @@
nr->remove_attribute<MscMessage*>("ACC_message");
e->remove_attribute<NodeRelation*>("ACC_relation");
}
- node->remove_attribute<Event*>("ACC_event");
+ node->remove_attribute<MessageEvent*>("ACC_event");
e->remove_attribute<ConnectionNode*>("ACC_node");
}
};
Modified: trunk/src/check/order/fifo_checker.cpp
===================================================================
--- trunk/src/check/order/fifo_checker.cpp 2013-03-21 17:02:30 UTC (rev 1723)
+++ trunk/src/check/order/fifo_checker.cpp 2013-03-21 18:08:46 UTC (rev 1724)
@@ -31,15 +31,15 @@
return result;
}
-BMscPtr FifoChecker::create_counter_example(BMscPtr& bmsc, Event* e_1, Event* e_2)
+BMscPtr FifoChecker::create_counter_example(BMscPtr& bmsc, MessageEvent* e_1, MessageEvent* e_2)
{
BMscDuplicator duplicator;
BMscPtr new_bmsc = duplicator.duplicate_bmsc(bmsc);
- Event* events[] = {e_1,e_2};
+ MessageEvent* events[] = {e_1,e_2};
for(size_t i=0;i<2;i++)
{
//event is surely complete
- Event* copy = duplicator.get_event_copy(events[i]);
+ MessageEvent* copy = duplicator.get_event_copy(events[i]);
copy->get_complete_message()->set_marked(MARKED);
}
return new_bmsc;
@@ -53,7 +53,7 @@
DFSEventsTraverser traverser;
traverser.add_event_finished_listener(&topology_listener);
traverser.traverse(bmsc);
- EventPVector topology(topology_listener.get_topology().size());
+ MessageEventPVector topology(topology_listener.get_topology().size());
topology.assign(
topology_listener.get_topology().begin(),
topology_listener.get_topology().end()
@@ -83,7 +83,7 @@
{
while(!m_modified_events.empty())
{
- Event* e = m_modified_events.top();
+ MessageEvent* e = m_modified_events.top();
m_modified_events.pop();
e->remove_attribute<size_t>(channel_id_attribute);
}
Modified: trunk/src/check/order/fifo_checker.h
===================================================================
--- trunk/src/check/order/fifo_checker.h 2013-03-21 17:02:30 UTC (rev 1723)
+++ trunk/src/check/order/fifo_checker.h 2013-03-21 18:08:46 UTC (rev 1724)
@@ -30,7 +30,6 @@
class FifoChecker;
-typedef std::stack<Event*> EventPStack;
typedef boost::shared_ptr<FifoChecker> FifoCheckerPtr;
/** \brief Checks the FIFO property of a MSC.
@@ -56,9 +55,9 @@
/**
* Events with modified dynamic attributes
*/
- EventPStack m_modified_events;
+ MessageEventPStack m_modified_events;
- BMscPtr create_counter_example(BMscPtr& bmsc, Event* receive1, Event* receive2);
+ BMscPtr create_counter_example(BMscPtr& bmsc, MessageEvent* receive1, MessageEvent* receive2);
/**
* Checks whether e1 and e2 (from equivalent channel) are in consistent order.
@@ -66,7 +65,7 @@
* An e1 is supposed to be before e2. If this holds true is returned, false
* otherwise.
*/
- bool consistent_order(VisualClosureInitiator& initiator, Event* e1, Event* e2)
+ bool consistent_order(VisualClosureInitiator& initiator, MessageEvent* e1, MessageEvent* e2)
{
BoolVector& e1_closure = initiator.get_visual_closure(e1);
size_t e2_index = initiator.get_topology_index(e2);
@@ -131,7 +130,7 @@
/**
* Setter of channel id attribute of message.
*/
- void set_channel_id(Event* e, size_t id)
+ void set_channel_id(MessageEvent* e, size_t id)
{
e->set_attribute<size_t>(channel_id_attribute,id);
}
@@ -139,7 +138,7 @@
/**
* Getter of channel id attribute of m.
*/
- size_t get_channel_id(Event* e)
+ size_t get_channel_id(MessageEvent* e)
{
return e->get_attribute<size_t>(channel_id_attribute,0);
}
@@ -147,9 +146,9 @@
/**
* Determines whether event should be checked or not.
*
- * Event should be checked if it is receive event and has matching event.
+ * MessageEvent should be checked if it is receive event and has matching event.
*/
- static bool should_be_checked(Event* e)
+ static bool should_be_checked(MessageEvent* e)
{
return e->is_receive() && e->is_matched();
}
Modified: trunk/src/check/pseudocode/causal_closure_initiator.cpp
===================================================================
--- trunk/src/check/pseudocode/causal_closure_initiator.cpp 2013-03-21 17:02:30 UTC (rev 1723)
+++ trunk/src/check/pseudocode/causal_closure_initiator.cpp 2013-03-21 18:08:46 UTC (rev 1724)
@@ -24,23 +24,23 @@
{
while(!m_modified_events.empty())
{
- Event* e = m_modified_events.top();
+ MessageEvent* e = m_modified_events.top();
e->remove_attribute<BoolVector>(m_causal_closure_attribute);
m_modified_events.pop();
}
}
-void CausalClosureInitiator::initialize(const EventPVector& events,
+void CausalClosureInitiator::initialize(const MessageEventPVector& events,
VisualClosureInitiator& visual_closure_init, ChannelMapperPtr mapper)
{
//initialize matrix
size_t events_count = events.size();
- EventPList::const_iterator i;
+ MessageEventPList::const_iterator i;
//closure[x][y]==true <=> x << y
std::vector<BoolVector*> closure(events_count);
for(size_t i=0;i<events_count;i++)
{
- Event* i_event = events[i];
+ MessageEvent* i_event = events[i];
BoolVector& causal_closure = get_causal_closure(i_event);
causal_closure.resize(events_count,false);
closure[i] = &causal_closure;
@@ -54,12 +54,12 @@
}
for(size_t i=0;i<events_count;i++)
{
- Event* i_event = events[i];
+ MessageEvent* i_event = events[i];
BoolVector& i_causal_closure = *closure[i];
BoolVector& i_visual_closure = visual_closure_init.get_visual_closure(i_event);
for(size_t j = 0; j < events_count; j++)
{
- Event* j_event = events[j];
+ MessageEvent* j_event = events[j];
//i_event and j_event are from the same instance, j_event is send event and
//i_event < j_event
if(i_event->get_instance()==j_event->get_instance() &&
Modified: trunk/src/check/pseudocode/causal_closure_initiator.h
===================================================================
--- trunk/src/check/pseudocode/causal_closure_initiator.h 2013-03-21 17:02:30 UTC (rev 1723)
+++ trunk/src/check/pseudocode/causal_closure_initiator.h 2013-03-21 18:08:46 UTC (rev 1724)
@@ -27,8 +27,6 @@
#include "check/pseudocode/visual_closure_initiator.h"
#include "check/pseudocode/export.h"
-typedef std::stack<Event*> EventPStack;
-
class SCPSEUDOCODE_EXPORT CausalClosureInitiator
{
@@ -37,7 +35,7 @@
/**
* Used for cleaning up attributes.
*/
- EventPStack m_modified_events;
+ MessageEventPStack m_modified_events;
/**
* Name of causal closure attribute.
@@ -77,7 +75,7 @@
/**
* Getter of causal closure attribute of e.
*/
- BoolVector& get_causal_closure(Event* e)
+ BoolVector& get_causal_closure(MessageEvent* e)
{
static BoolVector empty(1,false);
return e->get_attribute<BoolVector>(m_causal_closure_attribute,empty);
@@ -92,7 +90,7 @@
* @param events - topologically sorted events used for visual_closure_init's initialization
* @param visual_closure_init - initialized VisualClosureInitiator
*/
- void initialize(const EventPVector& events,
+ void initialize(const MessageEventPVector& events,
VisualClosureInitiator& visual_closure_init, ChannelMapperPtr mapper);
/**
Modified: trunk/src/check/pseudocode/communication_graph.cpp
===================================================================
--- trunk/src/check/pseudocode/communication_graph.cpp 2013-03-21 17:02:30 UTC (rev 1723)
+++ trunk/src/check/pseudocode/communication_graph.cpp 2013-03-21 18:08:46 UTC (rev 1724)
@@ -11,7 +11,7 @@
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
- * Copyright (c) 2008 V\xE1clav Vacek <va...@ic...>
+ * Copyright (c) 2008 Vaclav Vacek <va...@ic...>
*
* $Id$
*/
@@ -20,7 +20,7 @@
const std::string CommunicationGraph::lexical_order_attribute = "lexical_order";
-void CommunicationGraphListener::on_white_event_found(Event *e)
+void CommunicationGraphListener::on_white_event_found(MessageEvent *e)
{
unsigned from, to;
bool status;
@@ -77,7 +77,7 @@
std::map<std::wstring, InstancePtr>::iterator instance_map_iterator;
const InstancePtrList& instance_list = bmsc->get_instances();
InstancePtrList::const_iterator instance_list_iterator;
-
+
for(instance_list_iterator = instance_list.begin();
instance_list_iterator != instance_list.end();
instance_list_iterator++)
@@ -92,7 +92,7 @@
instance_map_iterator->second.get()->set_attribute(lexical_order_attribute, num);
num++;
}
-
+
create_from_bmsc_with_param(bmsc, lexical_order_attribute, num);
for(instance_list_iterator = instance_list.begin();
Modified: trunk/src/check/pseudocode/communication_graph.h
===================================================================
--- trunk/src/check/pseudocode/communication_graph.h 2013-03-21 17:02:30 UTC (rev 1723)
+++ trunk/src/check/pseudocode/communication_graph.h 2013-03-21 18:08:46 UTC (rev 1724)
@@ -11,7 +11,7 @@
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
- * Copyright (c) 2008 V\xE1clav Vacek <va...@ic...>
+ * Copyright (c) 2008 Vaclav Vacek <va...@ic...>
*
* $Id$
*/
@@ -88,7 +88,7 @@
Graph& m_graph;
std::string m_index_attribute;
public:
- void on_white_event_found(Event *e);
+ void on_white_event_found(MessageEvent *e);
CommunicationGraphListener(Graph& destination, std::string index_attribute)
:m_graph(destination), m_index_attribute(index_attribute)
{}
Modified: trunk/src/check/pseudocode/msc_duplicators.cpp
===================================================================
--- trunk/src/check/pseudocode/msc_duplicators.cpp 2013-03-21 17:02:30 UTC (rev 1723)
+++ trunk/src/check/pseudocode/msc_duplicators.cpp 2013-03-21 18:08:46 UTC (rev 1724)
@@ -18,6 +18,7 @@
#include "check/pseudocode/msc_duplicators.h"
#include "data/dfs_instance_events_traverser.h"
+#include "data/msc/CoregionArea.h"
#include <map>
const std::string BMSC_DUPLICATOR_TRAVERSING_ATTR = "BDcolor";
@@ -104,10 +105,10 @@
return new_bmsc;
}
-Event* BMscDuplicator::get_event_copy(Event* e)
+MessageEvent* BMscDuplicator::get_event_copy(MessageEvent* e)
{
MscElement* elem = get_copy(e);
- return dynamic_cast<Event*>(elem);
+ return dynamic_cast<MessageEvent*>(elem);
}
BMscDuplicator::~BMscDuplicator()
@@ -368,7 +369,7 @@
}
-void EventsCreatorListener::on_white_event_found(Event* e)
+void EventsCreatorListener::on_white_event_found(MessageEvent* e)
{
if(m_last_instance!=e->get_instance())
{
@@ -377,9 +378,9 @@
m_last_instance = e->get_instance();
m_last_new_instance = new_instance.get();
}
- if(m_last_area!=e->get_general_area())
+ if(m_last_area!=e->get_area())
{
- StrictOrderArea* strict = dynamic_cast<StrictOrderArea*>(e->get_general_area());
+ StrictOrderArea* strict = dynamic_ca...
[truncated message content] |
|
From: <xr...@us...> - 2013-03-21 22:48:22
|
Revision: 1726
http://sourceforge.net/p/scstudio/code/1726
Author: xrehak
Date: 2013-03-21 22:48:18 +0000 (Thu, 21 Mar 2013)
Log Message:
-----------
New address of svn repository.
Modified Paths:
--------------
trunk/README
trunk/doc/scstudio-instructions.rtf
Modified: trunk/README
===================================================================
--- trunk/README 2013-03-21 22:05:49 UTC (rev 1725)
+++ trunk/README 2013-03-21 22:48:18 UTC (rev 1726)
@@ -24,7 +24,7 @@
tools/ Auxiliary tools.
To get the latest sources
-svn co https://scstudio.svn.sourceforge.net/svnroot/scstudio/trunk scstudio
+svn co https://svn.code.sf.net/p/scstudio/code/trunk scstudio
or download the sources from http://scstudio.sourceforge.net/download.html
Modified: trunk/doc/scstudio-instructions.rtf
===================================================================
--- trunk/doc/scstudio-instructions.rtf 2013-03-21 22:05:49 UTC (rev 1725)
+++ trunk/doc/scstudio-instructions.rtf 2013-03-21 22:48:18 UTC (rev 1726)
@@ -1,209 +1,204 @@
-{\rtf1\adeflang1025\ansi\ansicpg1252\uc1\adeff1\deff0\stshfdbch0\stshfloch0\stshfhich0\stshfbi0\deflang1033\deflangfe1033{\fonttbl{\f0\froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f1\fswiss\fcharset0\fprq2{\*\panose 020b0604020202020204}Arial;}
-{\f2\fmodern\fcharset0\fprq1{\*\panose 02070309020205020404}Courier New;}{\f3\froman\fcharset2\fprq2{\*\panose 05050102010706020507}Symbol;}{\f10\fnil\fcharset2\fprq2{\*\panose 05000000000000000000}Wingdings;}
-{\f109\fswiss\fcharset0\fprq2{\*\panose 020b0604030504040204}Tahoma;}{\f233\froman\fcharset0\fprq2{\*\panose 02040503050406030204}Cambria;}{\f244\froman\fcharset238\fprq2 Times New Roman CE;}{\f245\froman\fcharset204\fprq2 Times New Roman Cyr;}
-{\f247\froman\fcharset161\fprq2 Times New Roman Greek;}{\f248\froman\fcharset162\fprq2 Times New Roman Tur;}{\f249\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\f250\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}
-{\f251\froman\fcharset186\fprq2 Times New Roman Baltic;}{\f252\froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\f254\fswiss\fcharset238\fprq2 Arial CE;}{\f255\fswiss\fcharset204\fprq2 Arial Cyr;}{\f257\fswiss\fcharset161\fprq2 Arial Greek;}
-{\f258\fswiss\fcharset162\fprq2 Arial Tur;}{\f259\fbidi \fswiss\fcharset177\fprq2 Arial (Hebrew);}{\f260\fbidi \fswiss\fcharset178\fprq2 Arial (Arabic);}{\f261\fswiss\fcharset186\fprq2 Arial Baltic;}{\f262\fswiss\fcharset163\fprq2 Arial (Vietnamese);}
-{\f264\fmodern\fcharset238\fprq1 Courier New CE;}{\f265\fmodern\fcharset204\fprq1 Courier New Cyr;}{\f267\fmodern\fcharset161\fprq1 Courier New Greek;}{\f268\fmodern\fcharset162\fprq1 Courier New Tur;}
-{\f269\fbidi \fmodern\fcharset177\fprq1 Courier New (Hebrew);}{\f270\fbidi \fmodern\fcharset178\fprq1 Courier New (Arabic);}{\f271\fmodern\fcharset186\fprq1 Courier New Baltic;}{\f272\fmodern\fcharset163\fprq1 Courier New (Vietnamese);}
-{\f1334\fswiss\fcharset238\fprq2 Tahoma CE;}{\f1335\fswiss\fcharset204\fprq2 Tahoma Cyr;}{\f1337\fswiss\fcharset161\fprq2 Tahoma Greek;}{\f1338\fswiss\fcharset162\fprq2 Tahoma Tur;}{\f1339\fbidi \fswiss\fcharset177\fprq2 Tahoma (Hebrew);}
-{\f1340\fbidi \fswiss\fcharset178\fprq2 Tahoma (Arabic);}{\f1341\fswiss\fcharset186\fprq2 Tahoma Baltic;}{\f1342\fswiss\fcharset163\fprq2 Tahoma (Vietnamese);}{\f1343\fswiss\fcharset222\fprq2 Tahoma (Thai);}{\f2574\froman\fcharset238\fprq2 Cambria CE;}
-{\f2575\froman\fcharset204\fprq2 Cambria Cyr;}{\f2577\froman\fcharset161\fprq2 Cambria Greek;}{\f2578\froman\fcharset162\fprq2 Cambria Tur;}{\f2581\froman\fcharset186\fprq2 Cambria Baltic;}{\f2582\froman\fcharset163\fprq2 Cambria (Vietnamese);}}
-{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;
-\red128\green0\blue128;\red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;}{\upr{\stylesheet{\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af1\afs20\alang1025
-\ltrch\fcs0 \f1\fs20\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \snext0 \styrsid6893578 Normal;}{\s1\ql \li2268\ri0\sb120\sa240\sl280\slmult0\keepn\pagebb\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin2268\itap0
-\rtlch\fcs1 \ab\af1\afs28\alang1025 \ltrch\fcs0 \b\f1\fs28\lang1033\langfe1029\kerning32\cgrid\langnp1033\langfenp1029 \sbasedon16 \snext16 \slink17 \styrsid12978455 heading 1;}{\s2\ql \li2268\ri0\sb360\sa60\sl280\slmult0
-\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin2268\itap0 \rtlch\fcs1 \ab\af1\afs24\alang1025 \ltrch\fcs0 \b\f1\fs24\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \sbasedon16 \snext16 \slink15 \styrsid10886401
-heading 2;}{\*\cs10 \additive \ssemihidden Default Paragraph Font;}{\*
-\ts11\tsrowd\trftsWidthB3\trpaddl108\trpaddr108\trpaddfl3\trpaddft3\trpaddfb3\trpaddfr3\tblind0\tblindtype3\tscellwidthfts0\tsvertalt\tsbrdrt\tsbrdrl\tsbrdrb\tsbrdrr\tsbrdrdgl\tsbrdrdgr\tsbrdrh\tsbrdrv
-\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\langnp1024\langfenp1024 \snext11 \ssemihidden Normal Table;}{\*\cs15 \additive \rtlch\fcs1
-\ab\ai\af0\afs28 \ltrch\fcs0 \b\i\f233\fs28\lang0\langfe1029\langnp0\langfenp1029 \sbasedon10 \slink2 \slocked \ssemihidden Nadpis 2 Char;}{\s16\ql \li2268\ri0\sb120\sa120\sl280\slmult0
-\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin2268\itap0 \rtlch\fcs1 \af1\afs20\alang1025 \ltrch\fcs0 \f1\fs20\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \sbasedon0 \snext16 \styrsid4814744 Paragraph;}{\*\cs17 \additive
-\rtlch\fcs1 \ab\af0\afs32 \ltrch\fcs0 \b\f233\fs32\lang0\langfe1029\kerning32\langnp0\langfenp1029 \sbasedon10 \slink1 \slocked Nadpis 1 Char;}{\s18\ql \fi-2268\li2268\ri0\sb120\sa120\sl280\slmult0
-\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin2268\itap0 \rtlch\fcs1 \af1\afs20\alang1025 \ltrch\fcs0 \f1\fs20\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \sbasedon16 \snext18 \styrsid10750423 Paragraph w Sidehead;}{\*
-\ts19\tsrowd\trbrdrt\brdrs\brdrw10 \trbrdrl\brdrs\brdrw10 \trbrdrb\brdrs\brdrw10 \trbrdrr\brdrs\brdrw10 \trbrdrh\brdrs\brdrw10 \trbrdrv\brdrs\brdrw10
-\trftsWidthB3\trpaddl108\trpaddr108\trpaddfl3\trpaddft3\trpaddfb3\trpaddfr3\tblind0\tblindtype0\tscellwidthfts0\tsvertalt\tsbrdrt\tsbrdrl\tsbrdrb\tsbrdrr\tsbrdrdgl\tsbrdrdgr\tsbrdrh\tsbrdrv
+{\rtf1\adeflang1025\ansi\ansicpg1250\uc1\adeff1\deff0\stshfdbch0\stshfloch0\stshfhich0\stshfbi0\deflang1029\deflangfe1029\themelang1029\themelangfe0\themelangcs0{\fonttbl{\f0\fbidi \froman\fcharset238\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f1\fbidi \fswiss\fcharset238\fprq2{\*\panose 020b0604020202020204}Arial;}
+{\f2\fbidi \fmodern\fcharset238\fprq1{\*\panose 02070309020205020404}Courier New;}{\f3\fbidi \froman\fcharset2\fprq2{\*\panose 05050102010706020507}Symbol;}{\f10\fbidi \fnil\fcharset2\fprq2{\*\panose 05000000000000000000}Wingdings;}
+{\f34\fbidi \froman\fcharset1\fprq2{\*\panose 02040503050406030204}Cambria Math;}{\f36\fbidi \froman\fcharset238\fprq2{\*\panose 02040503050406030204}Cambria;}{\f38\fbidi \fswiss\fcharset238\fprq2{\*\panose 020b0604030504040204}Tahoma;}
+{\flomajor\f31500\fbidi \froman\fcharset238\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\fdbmajor\f31501\fbidi \froman\fcharset238\fprq2{\*\panose 02020603050405020304}Times New Roman;}
+{\fhimajor\f31502\fbidi \froman\fcharset238\fprq2{\*\panose 02040503050406030204}Cambria;}{\fbimajor\f31503\fbidi \froman\fcharset238\fprq2{\*\panose 02020603050405020304}Times New Roman;}
+{\flominor\f31504\fbidi \froman\fcharset238\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\fdbminor\f31505\fbidi \froman\fcharset238\fprq2{\*\panose 02020603050405020304}Times New Roman;}
+{\fhiminor\f31506\fbidi \fswiss\fcharset238\fprq2{\*\panose 020f0502020204030204}Calibri;}{\fbiminor\f31507\fbidi \froman\fcharset238\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f41\fbidi \froman\fcharset0\fprq2 Times New Roman;}
+{\f40\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\f42\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\f43\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\f44\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}
+{\f45\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\f46\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\f47\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\f51\fbidi \fswiss\fcharset0\fprq2 Arial;}
+{\f50\fbidi \fswiss\fcharset204\fprq2 Arial Cyr;}{\f52\fbidi \fswiss\fcharset161\fprq2 Arial Greek;}{\f53\fbidi \fswiss\fcharset162\fprq2 Arial Tur;}{\f54\fbidi \fswiss\fcharset177\fprq2 Arial (Hebrew);}
+{\f55\fbidi \fswiss\fcharset178\fprq2 Arial (Arabic);}{\f56\fbidi \fswiss\fcharset186\fprq2 Arial Baltic;}{\f57\fbidi \fswiss\fcharset163\fprq2 Arial (Vietnamese);}{\f61\fbidi \fmodern\fcharset0\fprq1 Courier New;}
+{\f60\fbidi \fmodern\fcharset204\fprq1 Courier New Cyr;}{\f62\fbidi \fmodern\fcharset161\fprq1 Courier New Greek;}{\f63\fbidi \fmodern\fcharset162\fprq1 Courier New Tur;}{\f64\fbidi \fmodern\fcharset177\fprq1 Courier New (Hebrew);}
+{\f65\fbidi \fmodern\fcharset178\fprq1 Courier New (Arabic);}{\f66\fbidi \fmodern\fcharset186\fprq1 Courier New Baltic;}{\f67\fbidi \fmodern\fcharset163\fprq1 Courier New (Vietnamese);}{\f401\fbidi \froman\fcharset0\fprq2 Cambria;}
+{\f400\fbidi \froman\fcharset204\fprq2 Cambria Cyr;}{\f402\fbidi \froman\fcharset161\fprq2 Cambria Greek;}{\f403\fbidi \froman\fcharset162\fprq2 Cambria Tur;}{\f406\fbidi \froman\fcharset186\fprq2 Cambria Baltic;}
+{\f407\fbidi \froman\fcharset163\fprq2 Cambria (Vietnamese);}{\f421\fbidi \fswiss\fcharset0\fprq2 Tahoma;}{\f420\fbidi \fswiss\fcharset204\fprq2 Tahoma Cyr;}{\f422\fbidi \fswiss\fcharset161\fprq2 Tahoma Greek;}
+{\f423\fbidi \fswiss\fcharset162\fprq2 Tahoma Tur;}{\f424\fbidi \fswiss\fcharset177\fprq2 Tahoma (Hebrew);}{\f425\fbidi \fswiss\fcharset178\fprq2 Tahoma (Arabic);}{\f426\fbidi \fswiss\fcharset186\fprq2 Tahoma Baltic;}
+{\f427\fbidi \fswiss\fcharset163\fprq2 Tahoma (Vietnamese);}{\f428\fbidi \fswiss\fcharset222\fprq2 Tahoma (Thai);}{\flomajor\f31510\fbidi \froman\fcharset0\fprq2 Times New Roman;}{\flomajor\f31509\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}
+{\flomajor\f31511\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\flomajor\f31512\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\flomajor\f31513\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}
+{\flomajor\f31514\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\flomajor\f31515\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\flomajor\f31516\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}
+{\fdbmajor\f31520\fbidi \froman\fcharset0\fprq2 Times New Roman;}{\fdbmajor\f31519\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\fdbmajor\f31521\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}
+{\fdbmajor\f31522\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\fdbmajor\f31523\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\fdbmajor\f31524\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}
+{\fdbmajor\f31525\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\fdbmajor\f31526\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\fhimajor\f31530\fbidi \froman\fcharset0\fprq2 Cambria;}
+{\fhimajor\f31529\fbidi \froman\fcharset204\fprq2 Cambria Cyr;}{\fhimajor\f31531\fbidi \froman\fcharset161\fprq2 Cambria Greek;}{\fhimajor\f31532\fbidi \froman\fcharset162\fprq2 Cambria Tur;}
+{\fhimajor\f31535\fbidi \froman\fcharset186\fprq2 Cambria Baltic;}{\fhimajor\f31536\fbidi \froman\fcharset163\fprq2 Cambria (Vietnamese);}{\fbimajor\f31540\fbidi \froman\fcharset0\fprq2 Times New Roman;}
+{\fbimajor\f31539\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\fbimajor\f31541\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\fbimajor\f31542\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}
+{\fbimajor\f31543\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\fbimajor\f31544\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\fbimajor\f31545\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}
+{\fbimajor\f31546\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\flominor\f31550\fbidi \froman\fcharset0\fprq2 Times New Roman;}{\flominor\f31549\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}
+{\flominor\f31551\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\flominor\f31552\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\flominor\f31553\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}
+{\flominor\f31554\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\flominor\f31555\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\flominor\f31556\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}
+{\fdbminor\f31560\fbidi \froman\fcharset0\fprq2 Times New Roman;}{\fdbminor\f31559\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\fdbminor\f31561\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}
+{\fdbminor\f31562\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\fdbminor\f31563\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\fdbminor\f31564\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}
+{\fdbminor\f31565\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\fdbminor\f31566\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\fhiminor\f31570\fbidi \fswiss\fcharset0\fprq2 Calibri;}
+{\fhiminor\f31569\fbidi \fswiss\fcharset204\fprq2 Calibri Cyr;}{\fhiminor\f31571\fbidi \fswiss\fcharset161\fprq2 Calibri Greek;}{\fhiminor\f31572\fbidi \fswiss\fcharset162\fprq2 Calibri Tur;}
+{\fhiminor\f31575\fbidi \fswiss\fcharset186\fprq2 Calibri Baltic;}{\fhiminor\f31576\fbidi \fswiss\fcharset163\fprq2 Calibri (Vietnamese);}{\fbiminor\f31580\fbidi \froman\fcharset0\fprq2 Times New Roman;}
+{\fbiminor\f31579\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\fbiminor\f31581\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\fbiminor\f31582\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}
+{\fbiminor\f31583\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\fbiminor\f31584\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\fbiminor\f31585\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}
+{\fbiminor\f31586\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}}{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;
+\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;\red128\green0\blue128;\red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;}{\*\defchp \fs22 }{\*\defpap
+\ql \li0\ri0\sa200\sl276\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 }\noqfpromote {\stylesheet{\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af1\afs20\alang1025
+\ltrch\fcs0 \f1\fs20\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \snext0 \sqformat \spriority0 \styrsid6893578 Normal;}{\s1\ql \li2268\ri0\sb120\sa240\sl280\slmult0
+\keepn\pagebb\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin2268\itap0 \rtlch\fcs1 \ab\af1\afs28\alang1025 \ltrch\fcs0 \b\f1\fs28\lang1033\langfe1029\kerning32\cgrid\langnp1033\langfenp1029
+\sbasedon17 \snext17 \slink15 \sqformat \styrsid12978455 heading 1;}{\s2\ql \li2268\ri0\sb360\sa60\sl280\slmult0\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin2268\itap0 \rtlch\fcs1 \ab\af1\afs24\alang1025
+\ltrch\fcs0 \b\f1\fs24\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \sbasedon17 \snext17 \slink16 \sqformat \styrsid10886401 heading 2;}{\*\cs10 \additive \ssemihidden Default Paragraph Font;}{\*
+\ts11\tsrowd\trftsWidthB3\trpaddl108\trpaddr108\trpaddfl3\trpaddft3\trpaddfb3\trpaddfr3\tblind0\tblindtype3\tscellwidthfts0\tsvertalt\tsbrdrt\tsbrdrl\tsbrdrb\tsbrdrr\tsbrdrdgl\tsbrdrdgr\tsbrdrh\tsbrdrv \ql \li0\ri0\sa200\sl276\slmult1
+\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs22\alang1025 \ltrch\fcs0 \fs22\lang1029\langfe1029\cgrid\langnp1029\langfenp1029 \snext11 \ssemihidden \sunhideused \sqformat Normal Table;}{\*\cs15 \additive
+\rtlch\fcs1 \ab\af0\afs32 \ltrch\fcs0 \b\f36\fs32\lang0\langfe1029\kerning32\langnp0\langfenp1029 \sbasedon10 \slink1 \slocked Nadpis 1 Char;}{\*\cs16 \additive \rtlch\fcs1 \ab\ai\af0\afs28 \ltrch\fcs0 \b\i\f36\fs28\lang0\langfe1029\langnp0\langfenp1029
+\sbasedon10 \slink2 \slocked \ssemihidden Nadpis 2 Char;}{\s17\ql \li2268\ri0\sb120\sa120\sl280\slmult0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin2268\itap0 \rtlch\fcs1 \af1\afs20\alang1025 \ltrch\fcs0
+\f1\fs20\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \sbasedon0 \snext17 \styrsid4814744 Paragraph;}{\s18\ql \fi-2268\li2268\ri0\sb120\sa120\sl280\slmult0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin2268\itap0 \rtlch\fcs1
+\af1\afs20\alang1025 \ltrch\fcs0 \f1\fs20\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \sbasedon17 \snext18 \styrsid10750423 Paragraph w Sidehead;}{\*\ts19\tsrowd\trbrdrt\brdrs\brdrw10 \trbrdrl\brdrs\brdrw10 \trbrdrb\brdrs\brdrw10 \trbrdrr
+\brdrs\brdrw10 \trbrdrh\brdrs\brdrw10 \trbrdrv\brdrs\brdrw10 \trftsWidthB3\trpaddl108\trpaddr108\trpaddfl3\trpaddft3\trpaddfb3\trpaddfr3\tblind0\tblindtype0\tscellwidthfts0\tsvertalt\tsbrdrt\tsbrdrl\tsbrdrb\tsbrdrr\tsbrdrdgl\tsbrdrdgr\tsbrdrh\tsbrdrv
\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af1\afs20\alang1025 \ltrch\fcs0 \f1\fs20\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon11 \snext19 \styrsid14371250 Table Grid;}{\*\cs20
\additive \rtlch\fcs1 \af0 \ltrch\fcs0 \ul\cf2 \sbasedon10 \styrsid3177514 Hyperlink;}{\s21\ql \li2268\ri0\sl280\slmult0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin2268\itap0 \rtlch\fcs1 \af2\afs18\alang1025 \ltrch\fcs0
-\f2\fs18\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \sbasedon16 \snext21 \styrsid7881996 Example;}{\s22\ql \li0\ri0\widctlpar\brdrt\brdrs\brdrw10\brsp20
-\tqc\tx4536\tqr\tx9072\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\rtlgutter\itap0 \rtlch\fcs1 \af1\afs20\alang1025 \ltrch\fcs0 \f1\fs20\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \sbasedon0 \snext22 \slink24 \styrsid12473112 footer;}
-{\*\cs23 \additive \rtlch\fcs1 \af0 \ltrch\fcs0 \sbasedon10 \styrsid12473112 page number;}{\*\cs24 \additive \rtlch\fcs1 \af1\afs20 \ltrch\fcs0 \f1\fs20\lang0\langfe1029\langnp0\langfenp1029 \sbasedon10 \slink22 \slocked \ssemihidden Z\'e1pat\'ed Char;}{
-\s25\ql \li0\ri0\widctlpar\tqc\tx4536\tqr\tx9072\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af1\afs20\alang1025 \ltrch\fcs0 \f1\fs20\lang1033\langfe1029\cgrid\langnp1033\langfenp1029
-\sbasedon0 \snext25 \slink27 \styrsid12473112 header;}{\*\cs26 \additive \rtlch\fcs1 \af0\afs16 \ltrch\fcs0 \fs16 \sbasedon10 \ssemihidden \styrsid14681692 annotation reference;}{\*\cs27 \additive \rtlch\fcs1 \af1\afs20 \ltrch\fcs0
-\f1\fs20\lang0\langfe1029\langnp0\langfenp1029 \sbasedon10 \slink25 \slocked \ssemihidden Z\'e1hlav\'ed Char;}{\s28\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af1\afs20\alang1025 \ltrch\fcs0
-\f1\fs20\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \sbasedon0 \snext28 \slink30 \ssemihidden \styrsid14681692 annotation text;}{\s29\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1
-\ab\af1\afs20\alang1025 \ltrch\fcs0 \b\f1\fs20\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \sbasedon28 \snext28 \slink32 \ssemihidden \styrsid14681692 annotation subject;}{\*\cs30 \additive \rtlch\fcs1 \af1\afs20 \ltrch\fcs0
-\f1\fs20\lang0\langfe1029\langnp0\langfenp1029 \sbasedon10 \slink28 \slocked \ssemihidden Text koment\'e1re Char;}{\s31\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af109\afs16\alang1025 \ltrch\fcs0
-\f109\fs16\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \sbasedon0 \snext31 \slink34 \ssemihidden \styrsid14681692 Balloon Text;}{\*\cs32 \additive \rtlch\fcs1 \ab\af1\afs20 \ltrch\fcs0 \b\f1\fs20\lang0\langfe1029\langnp0\langfenp1029
-\sbasedon30 \slink29 \slocked \ssemihidden Predmet koment\'e1re Char;}{\*\cs33 \additive \rtlch\fcs1 \af0 \ltrch\fcs0 \f2\fs20 \sbasedon10 \styrsid8486799 Keyboard Shortcut;}{\*\cs34 \additive \rtlch\fcs1 \af109\afs16 \ltrch\fcs0
-\f109\fs16\lang0\langfe1029\langnp0\langfenp1029 \sbasedon10 \slink31 \slocked \ssemihidden Text bubliny Char;}{\*\cs35 \additive \rtlch\fcs1 \af0 \ltrch\fcs0 \sbasedon10 \styrsid3303158 mw-headline;}}{\*\ud\uc0{\stylesheet{
-\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af1\afs20\alang1025 \ltrch\fcs0 \f1\fs20\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \snext0 \styrsid6893578 Normal;}{
-\s1\ql \li2268\ri0\sb120\sa240\sl280\slmult0\keepn\pagebb\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin2268\itap0 \rtlch\fcs1 \ab\af1\afs28\alang1025 \ltrch\fcs0
-\b\f1\fs28\lang1033\langfe1029\kerning32\cgrid\langnp1033\langfenp1029 \sbasedon16 \snext16 \slink17 \styrsid12978455 heading 1;}{\s2\ql \li2268\ri0\sb360\sa60\sl280\slmult0
-\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin2268\itap0 \rtlch\fcs1 \ab\af1\afs24\alang1025 \ltrch\fcs0 \b\f1\fs24\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \sbasedon16 \snext16 \slink15 \styrsid10886401
-heading 2;}{\*\cs10 \additive \ssemihidden Default Paragraph Font;}{\*
-\ts11\tsrowd\trftsWidthB3\trpaddl108\trpaddr108\trpaddfl3\trpaddft3\trpaddfb3\trpaddfr3\tblind0\tblindtype3\tscellwidthfts0\tsvertalt\tsbrdrt\tsbrdrl\tsbrdrb\tsbrdrr\tsbrdrdgl\tsbrdrdgr\tsbrdrh\tsbrdrv
-\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\cgrid\langnp1024\langfenp1024 \snext11 \ssemihidden Normal Table;}{\*\cs15 \additive \rtlch\fcs1
-\ab\ai\af0\afs28 \ltrch\fcs0 \b\i\f233\fs28\lang0\langfe1029\langnp0\langfenp1029 \sbasedon10 \slink2 \slocked \ssemihidden Nadpis 2 Char;}{\s16\ql \li2268\ri0\sb120\sa120\sl280\slmult0
-\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin2268\itap0 \rtlch\fcs1 \af1\afs20\alang1025 \ltrch\fcs0 \f1\fs20\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \sbasedon0 \snext16 \styrsid4814744 Paragraph;}{\*\cs17 \additive
-\rtlch\fcs1 \ab\af0\afs32 \ltrch\fcs0 \b\f233\fs32\lang0\langfe1029\kerning32\langnp0\langfenp1029 \sbasedon10 \slink1 \slocked Nadpis 1 Char;}{\s18\ql \fi-2268\li2268\ri0\sb120\sa120\sl280\slmult0
-\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin2268\itap0 \rtlch\fcs1 \af1\afs20\alang1025 \ltrch\fcs0 \f1\fs20\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \sbasedon16 \snext18 \styrsid10750423 Paragraph w Sidehead;}{\*
-\ts19\tsrowd\trbrdrt\brdrs\brdrw10 \trbrdrl\brdrs\brdrw10 \trbrdrb\brdrs\brdrw10 \trbrdrr\brdrs\brdrw10 \trbrdrh\brdrs\brdrw10 \trbrdrv\brdrs\brdrw10
-\trftsWidthB3\trpaddl108\trpaddr108\trpaddfl3\trpaddft3\trpaddfb3\trpaddfr3\tblind0\tblindtype0\tscellwidthfts0\tsvertalt\tsbrdrt\tsbrdrl\tsbrdrb\tsbrdrr\tsbrdrdgl\tsbrdrdgr\tsbrdrh\tsbrdrv
-\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af1\afs20\alang1025 \ltrch\fcs0 \f1\fs20\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon11 \snext19 \styrsid14371250 Table Grid;}{\*\cs20
-\additive \rtlch\fcs1 \af0 \ltrch\fcs0 \ul\cf2 \sbasedon10 \styrsid3177514 Hyperlink;}{\s21\ql \li2268\ri0\sl280\slmult0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin2268\itap0 \rtlch\fcs1 \af2\afs18\alang1025 \ltrch\fcs0
-\f2\fs18\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \sbasedon16 \snext21 \styrsid7881996 Example;}{\s22\ql \li0\ri0\widctlpar\brdrt\brdrs\brdrw10\brsp20
-\tqc\tx4536\tqr\tx9072\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\rtlgutter\itap0 \rtlch\fcs1 \af1\afs20\alang1025 \ltrch\fcs0 \f1\fs20\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \sbasedon0 \snext22 \slink24 \styrsid12473112 footer;}
-{\*\cs23 \additive \rtlch\fcs1 \af0 \ltrch\fcs0 \sbasedon10 \styrsid12473112 page number;}{\*\cs24 \additive \rtlch\fcs1 \af1\afs20 \ltrch\fcs0 \f1\fs20\lang0\langfe1029\langnp0\langfenp1029 \sbasedon10 \slink22 \slocked \ssemihidden Z\'e1pat\'ed Char;}{
-\s25\ql \li0\ri0\widctlpar\tqc\tx4536\tqr\tx9072\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af1\afs20\alang1025 \ltrch\fcs0 \f1\fs20\lang1033\langfe1029\cgrid\langnp1033\langfenp1029
-\sbasedon0 \snext25 \slink27 \styrsid12473112 header;}{\*\cs26 \additive \rtlch\fcs1 \af0\afs16 \ltrch\fcs0 \fs16 \sbasedon10 \ssemihidden \styrsid14681692 annotation reference;}{\*\cs27 \additive \rtlch\fcs1 \af1\afs20 \ltrch\fcs0
-\f1\fs20\lang0\langfe1029\langnp0\langfenp1029 \sbasedon10 \slink25 \slocked \ssemihidden Z\'e1hlav\'ed Char;}{\s28\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af1\afs20\alang1025 \ltrch\fcs0
-\f1\fs20\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \sbasedon0 \snext28 \slink30 \ssemihidden \styrsid14681692 annotation text;}{\s29\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1
-\ab\af1\afs20\alang1025 \ltrch\fcs0 \b\f1\fs20\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \sbasedon28 \snext28 \slink32 \ssemihidden \styrsid14681692 annotation subject;}{\*\cs30 \additive \rtlch\fcs1 \af1\afs20 \ltrch\fcs0
-\f1\fs20\lang0\langfe1029\langnp0\langfenp1029 \sbasedon10 \slink28 \slocked \ssemihidden Text koment\'e1{\uc1\u345 re Char};}{\s31\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af109\afs16\alang1025
-\ltrch\fcs0 \f109\fs16\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \sbasedon0 \snext31 \slink34 \ssemihidden \styrsid14681692 Balloon Text;}{\*\cs32 \additive \rtlch\fcs1 \ab\af1\afs20 \ltrch\fcs0 \b\f1\fs20\lang0\langfe1029\langnp0\langfenp1029
-\sbasedon30 \slink29 \slocked \ssemihidden P{\uc1\u345 redm\u283 et koment\'e1\u345 re Char};}{\*\cs33 \additive \rtlch\fcs1 \af0 \ltrch\fcs0 \f2\fs20 \sbasedon10 \styrsid8486799 Keyboard Shortcut;}{\*\cs34 \additive \rtlch\fcs1 \af109\afs16 \ltrch\fcs0
-\f109\fs16\lang0\langfe1029\langnp0\langfenp1029 \sbasedon10 \slink31 \slocked \ssemihidden Text bubliny Char;}{\*\cs35 \additive \rtlch\fcs1 \af0 \ltrch\fcs0 \sbasedon10 \styrsid3303158 mw-headline;}}}}
-{\*\latentstyles\lsdstimax156\lsdlockeddef0{\lsdlockedexcept Normal;heading 1;heading 2;heading 3;heading 4;heading 5;heading 6;heading 7;heading 8;heading 9;toc 1;toc 2;toc 3;toc 4;toc 5;toc 6;toc 7;toc 8;toc 9;caption;Title;Default Paragraph Font;Subtitle;Strong;Emphasis;Table Grid;}}
-{\*\listtable{\list\listtemplateid-318340160\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\leveltemplateid67436545\'01{\uc1\u-3913 ?};}{\levelnumbers;}
-\f3\fbias0\hres0\chhres0 \fi-360\li720\jclisttab\tx720\lin720 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace360\levelindent0{\leveltext\leveltemplateid67436547\'01o;}{\levelnumbers;}
-\f2\fbias0\hres0\chhres0 \fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace360\levelindent0{\leveltext\leveltemplateid67436549
-\'01{\uc1\u-3929 ?};}{\levelnumbers;}\f10\fbias0\hres0\chhres0 \fi-360\li2160\jclisttab\tx2160\lin2160 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace360\levelindent0{\leveltext
-\leveltemplateid67436545\'01{\uc1\u-3913 ?};}{\levelnumbers;}\f3\fbias0\hres0\chhres0 \fi-360\li2880\jclisttab\tx2880\lin2880 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace360\levelindent0
-{\leveltext\leveltemplateid67436547\'01o;}{\levelnumbers;}\f2\fbias0\hres0\chhres0 \fi-360\li3600\jclisttab\tx3600\lin3600 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace360\levelindent0{\leveltext
-\leveltemplateid67436549\'01{\uc1\u-3929 ?};}{\levelnumbers;}\f10\fbias0\hres0\chhres0 \fi-360\li4320\jclisttab\tx4320\lin4320 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace360\levelindent0
-{\leveltext\leveltemplateid67436545\'01{\uc1\u-3913 ?};}{\levelnumbers;}\f3\fbias0\hres0\chhres0 \fi-360\li5040\jclisttab\tx5040\lin5040 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace360
-\levelindent0{\leveltext\leveltemplateid67436547\'01o;}{\levelnumbers;}\f2\fbias0\hres0\chhres0 \fi-360\li5760\jclisttab\tx5760\lin5760 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace360
-\levelindent0{\leveltext\leveltemplateid67436549\'01{\uc1\u-3929 ?};}{\levelnumbers;}\f10\fbias0\hres0\chhres0 \fi-360\li6480\jclisttab\tx6480\lin6480 }{\listname ;}\listid88896242}{\list\listtemplateid-2435210\listhybrid{\listlevel\levelnfc23\levelnfcn23
-\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid-598469796\'01\'96;}{\levelnumbers;}\f0\fbias0\hres0\chhres0 \fi-311\li3033\jclisttab\tx3033\lin3033 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0
-\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436547\'01o;}{\levelnumbers;}\f2\fbias0\hres0\chhre...
[truncated message content] |
|
From: <xr...@us...> - 2013-03-21 22:55:19
|
Revision: 1727
http://sourceforge.net/p/scstudio/code/1727
Author: xrehak
Date: 2013-03-21 22:55:17 +0000 (Thu, 21 Mar 2013)
Log Message:
-----------
New address to svn repository.
Modified Paths:
--------------
README
trunk/README
Modified: README
===================================================================
--- README 2013-03-21 22:48:18 UTC (rev 1726)
+++ README 2013-03-21 22:55:17 UTC (rev 1727)
@@ -1,5 +1,5 @@
Get the latest sources using:
-svn co https://scstudio.svn.sourceforge.net/svnroot/scstudio/trunk scstudio
+svn co http://svn.code.sf.net/p/scstudio/code/trunk scstudio
This is the top of the Subversion repository.
Modified: trunk/README
===================================================================
--- trunk/README 2013-03-21 22:48:18 UTC (rev 1726)
+++ trunk/README 2013-03-21 22:55:17 UTC (rev 1727)
@@ -23,8 +23,8 @@
third-party-sw/ Third-party SW.
tools/ Auxiliary tools.
-To get the latest sources
-svn co https://svn.code.sf.net/p/scstudio/code/trunk scstudio
+To get the latest sources run
+svn co http://svn.code.sf.net/p/scstudio/code/trunk scstudio
or download the sources from http://scstudio.sourceforge.net/download.html
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <tm...@us...> - 2013-03-22 09:12:20
|
Revision: 1729
http://sourceforge.net/p/scstudio/code/1729
Author: tmarton
Date: 2013-03-22 09:12:16 +0000 (Fri, 22 Mar 2013)
Log Message:
-----------
added basic version of absolute time tightenig
Modified Paths:
--------------
trunk/src/data/Z120/CMakeLists.txt
trunk/src/data/Z120/z120_load.cpp
trunk/src/data/dfs_events_traverser.cpp
trunk/src/data/dfs_events_traverser.h
trunk/src/data/time_relevant_ordering/dfs_backward_traverser.cpp
trunk/src/data/time_relevant_ordering/time_order_optimizer.cpp
trunk/src/data/time_relevant_ordering/time_order_optimizer.h
trunk/src/data/time_relevant_ordering/time_relevant_ordering.cpp
trunk/tests/time_relevant_ordering/time_relevant_ordering_test.cpp
Modified: trunk/src/data/Z120/CMakeLists.txt
===================================================================
--- trunk/src/data/Z120/CMakeLists.txt 2013-03-21 23:38:42 UTC (rev 1728)
+++ trunk/src/data/Z120/CMakeLists.txt 2013-03-22 09:12:16 UTC (rev 1729)
@@ -34,6 +34,7 @@
TARGET_LINK_LIBRARIES(scZ120
scmsc
${PARSER_LIBRARIES}
+ sctimerelevantordering
)
INSTALL(TARGETS scZ120
Modified: trunk/src/data/Z120/z120_load.cpp
===================================================================
--- trunk/src/data/Z120/z120_load.cpp 2013-03-21 23:38:42 UTC (rev 1728)
+++ trunk/src/data/Z120/z120_load.cpp 2013-03-22 09:12:16 UTC (rev 1729)
@@ -108,7 +108,7 @@
ImportFormatter::TransformationList Z120::get_transformations(MscPtr msc) const
{
ImportFormatter::TransformationList result;
- result.push_back(L"Beautify");
+ result.push_back(L"TimeRelevantOrdering");
return result;
}
Modified: trunk/src/data/dfs_events_traverser.cpp
===================================================================
--- trunk/src/data/dfs_events_traverser.cpp 2013-03-21 23:38:42 UTC (rev 1728)
+++ trunk/src/data/dfs_events_traverser.cpp 2013-03-22 09:12:16 UTC (rev 1729)
@@ -184,6 +184,13 @@
(*l)->on_send_receive_pair(send, receive);
}
+void DFSEventsTraverser::instance_finished(Instance *i)
+{
+ InstanceFinishedListenerPList::iterator l;
+ for(l = instance_finished_listeners.begin(); l != instance_finished_listeners.end(); l++ )
+ (*l)->on_instance_finished(i);
+}
+
MessageEventPListPtr DFSEventsTraverser::topology_order(BMscPtr b)
{
MessageEventPListPtr topology(new MessageEventPList);
Modified: trunk/src/data/dfs_events_traverser.h
===================================================================
--- trunk/src/data/dfs_events_traverser.h 2013-03-21 23:38:42 UTC (rev 1728)
+++ trunk/src/data/dfs_events_traverser.h 2013-03-22 09:12:16 UTC (rev 1729)
@@ -114,12 +114,28 @@
virtual void on_send_receive_pair(MessageEvent* send, MessageEvent* receive)=0;
};
+/**
+ * Listener of finished Instance
+ */
+class InstanceFinishedListener
+{
+public:
+
+ virtual ~InstanceFinishedListener()
+ {
+
+ }
+
+ virtual void on_instance_finished(Instance* i)=0;
+};
+
typedef std::list<EventFinishedListener*> EventFinishedListenerPList;
typedef std::list<WhiteEventFoundListener*> WhiteEventFoundListenerPList;
typedef std::list<GrayEventFoundListener*> GrayEventFoundListenerPList;
typedef std::list<BlackEventFoundListener*> BlackEventFoundListenerPList;
typedef std::list<EventSuccessorListener*> EventSuccessorListenerPList;
typedef std::list<SendReceivePairListener*> SendReceivePairListenerPList;
+typedef std::list<InstanceFinishedListener*> InstanceFinishedListenerPList;
/**
* Processes Events during traversing BMsc's Events in depth first search manner.
@@ -196,6 +212,14 @@
{
send_receive_pair_listeners.push_back(l);
}
+
+ /**
+ * Adds InstanceFinishedListener
+ */
+ void add_instance_fineshed_listener(InstanceFinishedListener* l)
+ {
+ instance_finished_listeners.push_back(l);
+ }
/**
* Cleans up set attributes.
@@ -215,6 +239,7 @@
void remove_event_finished_listeners();
void remove_event_successor_listeners();
void remove_send_receive_pair_listeners();
+ void remove_instance_finished_listeners();
void remove_all_listeners();
protected:
Modified: trunk/src/data/time_relevant_ordering/dfs_backward_traverser.cpp
===================================================================
--- trunk/src/data/time_relevant_ordering/dfs_backward_traverser.cpp 2013-03-21 23:38:42 UTC (rev 1728)
+++ trunk/src/data/time_relevant_ordering/dfs_backward_traverser.cpp 2013-03-22 09:12:16 UTC (rev 1729)
@@ -52,9 +52,9 @@
return;
}
- MessageEventPList minimals = area->get_minimal_events();
- for(MessageEventPList::const_iterator min = minimals.begin(); min != minimals.end(); min++)
- traverse_event(*min);
+ MessageEventPSet maximals = area->get_maximal_events();
+ for(MessageEventPSet::const_iterator max = maximals.begin(); max != maximals.end(); max++)
+ traverse_event(*max);
}
void DFSBackwardTraverser::traverse_event(MessageEvent* event)
Modified: trunk/src/data/time_relevant_ordering/time_order_optimizer.cpp
===================================================================
--- trunk/src/data/time_relevant_ordering/time_order_optimizer.cpp 2013-03-21 23:38:42 UTC (rev 1728)
+++ trunk/src/data/time_relevant_ordering/time_order_optimizer.cpp 2013-03-22 09:12:16 UTC (rev 1729)
@@ -1,26 +1,74 @@
#include "time_order_optimizer.h"
-#include "math.h"
-double get_absolute_time(MessageEventPtr e)
+
+double get_absolute_endpoint(MessageEventPtr e,bool left_endpoint /* = true*/)
{
if(e == NULL) return NULL_EVENT;
AbsoluteTimePtrList list = e->get_absolut_times();
if(list.size() == 0) return NO_ABSOLUTE_TIME;
AbsoluteTimePtr absolute_time_ptr = list.front();
MscTimeInterval<double> msc_time_interval = absolute_time_ptr->get_interval_set().get_set().front();
- return msc_time_interval.get_begin_value();
+ return left_endpoint ? msc_time_interval.get_begin_value() : msc_time_interval.get_end_value();
}
-bool is_absolute_interval(MessageEventPtr e)
+
+void set_absolute_endpoint(MessageEventPtr e,bool left_endpoint, double endpoint)
{
- if(e == NULL) return false;
+ if(e == NULL) return;
AbsoluteTimePtrList list = e->get_absolut_times();
- if(list.size() == 0) return NO_ABSOLUTE_TIME;
AbsoluteTimePtr absolute_time_ptr = list.front();
MscTimeInterval<double> msc_time_interval = absolute_time_ptr->get_interval_set().get_set().front();
- return msc_time_interval.get_begin_value() != msc_time_interval.get_end_value();
+ MscTimeIntervalSet<double> absolute_time_set;
+ MscIntervalCouple<double> endpoint_couple = MscIntervalCouple<double>(true,endpoint);
+ if(left_endpoint)
+ absolute_time_set.insert(MscTimeInterval<double>(endpoint_couple,msc_time_interval.get_end()));
+ else
+ absolute_time_set.insert(MscTimeInterval<double>(msc_time_interval.get_begin(),endpoint_couple));
+ AbsoluteTime* new_time = new AbsoluteTime(absolute_time_set);
+ AbsoluteTimePtr new_time_ptr = boost::intrusive_ptr<AbsoluteTime>(new_time);
+ list.pop_front();
+ list.push_front(new_time_ptr);
+ e->set_absolut_time(list);
}
+Transformer::PreconditionList AbsoluteTimeTightener::get_preconditions(MscPtr msc) const
+{
+ Transformer::PreconditionList result;
+ // no preconditions
+ return result;
+}
+MscPtr AbsoluteTimeTightener::transform(MscPtr msc)
+{
+ BMscPtr bmsc = boost::dynamic_pointer_cast<BMsc>(msc);
+ if(bmsc)
+ {
+ DFSEventsTraverser forward_traverser;
+ DFSBackwardTraverser backward_traverser;
+ TightenLeftEndpointListener left_endpoint_listener(true);
+ backward_traverser.add_black_event_found_listener(left_endpoint_listener);
+ backward_traverser.add_event_finished_listener(left_endpoint_listener);
+ backward_traverser.add_instance_finished_listener(left_endpoint_listener);
+ backward_traverser.traverse(bmsc.get());
+ TightenRightEndpointListener right_endpoint_listener;
+ forward_traverser.add_black_event_found_listener(right_endpoint_listener);
+ forward_traverser.add_event_finished_listener(right_endpoint_listener);
+ forward_traverser.add_instance_finished_listener(right_endpoint_listener);
+ forward_traverser.traverse(bmsc.get());
+ return msc;
+ }
+
+ return NULL;
+}
+
+
+
+
+
+
+
+
+
+
Modified: trunk/src/data/time_relevant_ordering/time_order_optimizer.h
===================================================================
--- trunk/src/data/time_relevant_ordering/time_order_optimizer.h 2013-03-21 23:38:42 UTC (rev 1728)
+++ trunk/src/data/time_relevant_ordering/time_order_optimizer.h 2013-03-22 09:12:16 UTC (rev 1729)
@@ -24,8 +24,11 @@
#include "data/beautify/time_transformer.h"
#include "data/msc.h"
#include "data/time.h"
+#include "data/transformer.h"
+#include "math.h"
#include <iostream>
#include <string>
+#include <limits>
#include <map>
#include <set>
@@ -37,9 +40,9 @@
typedef std::map<MessageEventPtr,MscTimeIntervalSet<double> > MissingTimeMap;
-double get_absolute_time(MessageEventPtr e);
+double get_absolute_endpoint(MessageEventPtr e,bool left_endpoint = true);
-bool is_absolute_interval(MessageEventPtr e);
+void set_absolute_endpoint(MessageEventPtr e,bool left_endpoint, double endpoint);
class InstanceWidthComparator
{
@@ -128,42 +131,55 @@
};
//work on timestamps only
-class TimelessEventListener : public EventFinishedListener, public InstanceFinishedListener, public BlackEventFoundListener
+class TightenLeftEndpointListener : public EventFinishedListener, public InstanceFinishedListener, public BlackEventFoundListener
{
public:
- TimelessEventListener():m_black_event_timestamp(-1),m_black_event_interval(0){ }
+ TightenLeftEndpointListener():m_black_event_timestamp(-1),m_black_event_interval(0),m_is_tightened(false){ }
+ TightenLeftEndpointListener(bool is_tightened):m_black_event_timestamp(-1),m_black_event_interval(0),m_is_tightened(is_tightened){ }
+
virtual void on_event_finished(MessageEvent *e)
{
- if(is_absolute_interval(e))
+ double absolute_time = get_absolute_endpoint(e);
+ if((m_black_event_interval != 0) && (absolute_time != NO_ABSOLUTE_TIME) && (absolute_time < m_black_event_interval))
{
- if((m_black_event_interval != 0) && (get_absolute_time(e) < m_black_event_interval))
+ if(m_is_tightened)
{
+ set_absolute_endpoint(e,true,m_black_event_interval);
+ }
+ else
+ {
MscTimeIntervalSet<double> absolute_time_set;
absolute_time_set.insert(MscTimeInterval<double>(m_black_event_interval));
m_missing_time_map[e] = absolute_time_set;
}
+
}
- if(get_absolute_time(e) == NO_ABSOLUTE_TIME)
+
+ if(absolute_time == NO_ABSOLUTE_TIME)
{
double time = ( m_black_event_timestamp < 0) ? 0 : m_black_event_timestamp;
MscTimeIntervalSet<double> absolute_time_set;
absolute_time_set.insert(MscTimeInterval<double>(time));
m_missing_time_map[e] = absolute_time_set;
}
- if(get_absolute_time(e) > m_black_event_timestamp)
- m_black_event_timestamp = get_absolute_time(e);
- if(get_absolute_time(e) > m_black_event_interval)
- m_black_event_interval = get_absolute_time(e);
+ if(absolute_time > m_black_event_timestamp)
+ m_black_event_timestamp = get_absolute_endpoint(e);
+ if(absolute_time > m_black_event_interval)
+ m_black_event_interval = get_absolute_endpoint(e);
}
virtual void on_instance_finished(Instance *i){
m_black_event_timestamp = -1;
+ m_black_event_interval = 0;
}
virtual void on_black_event_found(MessageEvent *e){
- if(get_absolute_time(e) > m_black_event_timestamp)
- m_black_event_timestamp = get_absolute_time(e);
+ double absolute_time = get_absolute_endpoint(e);
+ if(absolute_time > m_black_event_timestamp)
+ m_black_event_timestamp = get_absolute_endpoint(e);
+ if(absolute_time > m_black_event_interval)
+ m_black_event_interval = get_absolute_endpoint(e);
}
const MissingTimeMap& getMissingTimeMap()const{
@@ -175,10 +191,46 @@
private:
double m_black_event_timestamp;
double m_black_event_interval;
+ bool m_is_tightened;
MissingTimeMap m_missing_time_map;
};
+class TightenRightEndpointListener : public EventFinishedListener, public InstanceFinishedListener, public BlackEventFoundListener
+{
+public:
+ TightenRightEndpointListener():m_black_event_interval(std::numeric_limits<double>::infinity()){ }
+
+ TightenRightEndpointListener(bool is_tightened)
+ :m_black_event_interval(std::numeric_limits<double>::infinity()){ }
+
+
+
+ virtual void on_event_finished(MessageEvent *e)
+ {
+ double absolute_time = get_absolute_endpoint(e,false);
+ if((m_black_event_interval != std::numeric_limits<double>::infinity()) && (absolute_time != NO_ABSOLUTE_TIME) && (absolute_time > m_black_event_interval))
+ {
+ set_absolute_endpoint(e,false,m_black_event_interval);
+ }
+ if(absolute_time < m_black_event_interval)
+ m_black_event_interval = absolute_time;
+ }
+
+ virtual void on_instance_finished(Instance *i)
+ {
+ m_black_event_interval = std::numeric_limits<double>::infinity();
+ }
+
+ virtual void on_black_event_found(MessageEvent *e){
+ if(get_absolute_endpoint(e,false) < m_black_event_interval)
+ m_black_event_interval = get_absolute_endpoint(e);
+ }
+
+private:
+ double m_black_event_interval;
+};
+
class TimestampConsistencyListener : public WhiteEventFoundListener
{
public:
@@ -220,10 +272,28 @@
int i;
MissingTimeMap m_missing_time_map;
double getTime(MessageEventPtr e){
- double time = get_absolute_time(e);
+ double time = get_absolute_endpoint(e);
return (time == NO_ABSOLUTE_TIME) ? m_missing_time_map[e].get_set().front().get_begin_value() : time;
}
};
+class AbsoluteTimeTightener : public Transformer
+{
+public:
+ AbsoluteTimeTightener();
+ virtual ~AbsoluteTimeTightener {}
+
+ //! Human readable name of the transformation.
+ virtual std::wstring get_name()
+ { return L"AbsoluteTimeTightener"; }
+
+
+ //! Returns a list of preconditions for this transformation.
+ virtual PreconditionList get_preconditions(MscPtr msc) const;
+
+ //! Transform a MSC drawing.
+ virtual MscPtr transform(MscPtr msc);
+};
+
#endif // _TIME_ORDER_OPTIMIZER_H
Modified: trunk/src/data/time_relevant_ordering/time_relevant_ordering.cpp
===================================================================
--- trunk/src/data/time_relevant_ordering/time_relevant_ordering.cpp 2013-03-21 23:38:42 UTC (rev 1728)
+++ trunk/src/data/time_relevant_ordering/time_relevant_ordering.cpp 2013-03-22 09:12:16 UTC (rev 1729)
@@ -92,7 +92,7 @@
Beautify b;
// add missing timestamps
- TimelessEventListener timeless_events_listener;
+ TightenLeftEndpointListener timeless_events_listener(true);
backward_traverser.add_event_finished_listener(&timeless_events_listener);
backward_traverser.add_instance_fineshed_listener(&timeless_events_listener);
backward_traverser.add_black_event_found_listener(&timeless_events_listener);
@@ -232,7 +232,7 @@
}
double TimeRelevantOrdering::get_time(MessageEventPtr e){
- double time = get_absolute_time(e);
+ double time = get_absolute_endpoint(e);
return (m_missing_time_map.find(e) != m_missing_time_map.end()) ? m_missing_time_map[e].get_set().front().get_begin_value() : time;
}
@@ -278,7 +278,7 @@
}
start_position += min_shift;
- last_absolute_time = get_absolute_time(*it);
+ last_absolute_time = get_time(*it);
last_instance = ins;
}
Modified: trunk/tests/time_relevant_ordering/time_relevant_ordering_test.cpp
===================================================================
--- trunk/tests/time_relevant_ordering/time_relevant_ordering_test.cpp 2013-03-21 23:38:42 UTC (rev 1728)
+++ trunk/tests/time_relevant_ordering/time_relevant_ordering_test.cpp 2013-03-22 09:12:16 UTC (rev 1729)
@@ -69,13 +69,8 @@
return 1;
}
- TimeRelevantOrdering tr_ordering;
- msc[0] = beautify.transform(msc[0]);
- /*BMscPtr bmsc = boost::dynamic_pointer_cast<BMsc>(msc[0]);
- InstancePtrList instance_list = bmsc->get_instances();
- InstancePtr instance = *(instance_list.begin()++);
- instance->set_line_begin(MscPoint(instance->get_line_begin().get_x(),instance->get_line_begin().get_y()+10));
- msc[0] = tr_ordering.transform(msc[0]);*/
+ TimeRelevantOrdering tr_ordering;
+ msc[0] = tr_ordering.transform(msc[0]);
try
{
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <xb...@us...> - 2013-03-23 13:45:47
|
Revision: 1734
http://sourceforge.net/p/scstudio/code/1734
Author: xborza
Date: 2013-03-23 13:45:40 +0000 (Sat, 23 Mar 2013)
Log Message:
-----------
z120 added tests for timestamps format [1e+005], [1e-005]
+ tests for pcap (edited code for settings //is_aggregation_active())
Modified Paths:
--------------
trunk/CMakeLists.txt
trunk/src/data/pcap/flow.cpp
trunk/src/data/pcap/flow_stats.cpp
trunk/src/data/pcap/pcap_settings.cpp
trunk/src/data/pcap/protocols.h
trunk/tests/CMakeLists.txt
trunk/tests/pcap/CMakeLists.txt
trunk/tests/pcap/config/mix.ini
trunk/tests/pcap/mpr_out/arp_example_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/arp_example_all_info.mpr
trunk/tests/pcap/mpr_out/arp_example_app_layer.mpr
trunk/tests/pcap/mpr_out/arp_example_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/arp_example_config.mpr
trunk/tests/pcap/mpr_out/arp_example_ignore.mpr
trunk/tests/pcap/mpr_out/arp_example_link_layer.mpr
trunk/tests/pcap/mpr_out/arp_example_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/arp_example_mix.mpr
trunk/tests/pcap/mpr_out/arp_example_net_layer.mpr
trunk/tests/pcap/mpr_out/arp_example_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/arp_example_relative_time.mpr
trunk/tests/pcap/mpr_out/arp_example_sip_stream.mpr
trunk/tests/pcap/mpr_out/arp_example_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/arp_example_time-aggreg.mpr
trunk/tests/pcap/mpr_out/arp_example_trans_layer.mpr
trunk/tests/pcap/mpr_out/bfd-raw-auth-simple_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/bfd-raw-auth-simple_all_info.mpr
trunk/tests/pcap/mpr_out/bfd-raw-auth-simple_app_layer.mpr
trunk/tests/pcap/mpr_out/bfd-raw-auth-simple_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/bfd-raw-auth-simple_config.mpr
trunk/tests/pcap/mpr_out/bfd-raw-auth-simple_ignore.mpr
trunk/tests/pcap/mpr_out/bfd-raw-auth-simple_link_layer.mpr
trunk/tests/pcap/mpr_out/bfd-raw-auth-simple_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/bfd-raw-auth-simple_mix.mpr
trunk/tests/pcap/mpr_out/bfd-raw-auth-simple_net_layer.mpr
trunk/tests/pcap/mpr_out/bfd-raw-auth-simple_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/bfd-raw-auth-simple_relative_time.mpr
trunk/tests/pcap/mpr_out/bfd-raw-auth-simple_sip_stream.mpr
trunk/tests/pcap/mpr_out/bfd-raw-auth-simple_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/bfd-raw-auth-simple_time-aggreg.mpr
trunk/tests/pcap/mpr_out/bfd-raw-auth-simple_trans_layer.mpr
trunk/tests/pcap/mpr_out/dhcp_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/dhcp_all_info.mpr
trunk/tests/pcap/mpr_out/dhcp_app_layer.mpr
trunk/tests/pcap/mpr_out/dhcp_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/dhcp_config.mpr
trunk/tests/pcap/mpr_out/dhcp_ignore.mpr
trunk/tests/pcap/mpr_out/dhcp_link_layer.mpr
trunk/tests/pcap/mpr_out/dhcp_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/dhcp_mix.mpr
trunk/tests/pcap/mpr_out/dhcp_net_layer.mpr
trunk/tests/pcap/mpr_out/dhcp_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/dhcp_relative_time.mpr
trunk/tests/pcap/mpr_out/dhcp_sip_stream.mpr
trunk/tests/pcap/mpr_out/dhcp_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/dhcp_time-aggreg.mpr
trunk/tests/pcap/mpr_out/dhcp_trans_layer.mpr
trunk/tests/pcap/mpr_out/ftpv6_part1_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/ftpv6_part1_all_info.mpr
trunk/tests/pcap/mpr_out/ftpv6_part1_app_layer.mpr
trunk/tests/pcap/mpr_out/ftpv6_part1_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/ftpv6_part1_config.mpr
trunk/tests/pcap/mpr_out/ftpv6_part1_ignore.mpr
trunk/tests/pcap/mpr_out/ftpv6_part1_link_layer.mpr
trunk/tests/pcap/mpr_out/ftpv6_part1_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/ftpv6_part1_mix.mpr
trunk/tests/pcap/mpr_out/ftpv6_part1_net_layer.mpr
trunk/tests/pcap/mpr_out/ftpv6_part1_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/ftpv6_part1_relative_time.mpr
trunk/tests/pcap/mpr_out/ftpv6_part1_sip_stream.mpr
trunk/tests/pcap/mpr_out/ftpv6_part1_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/ftpv6_part1_time-aggreg.mpr
trunk/tests/pcap/mpr_out/ftpv6_part1_trans_layer.mpr
trunk/tests/pcap/mpr_out/ftpv6_part2_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/ftpv6_part2_all_info.mpr
trunk/tests/pcap/mpr_out/ftpv6_part2_app_layer.mpr
trunk/tests/pcap/mpr_out/ftpv6_part2_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/ftpv6_part2_config.mpr
trunk/tests/pcap/mpr_out/ftpv6_part2_ignore.mpr
trunk/tests/pcap/mpr_out/ftpv6_part2_link_layer.mpr
trunk/tests/pcap/mpr_out/ftpv6_part2_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/ftpv6_part2_mix.mpr
trunk/tests/pcap/mpr_out/ftpv6_part2_net_layer.mpr
trunk/tests/pcap/mpr_out/ftpv6_part2_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/ftpv6_part2_relative_time.mpr
trunk/tests/pcap/mpr_out/ftpv6_part2_sip_stream.mpr
trunk/tests/pcap/mpr_out/ftpv6_part2_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/ftpv6_part2_time-aggreg.mpr
trunk/tests/pcap/mpr_out/ftpv6_part2_trans_layer.mpr
trunk/tests/pcap/mpr_out/http_gzip_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/http_gzip_all_info.mpr
trunk/tests/pcap/mpr_out/http_gzip_app_layer.mpr
trunk/tests/pcap/mpr_out/http_gzip_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/http_gzip_config.mpr
trunk/tests/pcap/mpr_out/http_gzip_ignore.mpr
trunk/tests/pcap/mpr_out/http_gzip_link_layer.mpr
trunk/tests/pcap/mpr_out/http_gzip_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/http_gzip_mix.mpr
trunk/tests/pcap/mpr_out/http_gzip_net_layer.mpr
trunk/tests/pcap/mpr_out/http_gzip_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/http_gzip_relative_time.mpr
trunk/tests/pcap/mpr_out/http_gzip_sip_stream.mpr
trunk/tests/pcap/mpr_out/http_gzip_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/http_gzip_time-aggreg.mpr
trunk/tests/pcap/mpr_out/http_gzip_trans_layer.mpr
trunk/tests/pcap/mpr_out/ipv4_cipso_option_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/ipv4_cipso_option_all_info.mpr
trunk/tests/pcap/mpr_out/ipv4_cipso_option_app_layer.mpr
trunk/tests/pcap/mpr_out/ipv4_cipso_option_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/ipv4_cipso_option_config.mpr
trunk/tests/pcap/mpr_out/ipv4_cipso_option_ignore.mpr
trunk/tests/pcap/mpr_out/ipv4_cipso_option_link_layer.mpr
trunk/tests/pcap/mpr_out/ipv4_cipso_option_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/ipv4_cipso_option_mix.mpr
trunk/tests/pcap/mpr_out/ipv4_cipso_option_net_layer.mpr
trunk/tests/pcap/mpr_out/ipv4_cipso_option_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/ipv4_cipso_option_relative_time.mpr
trunk/tests/pcap/mpr_out/ipv4_cipso_option_sip_stream.mpr
trunk/tests/pcap/mpr_out/ipv4_cipso_option_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/ipv4_cipso_option_time-aggreg.mpr
trunk/tests/pcap/mpr_out/ipv4_cipso_option_trans_layer.mpr
trunk/tests/pcap/mpr_out/sample_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/sample_all_info.mpr
trunk/tests/pcap/mpr_out/sample_app_layer.mpr
trunk/tests/pcap/mpr_out/sample_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/sample_config.mpr
trunk/tests/pcap/mpr_out/sample_ignore.mpr
trunk/tests/pcap/mpr_out/sample_link_layer.mpr
trunk/tests/pcap/mpr_out/sample_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/sample_mix.mpr
trunk/tests/pcap/mpr_out/sample_net_layer.mpr
trunk/tests/pcap/mpr_out/sample_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/sample_relative_time.mpr
trunk/tests/pcap/mpr_out/sample_sip_stream.mpr
trunk/tests/pcap/mpr_out/sample_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/sample_time-aggreg.mpr
trunk/tests/pcap/mpr_out/sample_trans_layer.mpr
trunk/tests/pcap/mpr_out/sip_call_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_call_all_info.mpr
trunk/tests/pcap/mpr_out/sip_call_app_layer.mpr
trunk/tests/pcap/mpr_out/sip_call_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_call_config.mpr
trunk/tests/pcap/mpr_out/sip_call_ignore.mpr
trunk/tests/pcap/mpr_out/sip_call_link_layer.mpr
trunk/tests/pcap/mpr_out/sip_call_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_call_mix.mpr
trunk/tests/pcap/mpr_out/sip_call_net_layer.mpr
trunk/tests/pcap/mpr_out/sip_call_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_call_relative_time.mpr
trunk/tests/pcap/mpr_out/sip_call_sip_stream.mpr
trunk/tests/pcap/mpr_out/sip_call_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/sip_call_time-aggreg.mpr
trunk/tests/pcap/mpr_out/sip_call_trans_layer.mpr
trunk/tests/pcap/mpr_out/sip_example_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_example_all_info.mpr
trunk/tests/pcap/mpr_out/sip_example_app_layer.mpr
trunk/tests/pcap/mpr_out/sip_example_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_example_config.mpr
trunk/tests/pcap/mpr_out/sip_example_ignore.mpr
trunk/tests/pcap/mpr_out/sip_example_link_layer.mpr
trunk/tests/pcap/mpr_out/sip_example_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_example_mix.mpr
trunk/tests/pcap/mpr_out/sip_example_net_layer.mpr
trunk/tests/pcap/mpr_out/sip_example_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_example_relative_time.mpr
trunk/tests/pcap/mpr_out/sip_example_sip_stream.mpr
trunk/tests/pcap/mpr_out/sip_example_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/sip_example_time-aggreg.mpr
trunk/tests/pcap/mpr_out/sip_example_trans_layer.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part1_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part1_all_info.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part1_app_layer.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part1_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part1_config.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part1_ignore.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part1_link_layer.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part1_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part1_mix.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part1_net_layer.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part1_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part1_relative_time.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part1_sip_stream.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part1_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part1_time-aggreg.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part1_trans_layer.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part2_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part2_all_info.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part2_app_layer.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part2_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part2_config.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part2_ignore.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part2_link_layer.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part2_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part2_mix.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part2_net_layer.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part2_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part2_relative_time.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part2_sip_stream.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part2_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part2_time-aggreg.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part2_trans_layer.mpr
trunk/tests/pcap/mpr_out/sip_rtp_sample_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_rtp_sample_all_info.mpr
trunk/tests/pcap/mpr_out/sip_rtp_sample_app_layer.mpr
trunk/tests/pcap/mpr_out/sip_rtp_sample_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_rtp_sample_config.mpr
trunk/tests/pcap/mpr_out/sip_rtp_sample_ignore.mpr
trunk/tests/pcap/mpr_out/sip_rtp_sample_link_layer.mpr
trunk/tests/pcap/mpr_out/sip_rtp_sample_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_rtp_sample_mix.mpr
trunk/tests/pcap/mpr_out/sip_rtp_sample_net_layer.mpr
trunk/tests/pcap/mpr_out/sip_rtp_sample_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_rtp_sample_relative_time.mpr
trunk/tests/pcap/mpr_out/sip_rtp_sample_sip_stream.mpr
trunk/tests/pcap/mpr_out/sip_rtp_sample_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/sip_rtp_sample_time-aggreg.mpr
trunk/tests/pcap/mpr_out/sip_rtp_sample_trans_layer.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part1_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part1_all_info.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part1_app_layer.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part1_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part1_config.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part1_ignore.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part1_link_layer.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part1_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part1_mix.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part1_net_layer.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part1_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part1_relative_time.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part1_sip_stream.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part1_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part1_time-aggreg.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part1_trans_layer.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part2_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part2_all_info.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part2_app_layer.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part2_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part2_config.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part2_ignore.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part2_link_layer.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part2_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part2_mix.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part2_net_layer.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part2_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part2_relative_time.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part2_sip_stream.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part2_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part2_time-aggreg.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part2_trans_layer.mpr
trunk/tests/pcap/mpr_out/smtp_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/smtp_all_info.mpr
trunk/tests/pcap/mpr_out/smtp_app_layer.mpr
trunk/tests/pcap/mpr_out/smtp_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/smtp_config.mpr
trunk/tests/pcap/mpr_out/smtp_ignore.mpr
trunk/tests/pcap/mpr_out/smtp_link_layer.mpr
trunk/tests/pcap/mpr_out/smtp_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/smtp_mix.mpr
trunk/tests/pcap/mpr_out/smtp_net_layer.mpr
trunk/tests/pcap/mpr_out/smtp_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/smtp_relative_time.mpr
trunk/tests/pcap/mpr_out/smtp_sip_stream.mpr
trunk/tests/pcap/mpr_out/smtp_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/smtp_time-aggreg.mpr
trunk/tests/pcap/mpr_out/smtp_trans_layer.mpr
trunk/tests/pcap/mpr_out/tcp_ecn_sample_part1_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/tcp_ecn_sample_part1_all_info.mpr
trunk/tests/pcap/mpr_out/tcp_ecn_sample_part1_app_layer.mpr
trunk/tests/pcap/mpr_out/tcp_ecn_sample_part1_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/tcp_ecn_sample_part1_config.mpr
trunk/tests/pcap/mpr_out/tcp_ecn_sample_part1_ignore.mpr
trunk/tests/pcap/mpr_out/tcp_ecn_sample_part1_link_layer.mpr
trunk/tests/pcap/mpr_out/tcp_ecn_sample_part1_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/tcp_ecn_sample_part1_mix.mpr
trunk/tests/pcap/mpr_out/tcp_ecn_sample_part1_net_layer.mpr
trunk/tests/pcap/mpr_out/tcp_ecn_sample_part1_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/tcp_ecn_sample_part1_relative_time.mpr
trunk/tests/pcap/mpr_out/tcp_ecn_sample_part1_sip_stream.mpr
trunk/tests/pcap/mpr_out/tcp_ecn_sample_part1_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/tcp_ecn_sample_part1_time-aggreg.mpr
trunk/tests/pcap/mpr_out/tcp_ecn_sample_part1_trans_layer.mpr
trunk/tests/pcap/mpr_out/tcp_ecn_sample_part2_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/tcp_ecn_sample_part2_all_info.mpr
trunk/tests/pcap/mpr_out/tcp_ecn_sample_part2_app_layer.mpr
trunk/tests/pcap/mpr_out/tcp_ecn_sample_part2_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/tcp_ecn_sample_part2_config.mpr
trunk/tests/pcap/mpr_out/tcp_ecn_sample_part2_ignore.mpr
trunk/tests/pcap/mpr_out/tcp_ecn_sample_part2_link_layer.mpr
trunk/tests/pcap/mpr_out/tcp_ecn_sample_part2_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/tcp_ecn_sample_part2_mix.mpr
trunk/tests/pcap/mpr_out/tcp_ecn_sample_part2_net_layer.mpr
trunk/tests/pcap/mpr_out/tcp_ecn_sample_part2_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/tcp_ecn_sample_part2_relative_time.mpr
trunk/tests/pcap/mpr_out/tcp_ecn_sample_part2_sip_stream.mpr
trunk/tests/pcap/mpr_out/tcp_ecn_sample_part2_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/tcp_ecn_sample_part2_time-aggreg.mpr
trunk/tests/pcap/mpr_out/tcp_ecn_sample_part2_trans_layer.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part1_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part1_all_info.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part1_app_layer.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part1_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part1_config.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part1_ignore.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part1_link_layer.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part1_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part1_mix.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part1_net_layer.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part1_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part1_relative_time.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part1_sip_stream.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part1_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part1_time-aggreg.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part1_trans_layer.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part2_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part2_all_info.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part2_app_layer.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part2_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part2_config.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part2_ignore.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part2_link_layer.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part2_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part2_mix.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part2_net_layer.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part2_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part2_relative_time.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part2_sip_stream.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part2_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part2_time-aggreg.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part2_trans_layer.mpr
trunk/tests/pcap/mpr_out/v6_part1_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/v6_part1_all_info.mpr
trunk/tests/pcap/mpr_out/v6_part1_app_layer.mpr
trunk/tests/pcap/mpr_out/v6_part1_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/v6_part1_config.mpr
trunk/tests/pcap/mpr_out/v6_part1_ignore.mpr
trunk/tests/pcap/mpr_out/v6_part1_link_layer.mpr
trunk/tests/pcap/mpr_out/v6_part1_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/v6_part1_mix.mpr
trunk/tests/pcap/mpr_out/v6_part1_net_layer.mpr
trunk/tests/pcap/mpr_out/v6_part1_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/v6_part1_relative_time.mpr
trunk/tests/pcap/mpr_out/v6_part1_sip_stream.mpr
trunk/tests/pcap/mpr_out/v6_part1_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/v6_part1_time-aggreg.mpr
trunk/tests/pcap/mpr_out/v6_part1_trans_layer.mpr
trunk/tests/pcap/mpr_out/v6_part2_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/v6_part2_all_info.mpr
trunk/tests/pcap/mpr_out/v6_part2_app_layer.mpr
trunk/tests/pcap/mpr_out/v6_part2_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/v6_part2_config.mpr
trunk/tests/pcap/mpr_out/v6_part2_ignore.mpr
trunk/tests/pcap/mpr_out/v6_part2_link_layer.mpr
trunk/tests/pcap/mpr_out/v6_part2_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/v6_part2_mix.mpr
trunk/tests/pcap/mpr_out/v6_part2_net_layer.mpr
trunk/tests/pcap/mpr_out/v6_part2_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/v6_part2_relative_time.mpr
trunk/tests/pcap/mpr_out/v6_part2_sip_stream.mpr
trunk/tests/pcap/mpr_out/v6_part2_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/v6_part2_time-aggreg.mpr
trunk/tests/pcap/mpr_out/v6_part2_trans_layer.mpr
trunk/tests/pcap/pcap_diff.py
trunk/tests/pcap/reload_mprs.py
trunk/tests/pcap/reload_texs.py
trunk/tests/z120_test/CMakeLists.txt
trunk/tests/z120_test/z120_time50.mpr
Added Paths:
-----------
trunk/tests/pcap/mpr_out/dns_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/dns_all_info.mpr
trunk/tests/pcap/mpr_out/dns_app_layer.mpr
trunk/tests/pcap/mpr_out/dns_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/dns_config.mpr
trunk/tests/pcap/mpr_out/dns_ignore.mpr
trunk/tests/pcap/mpr_out/dns_link_layer.mpr
trunk/tests/pcap/mpr_out/dns_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/dns_mix.mpr
trunk/tests/pcap/mpr_out/dns_net_layer.mpr
trunk/tests/pcap/mpr_out/dns_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/dns_relative_time.mpr
trunk/tests/pcap/mpr_out/dns_sip_stream.mpr
trunk/tests/pcap/mpr_out/dns_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/dns_time-aggreg.mpr
trunk/tests/pcap/mpr_out/dns_trans_layer.mpr
trunk/tests/pcap/mpr_out/http_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/http_all_info.mpr
trunk/tests/pcap/mpr_out/http_app_layer.mpr
trunk/tests/pcap/mpr_out/http_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/http_config.mpr
trunk/tests/pcap/mpr_out/http_ignore.mpr
trunk/tests/pcap/mpr_out/http_link_layer.mpr
trunk/tests/pcap/mpr_out/http_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/http_mix.mpr
trunk/tests/pcap/mpr_out/http_net_layer.mpr
trunk/tests/pcap/mpr_out/http_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/http_relative_time.mpr
trunk/tests/pcap/mpr_out/http_sip_stream.mpr
trunk/tests/pcap/mpr_out/http_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/http_time-aggreg.mpr
trunk/tests/pcap/mpr_out/http_trans_layer.mpr
trunk/tests/pcap/mpr_out/v6-http_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/v6-http_all_info.mpr
trunk/tests/pcap/mpr_out/v6-http_app_layer.mpr
trunk/tests/pcap/mpr_out/v6-http_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/v6-http_config.mpr
trunk/tests/pcap/mpr_out/v6-http_ignore.mpr
trunk/tests/pcap/mpr_out/v6-http_link_layer.mpr
trunk/tests/pcap/mpr_out/v6-http_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/v6-http_mix.mpr
trunk/tests/pcap/mpr_out/v6-http_net_layer.mpr
trunk/tests/pcap/mpr_out/v6-http_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/v6-http_relative_time.mpr
trunk/tests/pcap/mpr_out/v6-http_sip_stream.mpr
trunk/tests/pcap/mpr_out/v6-http_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/v6-http_time-aggreg.mpr
trunk/tests/pcap/mpr_out/v6-http_trans_layer.mpr
trunk/tests/pcap/pcap_in/dns.pcap
trunk/tests/pcap/pcap_in/http.pcap
trunk/tests/pcap/pcap_in/v6-http.pcap
trunk/tests/z120_test/z120_time50.mpr.result
trunk/tests/z120_test/z120_time51.mpr
trunk/tests/z120_test/z120_time51.mpr.result
trunk/tests/z120_test/z120_time52.mpr
trunk/tests/z120_test/z120_time52.mpr.result
Removed Paths:
-------------
trunk/tests/pcap/mpr_out/dn_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/dn_all_info.mpr
trunk/tests/pcap/mpr_out/dn_app_layer.mpr
trunk/tests/pcap/mpr_out/dn_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/dn_config.mpr
trunk/tests/pcap/mpr_out/dn_ignore.mpr
trunk/tests/pcap/mpr_out/dn_link_layer.mpr
trunk/tests/pcap/mpr_out/dn_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/dn_mix.mpr
trunk/tests/pcap/mpr_out/dn_net_layer.mpr
trunk/tests/pcap/mpr_out/dn_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/dn_relative_time.mpr
trunk/tests/pcap/mpr_out/dn_sip_stream.mpr
trunk/tests/pcap/mpr_out/dn_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/dn_time-aggreg.mpr
trunk/tests/pcap/mpr_out/dn_trans_layer.mpr
trunk/tests/pcap/mpr_out/htt_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/htt_all_info.mpr
trunk/tests/pcap/mpr_out/htt_app_layer.mpr
trunk/tests/pcap/mpr_out/htt_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/htt_config.mpr
trunk/tests/pcap/mpr_out/htt_ignore.mpr
trunk/tests/pcap/mpr_out/htt_link_layer.mpr
trunk/tests/pcap/mpr_out/htt_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/htt_mix.mpr
trunk/tests/pcap/mpr_out/htt_net_layer.mpr
trunk/tests/pcap/mpr_out/htt_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/htt_relative_time.mpr
trunk/tests/pcap/mpr_out/htt_sip_stream.mpr
trunk/tests/pcap/mpr_out/htt_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/htt_time-aggreg.mpr
trunk/tests/pcap/mpr_out/htt_trans_layer.mpr
trunk/tests/pcap/mpr_out/v6-htt_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/v6-htt_all_info.mpr
trunk/tests/pcap/mpr_out/v6-htt_app_layer.mpr
trunk/tests/pcap/mpr_out/v6-htt_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/v6-htt_config.mpr
trunk/tests/pcap/mpr_out/v6-htt_ignore.mpr
trunk/tests/pcap/mpr_out/v6-htt_link_layer.mpr
trunk/tests/pcap/mpr_out/v6-htt_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/v6-htt_mix.mpr
trunk/tests/pcap/mpr_out/v6-htt_net_layer.mpr
trunk/tests/pcap/mpr_out/v6-htt_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/v6-htt_relative_time.mpr
trunk/tests/pcap/mpr_out/v6-htt_sip_stream.mpr
trunk/tests/pcap/mpr_out/v6-htt_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/v6-htt_time-aggreg.mpr
trunk/tests/pcap/mpr_out/v6-htt_trans_layer.mpr
trunk/tests/pcap/pcap_in/dns.cap
trunk/tests/pcap/pcap_in/http.cap
trunk/tests/pcap/pcap_in/v6-http.cap
Modified: trunk/CMakeLists.txt
===================================================================
--- trunk/CMakeLists.txt 2013-03-22 22:08:07 UTC (rev 1733)
+++ trunk/CMakeLists.txt 2013-03-23 13:45:40 UTC (rev 1734)
@@ -97,7 +97,6 @@
#pcap setup
SET(BUILD_PCAP ON)
IF(BUILD_PCAP)
- MESSAGE("BUILD PCAP")
SET(OSIP_ROOT "${CMAKE_SOURCE_DIR}/third-party-sw/libosip2-3.6.0" CACHE PATH "The SIP parser root." )
ADD_SUBDIRECTORY(${OSIP_ROOT})
SET(HTTP_ROOT "${CMAKE_SOURCE_DIR}/third-party-sw/http_parser" CACHE PATH
Modified: trunk/src/data/pcap/flow.cpp
===================================================================
--- trunk/src/data/pcap/flow.cpp 2013-03-22 22:08:07 UTC (rev 1733)
+++ trunk/src/data/pcap/flow.cpp 2013-03-23 13:45:40 UTC (rev 1734)
@@ -36,13 +36,12 @@
std::stringstream ss;
msg_id id = it->first;
- if(!pcap_settings->is_aggregation_active() || it->second.get_smart_label() == "")
+ if(settings->type != AGGREG_FLOW || it->second.get_smart_label() == "")
{
ss << id.data.get_label() << " ";
}
else // USE ONLY FOR REASSEMBLING MOSLTY
{
- //ss << "X " << id.data.get_label() << "X ";
std::string label = it->second.get_smart_label();
// if this is a smart reassembling (HTTP,TCP,SIP), the size is allready included at the end of smart label -> delete it!
size_t pos = label.find("SIZE");
Modified: trunk/src/data/pcap/flow_stats.cpp
===================================================================
--- trunk/src/data/pcap/flow_stats.cpp 2013-03-22 22:08:07 UTC (rev 1733)
+++ trunk/src/data/pcap/flow_stats.cpp 2013-03-23 13:45:40 UTC (rev 1734)
@@ -69,7 +69,7 @@
if(!(settings->is_aggregation_active(agr_level))) // this aggregation is not active
return result;
- result.level = agr_level;
+ result.level = agr_level;
result.ports = packet->get_ports();
TcpPacket* tcp_p = NULL;
@@ -96,16 +96,24 @@
SpecData fill_specdata(PcapSettings* settings,Packet* packet,FlowLevel f_lev,FlowLevel agr_lev,bool sip_flush)
{
SpecData result;
- if(settings->flow_settings == NULL)
+
+ // the bigger priority has message flow before aggregations (HTTP,SIP,TCP...)
+ if(settings->is_aggregation_active())
{
+ if(settings->flow_settings->type == AGGREG_FLOW)
+ {
+ result = fill_specdata_aggreg(settings,packet,agr_lev,sip_flush);
+ }
+ else // no reassembling flow
+ {
+ result = fill_specdata_byflow(settings,packet,f_lev);
+ }
+ }
+ else // no aggregation
+ {
result.level = NO_FLOW;
- return result;
}
-
- if(settings->is_aggregation_active())
- return fill_specdata_aggreg(settings,packet,agr_lev,sip_flush);
- else
- return fill_specdata_byflow(settings,packet,f_lev);
+ return result;
}
Modified: trunk/src/data/pcap/pcap_settings.cpp
===================================================================
--- trunk/src/data/pcap/pcap_settings.cpp 2013-03-22 22:08:07 UTC (rev 1733)
+++ trunk/src/data/pcap/pcap_settings.cpp 2013-03-23 13:45:40 UTC (rev 1734)
@@ -14,7 +14,7 @@
ignore_packets = view_settings->ignore_packets;
}
- if(flow_settings->apply_aggreg) // BIGGER PRIORITY IN SETTINGS !!!!
+ if(flow_settings->apply_aggreg) // BIGGER PRIORITY IN SETTINGS THAN REASSEMBLING -> for message sequence flow !!!!
{
this->ignore_packets = flow_settings->ignore_packets;
view_settings->show_data_size = flow_settings->show_data_size;
@@ -28,7 +28,7 @@
default : parse_layer = APP_LAYER;
}
}
- else if(is_aggregation_active()) // for aggreagation
+ else if(is_aggregation_active()) // for reassembling, if smart flow is not active
{
flow_settings->apply_aggreg = true;
flow_settings->type = AGGREG_FLOW;
@@ -104,11 +104,8 @@
bool PcapSet...
[truncated message content] |
|
From: <xb...@us...> - 2013-03-28 12:19:39
|
Revision: 1742
http://sourceforge.net/p/scstudio/code/1742
Author: xborza
Date: 2013-03-28 12:19:34 +0000 (Thu, 28 Mar 2013)
Log Message:
-----------
pcap fix
Modified Paths:
--------------
trunk/src/data/pcap/bytes.h
trunk/src/data/pcap/pcap_handler.h
trunk/src/data/pcap/pcap_settings.cpp
trunk/tests/pcap/pcap_test.cpp
Modified: trunk/src/data/pcap/bytes.h
===================================================================
--- trunk/src/data/pcap/bytes.h 2013-03-28 11:39:45 UTC (rev 1741)
+++ trunk/src/data/pcap/bytes.h 2013-03-28 12:19:34 UTC (rev 1742)
@@ -1,5 +1,5 @@
-#ifndef __BYTES_H__
-#define __BYTES_H__
+#ifndef BYTES_H_INCLUDED
+#define BYTES_H_INCLUDED
#include <pcap.h>
@@ -44,5 +44,4 @@
#define TO_NTOHL(data) (ntohl(data))
#endif
-#endif
-
+#endif
\ No newline at end of file
Modified: trunk/src/data/pcap/pcap_handler.h
===================================================================
--- trunk/src/data/pcap/pcap_handler.h 2013-03-28 11:39:45 UTC (rev 1741)
+++ trunk/src/data/pcap/pcap_handler.h 2013-03-28 12:19:34 UTC (rev 1742)
@@ -1,3 +1,6 @@
+#ifndef PCAP_HANDLER_INCLUDED
+#define PCAP_HANDLER_INCLUDED
+
#include "pcap_settings.h"
#include <pcap.h>
#include "packet.h"
@@ -119,4 +122,4 @@
pcap_t* handle;
}handStruct;
-
+#endif
\ No newline at end of file
Modified: trunk/src/data/pcap/pcap_settings.cpp
===================================================================
--- trunk/src/data/pcap/pcap_settings.cpp 2013-03-28 11:39:45 UTC (rev 1741)
+++ trunk/src/data/pcap/pcap_settings.cpp 2013-03-28 12:19:34 UTC (rev 1742)
@@ -1,5 +1,4 @@
#include "pcap_settings.h"
-#include <iostream>
double round(double num, int prec)
{
@@ -87,7 +86,7 @@
bool PcapSettings::add_packet_to_diagram(Packet* p, ParseLayer layer)
{
- return (this->parse_layer == layer && p->get_upper_proto() == -1 && !this->ignore_packets);
+ return (this->parse_layer == layer || (p->get_upper_proto() == -1 && !this->ignore_packets));
}
bool PcapSettings::ignore_packet(Packet* p)
Modified: trunk/tests/pcap/pcap_test.cpp
===================================================================
--- trunk/tests/pcap/pcap_test.cpp 2013-03-28 11:39:45 UTC (rev 1741)
+++ trunk/tests/pcap/pcap_test.cpp 2013-03-28 12:19:34 UTC (rev 1742)
@@ -94,8 +94,8 @@
// read aggregation settings
AggregSettings* agg_set = new AggregSettings();
agg_set->apply_aggreg = pt.get<bool>("AggregSettings.ApplyAggregation");
- agg_set->level = (FlowLevel)pt.get<int>("AggregSettings.AggregLevel");
- agg_set->type = (FlowType)pt.get<int>("AggregSettings.AggregType");
+ agg_set->level = (AggrLevel)pt.get<int>("AggregSettings.AggregLevel");
+ agg_set->type = (AggregType)pt.get<int>("AggregSettings.AggregType");
agg_set->time_interval = pt.get<double>("AggregSettings.TimeInterval");
agg_set->ignore_packets = pt.get<bool>("AggregSettings.IgnorePackets");
agg_set->show_data_size = pt.get<bool>("AggregSettings.DataSize");
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <xf...@us...> - 2013-04-28 19:42:11
|
Revision: 1747
http://sourceforge.net/p/scstudio/code/1747
Author: xfarmad
Date: 2013-04-28 19:42:04 +0000 (Sun, 28 Apr 2013)
Log Message:
-----------
ExportTex tests
Modified Paths:
--------------
trunk/src/data/exporttex/exportTex.cpp
trunk/tests/CMakeLists.txt
trunk/tests/exporttex_position_test/exporttex_diff.py
trunk/tests/exporttex_position_test/exporttex_position_test.cpp
trunk/tests/exporttex_position_test/exporttex_position_test.tex.result
trunk/tests/exporttex_test/CMakeLists.txt
trunk/tests/exporttex_test/exporttex_diff.py
trunk/tests/exporttex_test/exporttex_test00.tex.result
trunk/tests/exporttex_test/exporttex_test01.tex.result
trunk/tests/exporttex_test/exporttex_test02.tex.result
trunk/tests/exporttex_test/exporttex_test03.tex.result
trunk/tests/exporttex_test/exporttex_test04.tex.result
trunk/tests/exporttex_test/exporttex_test05.tex.result
trunk/tests/exporttex_test/exporttex_test06.tex.result
trunk/tests/exporttex_test/exporttex_test07.tex.result
trunk/tests/exporttex_test/exporttex_test08.tex.result
trunk/tests/exporttex_test/exporttex_test09.tex.result
trunk/tests/exporttex_test/exporttex_test10.tex.result
trunk/tests/exporttex_test/exporttex_test11.tex.result
trunk/tests/exporttex_test/exporttex_test13.tex.result
trunk/tests/exporttex_test/exporttex_test15.tex.result
trunk/tests/exporttex_test/exporttex_test16.tex.result
trunk/tests/exporttex_test/exporttex_test17.tex.result
trunk/tests/exporttex_test/exporttex_test18.tex.result
trunk/tests/exporttex_test/exporttex_test19.tex.result
trunk/tests/exporttex_test/exporttex_test20.tex.result
trunk/tests/exporttex_test/exporttex_test21.tex.result
trunk/tests/exporttex_test/exporttex_test22.tex.result
trunk/tests/exporttex_test/exporttex_test23.tex.result
trunk/tests/exporttex_test/exporttex_test24.tex.result
trunk/tests/exporttex_test/exporttex_test25.tex.result
trunk/tests/exporttex_test/exporttex_test26.tex.result
trunk/tests/exporttex_test/exporttex_test27.tex.result
trunk/tests/exporttex_test/exporttex_test28.tex.result
trunk/tests/exporttex_test/exporttex_test29.tex.result
trunk/tests/exporttex_test/exporttex_test30.tex.result
trunk/tests/exporttex_test/exporttex_test31.tex.result
trunk/tests/exporttex_test/exporttex_test32.tex.result
trunk/tests/exporttex_test/exporttex_test33.tex.result
trunk/tests/exporttex_test/exporttex_test34.tex.result
trunk/tests/exporttex_test/exporttex_test35.tex.result
trunk/tests/exporttex_test/exporttex_test36.tex.result
trunk/tests/exporttex_test/exporttex_test37.tex.result
trunk/tests/exporttex_test/exporttex_test38.tex.result
trunk/tests/exporttex_test/exporttex_test39.tex.result
trunk/tests/exporttex_test/exporttex_test40.tex.result
trunk/tests/exporttex_test/exporttex_test41.tex.result
trunk/tests/exporttex_test/exporttex_test42.tex.result
trunk/tests/exporttex_test/exporttex_test45.tex.result
trunk/tests/exporttex_test/exporttex_test47.tex.result
trunk/tests/exporttex_test/exporttex_test49.tex.result
trunk/tests/exporttex_test/exporttex_test50.tex.result
trunk/tests/exporttex_test/exporttex_test51.tex.result
trunk/tests/exporttex_test/exporttex_test52.tex.result
trunk/tests/exporttex_test/exporttex_test53.tex.result
trunk/tests/exporttex_test/exporttex_test54.tex.result
trunk/tests/exporttex_test/exporttex_test55.tex.result
trunk/tests/exporttex_test/exporttex_test56.tex.result
trunk/tests/exporttex_test/exporttex_test58.tex.result
trunk/tests/exporttex_test/exporttex_test59.tex.result
trunk/tests/exporttex_test/exporttex_test60.tex.result
trunk/tests/exporttex_test/exporttex_test61.tex.result
trunk/tests/exporttex_test/exporttex_test62.tex.result
trunk/tests/exporttex_test/exporttex_test63.tex.result
trunk/tests/exporttex_test/exporttex_test64.tex.result
trunk/tests/exporttex_test/exporttex_test65.tex.result
trunk/tests/exporttex_test/exporttex_test66.tex.result
trunk/tests/exporttex_test/exporttex_test67.tex.result
trunk/tests/exporttex_test/exporttex_test68.tex.result
trunk/tests/exporttex_test/exporttex_test69.tex.result
trunk/tests/exporttex_test/exporttex_test70.tex.result
trunk/tests/exporttex_test/exporttex_test72.tex.result
trunk/tests/exporttex_test/exporttex_test73.tex.result
trunk/tests/exporttex_test/exporttex_test74.tex.result
trunk/tests/exporttex_test/exporttex_test75.tex.result
trunk/tests/exporttex_test/exporttex_test76.tex.result
trunk/tests/exporttex_test/exporttex_test77.tex.result
trunk/tests/exporttex_test/exporttex_test78.tex.result
trunk/tests/exporttex_test/exporttex_test79.tex.result
trunk/tests/exporttex_test/exporttex_test80.tex.result
trunk/tests/exporttex_test/exporttex_test81.tex.result
trunk/tests/exporttex_test/exporttex_test82.tex.result
trunk/tests/exporttex_test/exporttex_test83.tex.result
trunk/tests/exporttex_test/exporttex_test84.tex.result
trunk/tests/exporttex_test/exporttex_test85.tex.result
trunk/tests/exporttex_test/exporttex_test86.tex.result
trunk/tests/exporttex_test/exporttex_test87.tex.result
trunk/tests/exporttex_test/exporttex_test88.tex.result
trunk/tests/exporttex_test/exporttex_test89.tex.result
trunk/tests/exporttex_test/exporttex_test90.tex.result
trunk/tests/exporttex_test/exporttex_test92.tex.result
trunk/tests/exporttex_test/exporttex_test93.tex.result
trunk/tests/exporttex_test/exporttex_test94.tex.result
trunk/tests/exporttex_test/exporttex_time01.tex.result
trunk/tests/exporttex_test/exporttex_time02.tex.result
trunk/tests/exporttex_test/exporttex_time03.tex.result
trunk/tests/exporttex_test/exporttex_time04.tex.result
trunk/tests/exporttex_test/exporttex_time05.tex.result
trunk/tests/exporttex_test/exporttex_time06.tex.result
trunk/tests/exporttex_test/exporttex_time07.tex.result
trunk/tests/exporttex_test/exporttex_time08.tex.result
trunk/tests/exporttex_test/exporttex_time09.tex.result
trunk/tests/exporttex_test/exporttex_time10.tex.result
trunk/tests/exporttex_test/exporttex_time11.tex.result
trunk/tests/exporttex_test/exporttex_time12.tex.result
trunk/tests/exporttex_test/exporttex_time13.tex.result
trunk/tests/exporttex_test/exporttex_time14.tex.result
trunk/tests/exporttex_test/exporttex_time15.tex.result
trunk/tests/exporttex_test/exporttex_time16.tex.result
trunk/tests/exporttex_test/exporttex_time17.tex.result
trunk/tests/exporttex_test/exporttex_time18.tex.result
trunk/tests/exporttex_test/exporttex_time19.tex.result
trunk/tests/exporttex_test/exporttex_time20.tex.result
trunk/tests/exporttex_test/exporttex_time21.tex.result
trunk/tests/exporttex_test/exporttex_time22.tex.result
trunk/tests/exporttex_test/exporttex_time23.tex.result
trunk/tests/exporttex_test/exporttex_time24.tex.result
trunk/tests/exporttex_test/exporttex_time25.tex.result
trunk/tests/exporttex_test/exporttex_time26.tex.result
trunk/tests/exporttex_test/exporttex_time27.tex.result
trunk/tests/exporttex_test/exporttex_time28.tex.result
trunk/tests/exporttex_test/exporttex_time29.tex.result
trunk/tests/exporttex_test/exporttex_time30.tex.result
trunk/tests/exporttex_test/exporttex_time31.tex.result
trunk/tests/exporttex_test/exporttex_time32.tex.result
trunk/tests/exporttex_test/exporttex_time33.tex.result
trunk/tests/exporttex_test/exporttex_time34.tex.result
trunk/tests/exporttex_test/exporttex_time35.tex.result
trunk/tests/exporttex_test/exporttex_time36.tex.result
trunk/tests/exporttex_test/exporttex_time37.tex.result
trunk/tests/exporttex_test/exporttex_time38.tex.result
trunk/tests/exporttex_test/exporttex_time39.tex.result
trunk/tests/exporttex_test/exporttex_time40.tex.result
trunk/tests/exporttex_test/exporttex_time41.tex.result
trunk/tests/exporttex_test/exporttex_time42.tex.result
trunk/tests/exporttex_test/exporttex_time43.tex.result
trunk/tests/exporttex_test/exporttex_time44.tex.result
trunk/tests/exporttex_test/exporttex_time45.tex.result
trunk/tests/exporttex_test/exporttex_time46.tex.result
trunk/tests/exporttex_test/exporttex_time47.tex.result
trunk/tests/exporttex_test/exporttex_time48.tex.result
trunk/tests/exporttex_test/exporttex_time49.tex.result
trunk/tests/exporttex_test/reload.py
Added Paths:
-----------
trunk/tests/exporttex_test/exporttex_time11.tex.result2
trunk/tests/exporttex_test/exporttex_time26.tex.result2
trunk/tests/exporttex_test/exporttex_time27.tex.result2
trunk/tests/exporttex_test/exporttex_time28.tex.result2
trunk/tests/exporttex_test/exporttex_time29.tex.result2
trunk/tests/exporttex_test/exporttex_time30.tex.result2
Removed Paths:
-------------
trunk/tests/exporttex_test/exporttex_test12.mpr
trunk/tests/exporttex_test/exporttex_test12.tex.result
trunk/tests/exporttex_test/exporttex_test14.mpr
trunk/tests/exporttex_test/exporttex_test14.tex.result
trunk/tests/exporttex_test/exporttex_test43.mpr
trunk/tests/exporttex_test/exporttex_test43.tex.result
trunk/tests/exporttex_test/exporttex_test44.mpr
trunk/tests/exporttex_test/exporttex_test44.tex.result
trunk/tests/exporttex_test/exporttex_test46.mpr
trunk/tests/exporttex_test/exporttex_test46.tex.result
trunk/tests/exporttex_test/exporttex_test48.mpr
trunk/tests/exporttex_test/exporttex_test48.tex.result
trunk/tests/exporttex_test/exporttex_test57.mpr
trunk/tests/exporttex_test/exporttex_test57.tex.result
trunk/tests/exporttex_test/exporttex_test71.mpr
trunk/tests/exporttex_test/exporttex_test71.tex.result
trunk/tests/exporttex_test/exporttex_test91.mpr
trunk/tests/exporttex_test/exporttex_test91.tex.result
Modified: trunk/src/data/exporttex/exportTex.cpp
===================================================================
--- trunk/src/data/exporttex/exportTex.cpp 2013-04-15 05:40:35 UTC (rev 1746)
+++ trunk/src/data/exporttex/exportTex.cpp 2013-04-28 19:42:04 UTC (rev 1747)
@@ -59,8 +59,6 @@
std::string m_description;
std::string m_length_name;
-
-
Coordinate absoluteCoordinate(Coordinate coordinate, bool absolute)
{
if(absolute)
@@ -392,7 +390,9 @@
CoregionArea* coregion = dynamic_cast<CoregionArea*>(event->get_area());
if(coregion != NULL)
+ {
coor += Compare::round(coregion->get_begin_height());
+ }
coor += event->get_instance()->get_line_begin().get_y();
print_event_comment(event,coor);
@@ -613,7 +613,6 @@
}
if(Compare::equal((*min)->get_line_begin().get_y(),first))
{
- //implement color on instances in msc5.sty
print_color((*min)->get_marked());
m_stream << "\\declinst" << m_instance_width_map.printOptParam((*min)->get_width()) << "{" << m_instance_id_map.get_id(inst_pos((*min))) << "_inst}"
<< m_instance_height_map.printOptParam(3) << "{" << ExportTex::print_wchar((*min)->get_label()) << "}";
@@ -631,6 +630,7 @@
}
instances.erase(min);
}
+ m_stream << std::endl;
};
void print_instance(const InstancePtr& instance, Coordinate coordinate = 0)
@@ -833,7 +833,6 @@
void insert_pointer(MscElementPtr pointer, Coordinate coordinate)
{
- //TODO: improve coordinate key
coordinate = Compare::round(coordinate);
ElementListMap::iterator it;
it = m_event_level_map.find(coordinate);
@@ -844,8 +843,7 @@
}
if(it == m_event_level_map.end())
{
- //TODO: avoid this to happend
- m_stream << "[log] it is end, coordinate:" << coordinate << std::endl;
+ throw new std::runtime_error("ExportTex::PrintBmsc::create_level() failed");
}else{
(*it).second.push_back(pointer);
}
@@ -1201,7 +1199,7 @@
if(reverse_find == m_level_types.begin())
{
- //slope out of diagram == error
+ //slope out of diagram
m_stream << (it->first - it->second) << "mm}" << std::endl;
break;
}
@@ -1237,7 +1235,7 @@
}
if(Compare::equal(it->first,it->second))
{
- //slope is 0 has sense to print????
+ //slope is 0
m_stream << "0mm*\\real{\\mscScaleY}}" << std::endl;
continue;
}
@@ -1294,6 +1292,7 @@
find++;
}
}
+ m_stream << std::endl << std::endl;
};
void print_time_slope(DistanceMap *size, std::list<std::pair<Coordinate,Coordinate> > *coordinates)
@@ -1325,7 +1324,7 @@
if(reverse_find == m_level_types.begin())
{
- //slope out of diagram == error
+ //slope out of diagram
m_stream << (it->first - it->second) << "mm}" << std::endl;
break;
}
@@ -1361,7 +1360,7 @@
}
if(Compare::equal(it->first,it->second))
{
- //slope is 0 has sense to print????
+ //slope is 0
m_stream << "0mm*\\real{\\mscScaleY}}" << std::endl;
continue;
}
@@ -1374,7 +1373,7 @@
next++;
if(next == m_level_types.end())
{
- //slope out of diagram == error
+ //slope out of diagram
m_stream << (it->second - it->first) << "mm}" << std::endl;
break;
}
@@ -1426,7 +1425,7 @@
{
Coordinate begin_coregion = inst->get_line_begin().get_y() + coregion_area->get_begin_height();
Coordinate end_coregion = inst->get_line_begin().get_y() + coregion_area->get_end_height();
- //coregion is exported first -> begin change coordinate in msc.sty, end not
+
if(Compare::compare(begin_coregion,send_coordinate,true) && Compare::compare(send_coordinate,end_coregion))
{
send_padding += coregion_area->get_width();
@@ -1733,16 +1732,12 @@
}
else
m_stream << "\\setlength{\\levelheight}{" << it->first << "mm" << "}" << std::endl;
- m_stream << "\\nextlevel" << std::endl;
+ m_stream << "\\nextlevel" << std::endl << std::endl;;
}
}
m_stream << "\\end{msc}" << std::endl;
- /*
- for(ElementListMap::iterator it = m_event_level_map.begin(); it!=m_event_level_map.end(); it++)
- {
- (*it).second.clear();
- }*/
+
return 0;
};
};
@@ -2124,12 +2119,6 @@
PredecessorNode *predecessor_node = dynamic_cast<PredecessorNode*>(npos->get());
if(predecessor_node != NULL)
{
- /* mam overovat????
- if(predecessor_node->get_successors().empty())
- {
- print_report(RS_WARNING, stringize()
- << L"Warning: HMSC node without successors violates the Z.120 standard.");
- } */
for(NodeRelationPtrVector::const_iterator spos = predecessor_node->get_successors().begin();
spos != predecessor_node->get_successors().end(); spos++)
{
@@ -2197,15 +2186,19 @@
HMscNode *successor_node = dynamic_cast<HMscNode*>(successor);
print_color((*spos)->get_marked());
- m_stream << "\\arrow{" << node_id_map.get_id(*npos) << "}[";
+ m_stream << "\\arrow{" << node_id_map.get_id(*npos) << "}";
std::list<MscPoint> line = (*spos)->get_line().get_points();
- //for(std::list<MscPoint>::const_iterator point = (*spos)->get_line().get_points().begin(); point != (*spos)->get_line().get_points().end();point++)
- for(std::list<MscPoint>::const_iterator point = line.begin(); point != line.end();point++)
+ if(!line.empty())
{
- m_stream << "(" << get_pos_x(point->get_x()) << "," << get_pos_y(point->get_y()) << ")";
- }
-
- m_stream << "]{" << node_id_map.get_id(successor_node) << "}" << std::endl;
+ m_stream << "[";
+ //for(std::list<MscPoint>::const_iterator point = (*spos)->get_line().get_points().begin(); point != (*spos)->get_line().get_points().end();point++)
+ for(std::list<MscPoint>::const_iterator point = line.begin(); point != line.end();point++)
+ {
+ m_stream << "(" << get_pos_x(point->get_x()) << "," << get_pos_y(point->get_y()) << ")";
+ }
+ m_stream << "]";
+ }
+ m_stream << "{" << node_id_map.get_id(successor_node) << "}" << std::endl;
// add successors of this node to the stack
// note: std::list<>::push_back doesn't invalidate iterators
@@ -2322,7 +2315,6 @@
std::string ExportTex::print_wchar(const std::wstring &value)
{
static const std::string replacement = "\\_";
- bool was_replacement = false;
std::string new_value;
// performance optimalization: allocate buffer for all characters
@@ -2332,39 +2324,25 @@
for(std::wstring::const_iterator pos = value.begin();
pos != value.end(); pos++)
{
- char stripped;
-
- if((*pos >= 'A' && *pos <= 'Z') || (*pos >= 'a' && *pos <= 'z')
- || (*pos >= '0' && *pos <= '9')
- || *pos == '.' || *pos == ' ')
+ if( *pos == '#' || *pos == '%' || *pos == '&' || *pos == '_' )
{
// print valid characters
- new_value.push_back((char)*pos);
-
- was_replacement = false;
- }
- else if( *pos == '#' || *pos == '%' || *pos == '&' || *pos == '_' )
- {
- // print valid characters
new_value.push_back('\\');
new_value.push_back((char)*pos);
-
- was_replacement = false;
}
- else if((stripped = strip_diacritics(*pos)) != (char)0)
- {
- // use the transliteration table
- new_value.push_back(stripped);
- was_replacement = false;
- }
else
{
- // replace invalid characters by the 'replacement'
- // shrink multiple replacements into a single characters
- if(!was_replacement)
- new_value.append(replacement);
-
- was_replacement = true;
+ if( *pos == '+' || *pos == '=' || *pos == '|' || *pos == '<' || *pos == '>')
+ {
+ //characters availible only in mathematical mode
+ new_value.push_back('$');
+ new_value.push_back((char)*pos);
+ new_value.push_back('$');
+ }
+ else
+ {
+ new_value.push_back((char)*pos);
+ }
}
}
return new_value;
@@ -2389,7 +2367,17 @@
}
else
{
- new_value.push_back((char)*pos);
+ if( *pos == '+' || *pos == '=' || *pos == '|' || *pos == '<' || *pos == '>')
+ {
+ //characters availible only in mathematical mode
+ new_value.push_back('$');
+ new_value.push_back((char)*pos);
+ new_value.push_back('$');
+ }
+ else
+ {
+ new_value.push_back((char)*pos);
+ }
}
}
return new_value;
Modified: trunk/tests/CMakeLists.txt
===================================================================
--- trunk/tests/CMakeLists.txt 2013-04-15 05:40:35 UTC (rev 1746)
+++ trunk/tests/CMakeLists.txt 2013-04-28 19:42:04 UTC (rev 1747)
@@ -153,10 +153,10 @@
ENDMACRO(ADD_PCAP_TEST)
ADD_SUBDIRECTORY(pcap)
-# ADD_SUBDIRECTORY(exporttex_test)
+ADD_SUBDIRECTORY(exporttex_test)
# Exporttex test with known coordinates (test doesn't depends on beautify)
-# ADD_SUBDIRECTORY(exporttex_position_test)
+ADD_SUBDIRECTORY(exporttex_position_test)
SET(MSCGEN_SEQUENCE 0)
MACRO(ADD_MSCGEN_TEST FILE SATISFIED)
Modified: trunk/tests/exporttex_position_test/exporttex_diff.py
===================================================================
--- trunk/tests/exporttex_position_test/exporttex_diff.py 2013-04-15 05:40:35 UTC (rev 1746)
+++ trunk/tests/exporttex_position_test/exporttex_diff.py 2013-04-28 19:42:04 UTC (rev 1747)
@@ -6,7 +6,7 @@
p = subprocess.Popen([sys.argv[1]], stdout=subprocess.PIPE, stderr=subprocess.PIPE, universal_newlines=True)
-output = p.stderr.readlines() + p.stdout.readlines()
+output = p.stdout.readlines() + p.stderr.readlines()
# print the output as it may contain valgrind error reports
# note: ctest expects the valgring errors at stderr
sys.stderr.writelines(output)
Modified: trunk/tests/exporttex_position_test/exporttex_position_test.cpp
===================================================================
--- trunk/tests/exporttex_position_test/exporttex_position_test.cpp 2013-04-15 05:40:35 UTC (rev 1746)
+++ trunk/tests/exporttex_position_test/exporttex_position_test.cpp 2013-04-28 19:42:04 UTC (rev 1747)
@@ -22,26 +22,26 @@
#include "data/exporttex/exportTex.h"
-CompleteMessagePtr get_cm(EventPtr e1, EventPtr e2)
+CompleteMessagePtr get_cm(MessageEventPtr e1, MessageEventPtr e2)
{
CompleteMessagePtr m1 = new CompleteMessage(L"hi1");
m1->glue_events(e1.get(), e2.get());
return m1;
}
-EventPtr get_event(StrictOrderAreaPtr strict1, MscPoint point){
- EventPtr e1 = strict1->add_event();
+MessageEventPtr get_event(StrictOrderAreaPtr strict1, MscPoint point){
+ MessageEventPtr e1 = strict1->add_event();
e1->set_position(point);
return e1;
}
-EventPtr get_event(CoregionAreaPtr strict1, MscPoint point){
- EventPtr e1 = strict1->add_event();
+MessageEventPtr get_event(CoregionAreaPtr strict1, MscPoint point){
+ MessageEventPtr e1 = strict1->add_event();
e1->set_position(point);
return e1;
}
-IncompleteMessagePtr get_im(EventPtr e1, MscPoint point, InstancePtr instance,IncompleteMsgType type = LOST){
+IncompleteMessagePtr get_im(MessageEventPtr e1, MscPoint point, InstancePtr instance,IncompleteMsgType type = LOST){
IncompleteMessagePtr im1 = new IncompleteMessage(type);
im1->glue_event(e1);
im1->set_dot_position(MscPoint(point.get_x()-instance->get_line_begin().get_x(),point.get_y()-instance->get_line_begin().get_y()-e1->get_position().get_y()));
@@ -50,7 +50,7 @@
return im1;
}
-IncompleteMessagePtr get_im(EventPtr e1, MscPoint point, IncompleteMsgType type = LOST){
+IncompleteMessagePtr get_im(MessageEventPtr e1, MscPoint point, IncompleteMsgType type = LOST){
IncompleteMessagePtr im1 = new IncompleteMessage(type);
im1->glue_event(e1);
im1->set_dot_position(point);
@@ -59,7 +59,7 @@
return im1;
}
-TimeRelationEventPtr getTimeRelationEvent(EventPtr e1, EventPtr e2, Coordinate width = 7, bool directed = false){
+TimeRelationEventPtr getTimeRelationEvent(MessageEventPtr e1, MessageEventPtr e2, Coordinate width = 7, bool directed = false){
MscTimeIntervalD in1(0,D::infinity());
MscTimeIntervalSetD ins1;
ins1.insert(in1);
@@ -90,7 +90,7 @@
return com1;
}
-AbsoluteTimePtr get_absTime(EventPtr e2, MscPoint point1, MscPoint point2, double interval_left = 0, double interval_right = 0){
+AbsoluteTimePtr get_absTime(MessageEventPtr e2, MscPoint point1, MscPoint point2, double interval_left = 0, double interval_right = 0){
AbsoluteTimePtr ab1 = new AbsoluteTime();
ab1->set_position(point1);
MscTimeIntervalSetD ins1;
@@ -107,16 +107,6 @@
return ab1;
}
-void get_order(EventPtr e1, EventPtr e2)
-{
- CoregionEventPtr ce1 = boost::dynamic_pointer_cast<CoregionEvent>(e1);
- CoregionEventPtr ce2 = boost::dynamic_pointer_cast<CoregionEvent>(e2);
- if(ce1!=NULL && ce2!=NULL)
- {
- ce1->add_successor(ce2.get());
- }
-}
-
int main(int argc, char** argv)
{
ExportTex exportTex;
@@ -182,24 +172,24 @@
instance2->add_area(strict2);
instance3->add_area(strict3);
- EventPtr e1 = get_event(strict1,MscPoint(0,7));
- EventPtr e2 = get_event(strict1,MscPoint(0,12));
- EventPtr e3 = get_event(strict1,MscPoint(0,17));
- EventPtr e4 = get_event(strict1,MscPoint(0,27));
- EventPtr e5 = get_event(strict1,MscPoint(0,35));
- EventPtr e6 = get_event(strict1,MscPoint(0,44));
- EventPtr e7 = get_event(strict1,MscPoint(0,60));
- EventPtr e8 = get_event(strict2,MscPoint(0,7));
- EventPtr e9 = get_event(strict2,MscPoint(0,12));
- EventPtr e10 = get_event(strict2,MscPoint(0,22));
- EventPtr e11 = get_event(strict2,MscPoint(0,35));
- EventPtr e12 = get_event(strict2,MscPoint(0,44));
- EventPtr e13 = get_event(strict2,MscPoint(0,60));
- EventPtr e14 = get_event(strict2,MscPoint(0,65));
- EventPtr e15 = get_event(strict3,MscPoint(0,17));
- EventPtr e16 = get_event(strict3,MscPoint(0,22));
- EventPtr e17 = get_event(strict3,MscPoint(0,27));
- EventPtr e18 = get_event(strict3,MscPoint(0,65));
+ MessageEventPtr e1 = get_event(strict1,MscPoint(0,7));
+ MessageEventPtr e2 = get_event(strict1,MscPoint(0,12));
+ MessageEventPtr e3 = get_event(strict1,MscPoint(0,17));
+ MessageEventPtr e4 = get_event(strict1,MscPoint(0,27));
+ MessageEventPtr e5 = get_event(strict1,MscPoint(0,35));
+ MessageEventPtr e6 = get_event(strict1,MscPoint(0,44));
+ MessageEventPtr e7 = get_event(strict1,MscPoint(0,60));
+ MessageEventPtr e8 = get_event(strict2,MscPoint(0,7));
+ MessageEventPtr e9 = get_event(strict2,MscPoint(0,12));
+ MessageEventPtr e10 = get_event(strict2,MscPoint(0,22));
+ MessageEventPtr e11 = get_event(strict2,MscPoint(0,35));
+ MessageEventPtr e12 = get_event(strict2,MscPoint(0,44));
+ MessageEventPtr e13 = get_event(strict2,MscPoint(0,60));
+ MessageEventPtr e14 = get_event(strict2,MscPoint(0,65));
+ MessageEventPtr e15 = get_event(strict3,MscPoint(0,17));
+ MessageEventPtr e16 = get_event(strict3,MscPoint(0,22));
+ MessageEventPtr e17 = get_event(strict3,MscPoint(0,27));
+ MessageEventPtr e18 = get_event(strict3,MscPoint(0,65));
CompleteMessagePtr m1 = get_cm(e1,e8);
CompleteMessagePtr m2 = get_cm(e2,e9);
@@ -237,24 +227,24 @@
instance1->add_area(strict1);
instance2->add_area(strict2);
- EventPtr e1 = get_event(strict1,MscPoint(0,8));
- EventPtr e2 = get_event(strict1,MscPoint(0,23));
- EventPtr e3 = get_event(strict1,MscPoint(0,43));
- EventPtr e4 = get_event(strict1,MscPoint(0,53));
- EventPtr e5 = get_event(strict1,MscPoint(0,68));
- EventPtr e6 = get_event(strict1,MscPoint(0,83));
- EventPtr e7 = get_event(strict1,MscPoint(0,88));
- EventPtr e8 = get_event(strict1,MscPoint(0,100));
- EventPtr e9 = get_event(strict1,MscPoint(0,133));
- EventPtr e10 = get_event(strict2,MscPoint(0,8));
- EventPtr e11 = get_event(strict2,MscPoint(0,18));
- EventPtr e12 = get_event(strict2,MscPoint(0,33));
- EventPtr e13 = get_event(strict2,MscPoint(0,58));
- EventPtr e14 = get_event(strict2,MscPoint(0,75));
- EventPtr e15 = get_event(strict2,MscPoint(0,83));
- EventPtr e16 = get_event(strict2,MscPoint(0,93));
- EventPtr e17 = get_event(strict2,MscPoint(0,108));
- EventPtr e18 = get_event(strict2,MscPoint(0,113));
+ MessageEventPtr e1 = get_event(strict1,MscPoint(0,8));
+ MessageEventPtr e2 = get_event(strict1,MscPoint(0,23));
+ MessageEventPtr e3 = get_event(strict1,MscPoint(0,43));
+ MessageEventPtr e4 = get_event(strict1,MscPoint(0,53));
+ MessageEventPtr e5 = get_event(strict1,MscPoint(0,68));
+ MessageEventPtr e6 = get_event(strict1,MscPoint(0,83));
+ MessageEventPtr e7 = get_event(strict1,MscPoint(0,88));
+ MessageEventPtr e8 = get_event(strict1,MscPoint(0,100));
+ MessageEventPtr e9 = get_event(strict1,MscPoint(0,133));
+ MessageEventPtr e10 = get_event(strict2,MscPoint(0,8));
+ MessageEventPtr e11 = get_event(strict2,MscPoint(0,18));
+ MessageEventPtr e12 = get_event(strict2,MscPoint(0,33));
+ MessageEventPtr e13 = get_event(strict2,MscPoint(0,58));
+ MessageEventPtr e14 = get_event(strict2,MscPoint(0,75));
+ MessageEventPtr e15 = get_event(strict2,MscPoint(0,83));
+ MessageEventPtr e16 = get_event(strict2,MscPoint(0,93));
+ MessageEventPtr e17 = get_event(strict2,MscPoint(0,108));
+ MessageEventPtr e18 = get_event(strict2,MscPoint(0,113));
CompleteMessagePtr m1 = get_cm(e1,e10);
CompleteMessagePtr m2 = get_cm(e2,e11);
@@ -292,30 +282,30 @@
instance1->add_area(strict1);
instance2->add_area(strict2);
- EventPtr e1 = get_event(strict1,MscPoint(0,8));
- EventPtr e2 = get_event(strict1,MscPoint(0,15));
- EventPtr e3 = get_event(strict1,MscPoint(0,20));
- EventPtr e4 = get_event(strict1,MscPoint(0,34));
- EventPtr e5 = get_event(strict1,MscPoint(0,45));
- EventPtr e6 = get_event(strict1,MscPoint(0,55));
- EventPtr e7 = get_event(strict1,MscPoint(0,70));
- EventPtr e8 = get_event(strict1,MscPoint(0,75));
- EventPtr e9 = get_event(strict1,MscPoint(0,80));
- EventPtr e10 = get_event(strict1,MscPoint(0,88));
- EventPtr e11 = get_event(strict1,MscPoint(0,93));
- EventPtr e12 = get_event(strict1,MscPoint(0,110));
- EventPtr e13 = get_event(strict2,MscPoint(0,15));
- EventPtr e14 = get_event(strict2,MscPoint(0,22));
- EventPtr e15 = get_event(strict2,MscPoint(0,28));
- EventPtr e16 = get_event(strict2,MscPoint(0,40));
- EventPtr e17 = get_event(strict2,MscPoint(0,45));
- EventPtr e18 = get_event(strict2,MscPoint(0,55));
- EventPtr e19 = get_event(strict2,MscPoint(0,65));
- EventPtr e20 = get_event(strict2,MscPoint(0,70));
- EventPtr e21 = get_event(strict2,MscPoint(0,77));
- EventPtr e22 = get_event(strict2,MscPoint(0,85));
- EventPtr e23 = get_event(strict2,MscPoint(0,98));
- EventPtr e24 = get_event(strict2,MscPoint(0,103));
+ MessageEventPtr e1 = get_event(strict1,MscPoint(0,8));
+ MessageEventPtr e2 = get_event(strict1,MscPoint(0,15));
+ MessageEventPtr e3 = get_event(strict1,MscPoint(0,20));
+ MessageEventPtr e4 = get_event(strict1,MscPoint(0,34));
+ MessageEventPtr e5 = get_event(strict1,MscPoint(0,45));
+ MessageEventPtr e6 = get_event(strict1,MscPoint(0,55));
+ MessageEventPtr e7 = get_event(strict1,MscPoint(0,70));
+ MessageEventPtr e8 = get_event(strict1,MscPoint(0,75));
+ MessageEventPtr e9 = get_event(strict1,MscPoint(0,80));
+ MessageEventPtr e10 = get_event(strict1,MscPoint(0,88));
+ MessageEventPtr e11 = get_event(strict1,MscPoint(0,93));
+ MessageEventPtr e12 = get_event(strict1,MscPoint(0,110));
+ MessageEventPtr e13 = get_event(strict2,MscPoint(0,15));
+ MessageEventPtr e14 = get_event(strict2,MscPoint(0,22));
+ MessageEventPtr e15 = get_event(strict2,MscPoint(0,28));
+ MessageEventPtr e16 = get_event(st...
[truncated message content] |
|
From: <xb...@us...> - 2013-05-11 22:36:10
|
Revision: 1751
http://sourceforge.net/p/scstudio/code/1751
Author: xborza
Date: 2013-05-11 22:36:05 +0000 (Sat, 11 May 2013)
Log Message:
-----------
some new pcap tests + relative interval rounding (6,3,0 decimal digits - according to time unit)
Modified Paths:
--------------
trunk/src/data/pcap/aggreg_handler.cpp
trunk/src/data/pcap/aggregation_formats.cpp
trunk/src/data/pcap/aggregation_formats.h
trunk/src/data/pcap/application_layer.cpp
trunk/src/data/pcap/pcap_handler.cpp
trunk/src/data/pcap/pcap_settings.cpp
trunk/src/data/pcap/pcap_settings.h
trunk/tests/pcap/CMakeLists.txt
trunk/tests/pcap/mpr_out/arp_example_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/arp_example_all_info.mpr
trunk/tests/pcap/mpr_out/arp_example_app_layer.mpr
trunk/tests/pcap/mpr_out/arp_example_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/arp_example_config.mpr
trunk/tests/pcap/mpr_out/arp_example_link_layer.mpr
trunk/tests/pcap/mpr_out/arp_example_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/arp_example_mix.mpr
trunk/tests/pcap/mpr_out/arp_example_net_layer.mpr
trunk/tests/pcap/mpr_out/arp_example_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/arp_example_relative_time.mpr
trunk/tests/pcap/mpr_out/arp_example_sip_stream.mpr
trunk/tests/pcap/mpr_out/arp_example_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/arp_example_time-aggreg.mpr
trunk/tests/pcap/mpr_out/arp_example_trans_layer.mpr
trunk/tests/pcap/mpr_out/dns_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/dns_all_info.mpr
trunk/tests/pcap/mpr_out/dns_app_layer.mpr
trunk/tests/pcap/mpr_out/dns_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/dns_config.mpr
trunk/tests/pcap/mpr_out/dns_ignore.mpr
trunk/tests/pcap/mpr_out/dns_link_layer.mpr
trunk/tests/pcap/mpr_out/dns_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/dns_mix.mpr
trunk/tests/pcap/mpr_out/dns_net_layer.mpr
trunk/tests/pcap/mpr_out/dns_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/dns_relative_time.mpr
trunk/tests/pcap/mpr_out/dns_sip_stream.mpr
trunk/tests/pcap/mpr_out/dns_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/dns_time-aggreg.mpr
trunk/tests/pcap/mpr_out/dns_trans_layer.mpr
trunk/tests/pcap/mpr_out/ftpv6_part1_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/ftpv6_part1_all_info.mpr
trunk/tests/pcap/mpr_out/ftpv6_part1_app_layer.mpr
trunk/tests/pcap/mpr_out/ftpv6_part1_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/ftpv6_part1_config.mpr
trunk/tests/pcap/mpr_out/ftpv6_part1_ignore.mpr
trunk/tests/pcap/mpr_out/ftpv6_part1_link_layer.mpr
trunk/tests/pcap/mpr_out/ftpv6_part1_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/ftpv6_part1_mix.mpr
trunk/tests/pcap/mpr_out/ftpv6_part1_net_layer.mpr
trunk/tests/pcap/mpr_out/ftpv6_part1_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/ftpv6_part1_relative_time.mpr
trunk/tests/pcap/mpr_out/ftpv6_part1_sip_stream.mpr
trunk/tests/pcap/mpr_out/ftpv6_part1_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/ftpv6_part1_time-aggreg.mpr
trunk/tests/pcap/mpr_out/ftpv6_part1_trans_layer.mpr
trunk/tests/pcap/mpr_out/ftpv6_part2_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/ftpv6_part2_all_info.mpr
trunk/tests/pcap/mpr_out/ftpv6_part2_app_layer.mpr
trunk/tests/pcap/mpr_out/ftpv6_part2_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/ftpv6_part2_config.mpr
trunk/tests/pcap/mpr_out/ftpv6_part2_ignore.mpr
trunk/tests/pcap/mpr_out/ftpv6_part2_link_layer.mpr
trunk/tests/pcap/mpr_out/ftpv6_part2_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/ftpv6_part2_mix.mpr
trunk/tests/pcap/mpr_out/ftpv6_part2_net_layer.mpr
trunk/tests/pcap/mpr_out/ftpv6_part2_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/ftpv6_part2_relative_time.mpr
trunk/tests/pcap/mpr_out/ftpv6_part2_sip_stream.mpr
trunk/tests/pcap/mpr_out/ftpv6_part2_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/ftpv6_part2_time-aggreg.mpr
trunk/tests/pcap/mpr_out/ftpv6_part2_trans_layer.mpr
trunk/tests/pcap/mpr_out/http_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/http_all_info.mpr
trunk/tests/pcap/mpr_out/http_app_layer.mpr
trunk/tests/pcap/mpr_out/http_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/http_config.mpr
trunk/tests/pcap/mpr_out/http_gzip_mix.mpr
trunk/tests/pcap/mpr_out/http_gzip_relative_time.mpr
trunk/tests/pcap/mpr_out/http_gzip_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/http_ignore.mpr
trunk/tests/pcap/mpr_out/http_link_layer.mpr
trunk/tests/pcap/mpr_out/http_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/http_mix.mpr
trunk/tests/pcap/mpr_out/http_net_layer.mpr
trunk/tests/pcap/mpr_out/http_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/http_relative_time.mpr
trunk/tests/pcap/mpr_out/http_sip_stream.mpr
trunk/tests/pcap/mpr_out/http_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/http_time-aggreg.mpr
trunk/tests/pcap/mpr_out/http_trans_layer.mpr
trunk/tests/pcap/mpr_out/ipv4_cipso_option_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/ipv4_cipso_option_all_info.mpr
trunk/tests/pcap/mpr_out/ipv4_cipso_option_app_layer.mpr
trunk/tests/pcap/mpr_out/ipv4_cipso_option_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/ipv4_cipso_option_config.mpr
trunk/tests/pcap/mpr_out/ipv4_cipso_option_link_layer.mpr
trunk/tests/pcap/mpr_out/ipv4_cipso_option_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/ipv4_cipso_option_mix.mpr
trunk/tests/pcap/mpr_out/ipv4_cipso_option_net_layer.mpr
trunk/tests/pcap/mpr_out/ipv4_cipso_option_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/ipv4_cipso_option_relative_time.mpr
trunk/tests/pcap/mpr_out/ipv4_cipso_option_sip_stream.mpr
trunk/tests/pcap/mpr_out/ipv4_cipso_option_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/ipv4_cipso_option_time-aggreg.mpr
trunk/tests/pcap/mpr_out/ipv4_cipso_option_trans_layer.mpr
trunk/tests/pcap/mpr_out/sample_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/sample_all_info.mpr
trunk/tests/pcap/mpr_out/sample_app_layer.mpr
trunk/tests/pcap/mpr_out/sample_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/sample_config.mpr
trunk/tests/pcap/mpr_out/sample_ignore.mpr
trunk/tests/pcap/mpr_out/sample_link_layer.mpr
trunk/tests/pcap/mpr_out/sample_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/sample_mix.mpr
trunk/tests/pcap/mpr_out/sample_net_layer.mpr
trunk/tests/pcap/mpr_out/sample_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/sample_relative_time.mpr
trunk/tests/pcap/mpr_out/sample_sip_stream.mpr
trunk/tests/pcap/mpr_out/sample_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/sample_time-aggreg.mpr
trunk/tests/pcap/mpr_out/sample_trans_layer.mpr
trunk/tests/pcap/mpr_out/sip_call_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_call_all_info.mpr
trunk/tests/pcap/mpr_out/sip_call_app_layer.mpr
trunk/tests/pcap/mpr_out/sip_call_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_call_config.mpr
trunk/tests/pcap/mpr_out/sip_call_ignore.mpr
trunk/tests/pcap/mpr_out/sip_call_link_layer.mpr
trunk/tests/pcap/mpr_out/sip_call_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_call_mix.mpr
trunk/tests/pcap/mpr_out/sip_call_net_layer.mpr
trunk/tests/pcap/mpr_out/sip_call_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_call_relative_time.mpr
trunk/tests/pcap/mpr_out/sip_call_sip_stream.mpr
trunk/tests/pcap/mpr_out/sip_call_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/sip_call_time-aggreg.mpr
trunk/tests/pcap/mpr_out/sip_call_trans_layer.mpr
trunk/tests/pcap/mpr_out/sip_example_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_example_all_info.mpr
trunk/tests/pcap/mpr_out/sip_example_app_layer.mpr
trunk/tests/pcap/mpr_out/sip_example_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_example_config.mpr
trunk/tests/pcap/mpr_out/sip_example_ignore.mpr
trunk/tests/pcap/mpr_out/sip_example_link_layer.mpr
trunk/tests/pcap/mpr_out/sip_example_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_example_mix.mpr
trunk/tests/pcap/mpr_out/sip_example_net_layer.mpr
trunk/tests/pcap/mpr_out/sip_example_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_example_relative_time.mpr
trunk/tests/pcap/mpr_out/sip_example_sip_stream.mpr
trunk/tests/pcap/mpr_out/sip_example_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/sip_example_time-aggreg.mpr
trunk/tests/pcap/mpr_out/sip_example_trans_layer.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part1_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part1_all_info.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part1_app_layer.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part1_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part1_config.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part1_ignore.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part1_link_layer.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part1_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part1_mix.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part1_net_layer.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part1_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part1_relative_time.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part1_sip_stream.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part1_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part1_time-aggreg.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part1_trans_layer.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part2_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part2_all_info.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part2_app_layer.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part2_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part2_config.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part2_ignore.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part2_link_layer.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part2_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part2_mix.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part2_net_layer.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part2_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part2_relative_time.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part2_sip_stream.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part2_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part2_time-aggreg.mpr
trunk/tests/pcap/mpr_out/sip_rtp_part2_trans_layer.mpr
trunk/tests/pcap/mpr_out/sip_rtp_sample_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_rtp_sample_all_info.mpr
trunk/tests/pcap/mpr_out/sip_rtp_sample_app_layer.mpr
trunk/tests/pcap/mpr_out/sip_rtp_sample_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_rtp_sample_config.mpr
trunk/tests/pcap/mpr_out/sip_rtp_sample_ignore.mpr
trunk/tests/pcap/mpr_out/sip_rtp_sample_link_layer.mpr
trunk/tests/pcap/mpr_out/sip_rtp_sample_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_rtp_sample_mix.mpr
trunk/tests/pcap/mpr_out/sip_rtp_sample_net_layer.mpr
trunk/tests/pcap/mpr_out/sip_rtp_sample_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_rtp_sample_relative_time.mpr
trunk/tests/pcap/mpr_out/sip_rtp_sample_sip_stream.mpr
trunk/tests/pcap/mpr_out/sip_rtp_sample_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/sip_rtp_sample_time-aggreg.mpr
trunk/tests/pcap/mpr_out/sip_rtp_sample_trans_layer.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part1_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part1_all_info.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part1_app_layer.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part1_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part1_config.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part1_ignore.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part1_link_layer.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part1_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part1_mix.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part1_net_layer.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part1_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part1_relative_time.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part1_sip_stream.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part1_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part1_time-aggreg.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part1_trans_layer.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part2_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part2_all_info.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part2_app_layer.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part2_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part2_config.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part2_ignore.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part2_link_layer.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part2_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part2_mix.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part2_net_layer.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part2_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part2_relative_time.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part2_sip_stream.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part2_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part2_time-aggreg.mpr
trunk/tests/pcap/mpr_out/skypeIRC_part2_trans_layer.mpr
trunk/tests/pcap/mpr_out/smtp_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/smtp_all_info.mpr
trunk/tests/pcap/mpr_out/smtp_app_layer.mpr
trunk/tests/pcap/mpr_out/smtp_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/smtp_config.mpr
trunk/tests/pcap/mpr_out/smtp_ignore.mpr
trunk/tests/pcap/mpr_out/smtp_link_layer.mpr
trunk/tests/pcap/mpr_out/smtp_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/smtp_mix.mpr
trunk/tests/pcap/mpr_out/smtp_net_layer.mpr
trunk/tests/pcap/mpr_out/smtp_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/smtp_relative_time.mpr
trunk/tests/pcap/mpr_out/smtp_sip_stream.mpr
trunk/tests/pcap/mpr_out/smtp_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/smtp_time-aggreg.mpr
trunk/tests/pcap/mpr_out/smtp_trans_layer.mpr
trunk/tests/pcap/mpr_out/tcp_ecn_sample_part1_mix.mpr
trunk/tests/pcap/mpr_out/tcp_ecn_sample_part1_relative_time.mpr
trunk/tests/pcap/mpr_out/tcp_ecn_sample_part1_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/tcp_ecn_sample_part2_mix.mpr
trunk/tests/pcap/mpr_out/tcp_ecn_sample_part2_relative_time.mpr
trunk/tests/pcap/mpr_out/tcp_ecn_sample_part2_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part1_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part1_all_info.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part1_app_layer.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part1_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part1_config.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part1_ignore.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part1_link_layer.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part1_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part1_mix.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part1_net_layer.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part1_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part1_relative_time.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part1_sip_stream.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part1_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part1_time-aggreg.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part1_trans_layer.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part2_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part2_all_info.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part2_app_layer.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part2_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part2_config.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part2_ignore.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part2_link_layer.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part2_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part2_mix.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part2_net_layer.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part2_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part2_relative_time.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part2_sip_stream.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part2_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part2_time-aggreg.mpr
trunk/tests/pcap/mpr_out/telnet_raw_part2_trans_layer.mpr
trunk/tests/pcap/mpr_out/v6-http_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/v6-http_all_info.mpr
trunk/tests/pcap/mpr_out/v6-http_app_layer.mpr
trunk/tests/pcap/mpr_out/v6-http_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/v6-http_config.mpr
trunk/tests/pcap/mpr_out/v6-http_ignore.mpr
trunk/tests/pcap/mpr_out/v6-http_link_layer.mpr
trunk/tests/pcap/mpr_out/v6-http_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/v6-http_mix.mpr
trunk/tests/pcap/mpr_out/v6-http_net_layer.mpr
trunk/tests/pcap/mpr_out/v6-http_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/v6-http_relative_time.mpr
trunk/tests/pcap/mpr_out/v6-http_sip_stream.mpr
trunk/tests/pcap/mpr_out/v6-http_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/v6-http_time-aggreg.mpr
trunk/tests/pcap/mpr_out/v6-http_trans_layer.mpr
trunk/tests/pcap/mpr_out/v6_part1_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/v6_part1_all_info.mpr
trunk/tests/pcap/mpr_out/v6_part1_app_layer.mpr
trunk/tests/pcap/mpr_out/v6_part1_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/v6_part1_config.mpr
trunk/tests/pcap/mpr_out/v6_part1_ignore.mpr
trunk/tests/pcap/mpr_out/v6_part1_link_layer.mpr
trunk/tests/pcap/mpr_out/v6_part1_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/v6_part1_mix.mpr
trunk/tests/pcap/mpr_out/v6_part1_net_layer.mpr
trunk/tests/pcap/mpr_out/v6_part1_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/v6_part1_relative_time.mpr
trunk/tests/pcap/mpr_out/v6_part1_sip_stream.mpr
trunk/tests/pcap/mpr_out/v6_part1_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/v6_part1_time-aggreg.mpr
trunk/tests/pcap/mpr_out/v6_part1_trans_layer.mpr
trunk/tests/pcap/mpr_out/v6_part2_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/v6_part2_all_info.mpr
trunk/tests/pcap/mpr_out/v6_part2_app_layer.mpr
trunk/tests/pcap/mpr_out/v6_part2_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/v6_part2_config.mpr
trunk/tests/pcap/mpr_out/v6_part2_ignore.mpr
trunk/tests/pcap/mpr_out/v6_part2_link_layer.mpr
trunk/tests/pcap/mpr_out/v6_part2_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/v6_part2_mix.mpr
trunk/tests/pcap/mpr_out/v6_part2_net_layer.mpr
trunk/tests/pcap/mpr_out/v6_part2_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/v6_part2_relative_time.mpr
trunk/tests/pcap/mpr_out/v6_part2_sip_stream.mpr
trunk/tests/pcap/mpr_out/v6_part2_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/v6_part2_time-aggreg.mpr
trunk/tests/pcap/mpr_out/v6_part2_trans_layer.mpr
Added Paths:
-----------
trunk/tests/pcap/mpr_out/rarp_request_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/rarp_request_all_info.mpr
trunk/tests/pcap/mpr_out/rarp_request_app_layer.mpr
trunk/tests/pcap/mpr_out/rarp_request_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/rarp_request_config.mpr
trunk/tests/pcap/mpr_out/rarp_request_ignore.mpr
trunk/tests/pcap/mpr_out/rarp_request_link_layer.mpr
trunk/tests/pcap/mpr_out/rarp_request_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/rarp_request_mix.mpr
trunk/tests/pcap/mpr_out/rarp_request_net_layer.mpr
trunk/tests/pcap/mpr_out/rarp_request_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/rarp_request_relative_time.mpr
trunk/tests/pcap/mpr_out/rarp_request_sip_stream.mpr
trunk/tests/pcap/mpr_out/rarp_request_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/rarp_request_time-aggreg.mpr
trunk/tests/pcap/mpr_out/rarp_request_trans_layer.mpr
trunk/tests/pcap/mpr_out/sip_rtp_all_eq_packets_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_rtp_all_info.mpr
trunk/tests/pcap/mpr_out/sip_rtp_app_layer.mpr
trunk/tests/pcap/mpr_out/sip_rtp_bw_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_rtp_config.mpr
trunk/tests/pcap/mpr_out/sip_rtp_ignore.mpr
trunk/tests/pcap/mpr_out/sip_rtp_link_layer.mpr
trunk/tests/pcap/mpr_out/sip_rtp_lst_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_rtp_mix.mpr
trunk/tests/pcap/mpr_out/sip_rtp_net_layer.mpr
trunk/tests/pcap/mpr_out/sip_rtp_ow_con_com_aggreg.mpr
trunk/tests/pcap/mpr_out/sip_rtp_relative_time.mpr
trunk/tests/pcap/mpr_out/sip_rtp_sip_stream.mpr
trunk/tests/pcap/mpr_out/sip_rtp_tcp_http_reasembly.mpr
trunk/tests/pcap/mpr_out/sip_rtp_time-aggreg.mpr
trunk/tests/pcap/mpr_out/sip_rtp_trans_layer.mpr
trunk/tests/pcap/pcap_in/rarp_request.pcap
trunk/tests/pcap/pcap_in/sip_rtp.pcap
Modified: trunk/src/data/pcap/aggreg_handler.cpp
===================================================================
--- trunk/src/data/pcap/aggreg_handler.cpp 2013-05-08 17:51:47 UTC (rev 1750)
+++ trunk/src/data/pcap/aggreg_handler.cpp 2013-05-11 22:36:05 UTC (rev 1751)
@@ -229,7 +229,7 @@
}
return result;
- case CBW_AGGR : // full duplex -> bind the CONTINOUS communication between two nodes together
+ case CBW_AGGR : // full duplex -> bind the CONTINUOUS communication between two nodes together
interrupted = active_com_interrupt(default_id,false);
if(!interrupted.empty()) // interrupt active communications
@@ -289,7 +289,7 @@
if((it = active_aggregations.find(default_id)) != active_aggregations.end())
{
if(flow_data.http_msg->is_segment) // if its segment, update last values
- it->second.update_id_time_data(pkt_id,time,flow_data.data_size);
+ it->second.update_id_time_data(pkt_id,time,flow_data.data_size,smart_label);
add_to_defer_msg(it);
active_aggregations.erase(it);
@@ -306,7 +306,7 @@
{
if((it = active_aggregations.find(default_id)) != active_aggregations.end()) // communication already
{
- it->second.update_id_time_data(pkt_id,time,flow_data.data_size);
+ it->second.update_id_time_data(pkt_id,time,flow_data.data_size,smart_label);
}
else
{
@@ -320,7 +320,7 @@
{
if((it = active_aggregations.find(default_id)) != active_aggregations.end()) // communication already
{
- it->second.update_id_time_data(pkt_id,time,flow_data.data_size);
+ it->second.update_id_time_data(pkt_id,time,flow_data.data_size,smart_label);
}
else
{
@@ -372,4 +372,4 @@
}
default : return result;
}
-}
\ No newline at end of file
+}
Modified: trunk/src/data/pcap/aggregation_formats.cpp
===================================================================
--- trunk/src/data/pcap/aggregation_formats.cpp 2013-05-08 17:51:47 UTC (rev 1750)
+++ trunk/src/data/pcap/aggregation_formats.cpp 2013-05-11 22:36:05 UTC (rev 1751)
@@ -167,12 +167,16 @@
return times;
}
-void AggregStatisitcs::update_id_time_data(int id,double time,u_short size)
+void AggregStatisitcs::update_id_time_data(int id,double time,u_short size,std::string label)
{
ids.second = id;
times.second = time;
packet_count++;
data_size += size;
+ if(label != "")
+ {
+ smart_label = label;
+ }
}
std::string AggregStatisitcs::get_smart_label()
Modified: trunk/src/data/pcap/aggregation_formats.h
===================================================================
--- trunk/src/data/pcap/aggregation_formats.h 2013-05-08 17:51:47 UTC (rev 1750)
+++ trunk/src/data/pcap/aggregation_formats.h 2013-05-11 22:36:05 UTC (rev 1751)
@@ -266,7 +266,7 @@
/**
* Update statistics with last packets number, time and size
*/
- void update_id_time_data(int last_packet,double time,u_short size);
+ void update_id_time_data(int last_packet,double time,u_short size,std::string label = "");
/**
* Smart label is label put in this class via Constructor.
Modified: trunk/src/data/pcap/application_layer.cpp
===================================================================
--- trunk/src/data/pcap/application_layer.cpp 2013-05-08 17:51:47 UTC (rev 1750)
+++ trunk/src/data/pcap/application_layer.cpp 2013-05-11 22:36:05 UTC (rev 1751)
@@ -276,7 +276,7 @@
m->is_segment = is_segment = (!erno && ((is_new_packet && !m->message_complete) || (!is_new_packet)));
// set state for http flow
- if(http_settings->show_packet_part)
+ if(http_settings->show_packet_part || http_settings->reassembly)
{
set_http_part(m,is_segment);
}
@@ -344,7 +344,7 @@
}
else
{
- if(http_settings->show_packet_part)
+ if(http_settings->show_packet_part || http_settings->reassembly)
{
ss << http_part_names[m->part] << " ";
}
Modified: trunk/src/data/pcap/pcap_handler.cpp
===================================================================
--- trunk/src/data/pcap/pcap_handler.cpp 2013-05-08 17:51:47 UTC (rev 1750)
+++ trunk/src/data/pcap/pcap_handler.cpp 2013-05-11 22:36:05 UTC (rev 1751)
@@ -134,7 +134,7 @@
// set interval
MscTimeIntervalSet<double> new_rel_interval;
- new_rel_interval.insert(MscTimeInterval<double>(time - abs_last_time));
+ new_rel_interval.insert(MscTimeInterval<double>(settings->round_double(time - abs_last_time)));
TimeRelationEventPtr rel = new TimeRelationEvent(new_rel_interval);
rel->glue_events(prev_e.get(),new_e.get());
Modified: trunk/src/data/pcap/pcap_settings.cpp
===================================================================
--- trunk/src/data/pcap/pcap_settings.cpp 2013-05-08 17:51:47 UTC (rev 1750)
+++ trunk/src/data/pcap/pcap_settings.cpp 2013-05-11 22:36:05 UTC (rev 1751)
@@ -46,11 +46,24 @@
case SECONDS: pom = ts.tv_sec + (double)ts.tv_usec/1000000; result = round(pom,6); break;
case MILISECONDS: pom = ts.tv_sec*1000 + (double)ts.tv_usec/1000; result = round(pom,3); break;
case MICROSECONDS: pom = ts.tv_sec*1000000 + (double)ts.tv_usec; result = pom; break;
- default: result = 0; break; // NOTE: result = 0; just to assign something reasonable, in fact the function return result unitialized
+ default: result = 0; break;
}
return result;
}
+double PcapSettings::round_double(double time)
+{
+ switch(time_unit)
+ {
+ case SECONDS: return round(time,6);
+ case MILISECONDS: return round(time,3);
+ case MICROSECONDS: return round(time,0);
+ default: return time;
+ }
+ return time;
+}
+
+
double PcapSettings::bytes_to_user_unit(u_short bytes)
{
double result;
Modified: trunk/src/data/pcap/pcap_settings.h
===================================================================
--- trunk/src/data/pcap/pcap_settings.h 2013-05-08 17:51:47 UTC (rev 1750)
+++ trunk/src/data/pcap/pcap_settings.h 2013-05-11 22:36:05 UTC (rev 1751)
@@ -218,11 +218,16 @@
double bytes_to_user_unit(u_short bytes);
/**
- * Return timeval value in double format
+ * Return timeval value in rounded double format
*/
double timeval_to_double(timeval ts);
/**
+ * Return double rounded by time unit (added for relative times)
+ */
+ double round_double(double time);
+
+ /**
* Check if there is active aggregation or reassembling
*/
bool is_aggregation_active();
Modified: trunk/tests/pcap/CMakeLists.txt
===================================================================
--- trunk/tests/pcap/CMakeLists.txt 2013-05-08 17:51:47 UTC (rev 1750)
+++ trunk/tests/pcap/CMakeLists.txt 2013-05-11 22:36:05 UTC (rev 1751)
@@ -21,9 +21,11 @@
ADD_PCAP_TEST(all_eq_packets_aggreg.ini http.pcap 1)
ADD_PCAP_TEST(all_eq_packets_aggreg.ini http_gzip.pcap 1)
ADD_PCAP_TEST(all_eq_packets_aggreg.ini ipv4_cipso_option.pcap 1)
+ADD_PCAP_TEST(all_eq_packets_aggreg.ini rarp_request.pcap 1)
ADD_PCAP_TEST(all_eq_packets_aggreg.ini sample.pcap 1)
ADD_PCAP_TEST(all_eq_packets_aggreg.ini sip_call.pcap 1)
ADD_PCAP_TEST(all_eq_packets_aggreg.ini sip_example.pcap 1)
+ADD_PCAP_TEST(all_eq_packets_aggreg.ini sip_rtp.pcap 1)
ADD_PCAP_TEST(all_eq_packets_aggreg.ini sip_rtp_part1.pcap 1)
ADD_PCAP_TEST(all_eq_packets_aggreg.ini sip_rtp_part2.pcap 1)
ADD_PCAP_TEST(all_eq_packets_aggreg.ini sip_rtp_sample.pcap 1)
@@ -46,9 +48,11 @@
ADD_PCAP_TEST(all_info.ini http.pcap 1)
ADD_PCAP_TEST(all_info.ini http_gzip.pcap 1)
ADD_PCAP_TEST(all_info.ini ipv4_cipso_option.pcap 1)
+ADD_PCAP_TEST(all_info.ini rarp_request.pcap 1)
ADD_PCAP_TEST(all_info.ini sample.pcap 1)
ADD_PCAP_TEST(all_info.ini sip_call.pcap 1)
ADD_PCAP_TEST(all_info.ini sip_example.pcap 1)
+ADD_PCAP_TEST(all_info.ini sip_rtp.pcap 1)
ADD_PCAP_TEST(all_info.ini sip_rtp_part1.pcap 1)
ADD_PCAP_TEST(all_info.ini sip_rtp_part2.pcap 1)
ADD_PCAP_TEST(all_info.ini sip_rtp_sample.pcap 1)
@@ -71,9 +75,11 @@
ADD_PCAP_TEST(app_layer.ini http.pcap 1)
ADD_PCAP_TEST(app_layer.ini http_gzip.pcap 1)
ADD_PCAP_TEST(app_layer.ini ipv4_cipso_option.pcap 1)
+ADD_PCAP_TEST(app_layer.ini rarp_request.pcap 1)
ADD_PCAP_TEST(app_layer.ini sample.pcap 1)
ADD_PCAP_TEST(app_layer.ini sip_call.pcap 1)
ADD_PCAP_TEST(app_layer.ini sip_example.pcap 1)
+ADD_PCAP_TEST(app_layer.ini sip_rtp.pcap 1)
ADD_PCAP_TEST(app_layer.ini sip_rtp_part1.pcap 1)
ADD_PCAP_TEST(app_layer.ini sip_rtp_part2.pcap 1)
ADD_PCAP_TEST(app_layer.ini sip_rtp_sample.pcap 1)
@@ -96,9 +102,11 @@
ADD_PCAP_TEST(bw_con_com_aggreg.ini http.pcap 1)
ADD_PCAP_TEST(bw_con_com_aggreg.ini http_gzip.pcap 1)
ADD_PCAP_TEST(bw_con_com_aggreg.ini ipv4_cipso_option.pcap 1)
+ADD_PCAP_TEST(bw_con_com_aggreg.ini rarp_request.pcap 1)
ADD_PCAP_TEST(bw_con_com_aggreg.ini sample.pcap 1)
ADD_PCAP_TEST(bw_con_com_aggreg.ini sip_call.pcap 1)
ADD_PCAP_TEST(bw_con_com_aggreg.ini sip_example.pcap 1)
+ADD_PCAP_TEST(bw_con_com_aggreg.ini sip_rtp.pcap 1)
ADD_PCAP_TEST(bw_con_com_aggreg.ini sip_rtp_part1.pcap 1)
ADD_PCAP_TEST(bw_con_com_aggreg.ini sip_rtp_part2.pcap 1)
ADD_PCAP_TEST(bw_con_com_aggreg.ini sip_rtp_sample.pcap 1)
@@ -121,9 +129,11 @@
ADD_PCAP_TEST(config.ini http.pcap 1)
ADD_PCAP_TEST(config.ini http_gzip.pcap 1)
ADD_PCAP_TEST(config.ini ipv4_cipso_option.pcap 1)
+ADD_PCAP_TEST(config.ini rarp_request.pcap 1)
A...
[truncated message content] |
|
From: <xf...@us...> - 2013-05-16 11:35:52
|
Revision: 1752
http://sourceforge.net/p/scstudio/code/1752
Author: xfarmad
Date: 2013-05-16 11:35:48 +0000 (Thu, 16 May 2013)
Log Message:
-----------
ExportTex adjustments
Modified Paths:
--------------
trunk/src/data/exporttex/exportTex.cpp
trunk/src/data/exporttex/exportTex.h
trunk/tests/exporttex_position_test/exporttex_position_test.cpp
trunk/tests/exporttex_test/exporttex_test.cpp
Modified: trunk/src/data/exporttex/exportTex.cpp
===================================================================
--- trunk/src/data/exporttex/exportTex.cpp 2013-05-11 22:36:05 UTC (rev 1751)
+++ trunk/src/data/exporttex/exportTex.cpp 2013-05-16 11:35:48 UTC (rev 1752)
@@ -434,19 +434,16 @@
m_stream << m_slope_size_map.printLength(sendY,receiveY,true);
m_stream << "\\mess{" << ExportTex::print_wchar(complete_message->get_label())
<< "}{"<< m_instance_id_map.get_id(inst_pos(complete_message->get_sender())) << "_inst}[0.3]{"
- << m_instance_id_map.get_id(inst_pos(complete_message->get_receiver())) << "_inst}";
- if(!Compare::equal(sendY,receiveY))
+ << m_instance_id_map.get_id(inst_pos(complete_message->get_receiver())) << "_inst}";
+ if(Compare::compare(sendY,receiveY,true))
{
- if(Compare::compare(sendY,receiveY))
- {
- m_stream << "[1]";
- }
- else
- {
- m_stream << "[-1]";
- }
- findCoregionPadding(complete_message->get_send_event(),complete_message->get_receive_event());
+ m_stream << "[1]";
}
+ else
+ {
+ m_stream << "[-1]";
+ }
+ findCoregionPadding(complete_message->get_send_event(),complete_message->get_receive_event());
m_stream << std::endl;
}
}
@@ -734,13 +731,13 @@
Coordinate get_enviroment_dist()
{
- /* Default no frame in drawn and to avoid big padding only left padding is tooken
+ // Default no frame in drawn and to avoid big padding only left padding is tooken
if(fabs(m_left_most_point-m_left_most_instance->get_line_begin().get_x()) < fabs(m_right_most_point-m_right_most_instance->get_line_begin().get_x()))
return Compare::round(fabs(m_right_most_point-m_right_most_instance->get_line_begin().get_x())+10);
else
return Compare::round(fabs(m_left_most_point-m_left_most_instance->get_line_begin().get_x())+10);
- */
- return Compare::round(fabs(m_left_most_point-m_left_most_instance->get_line_begin().get_x())+10);
+
+ //return Compare::round(fabs(m_left_most_point-m_left_most_instance->get_line_begin().get_x())+10);
}
void print_configuration_header()
@@ -892,7 +889,17 @@
for(CommentPtrSet::const_iterator cpos = event->get_comments().begin();
cpos != event->get_comments().end(); cpos++)
{
- edge_point((*cpos)->get_position().get_x(),(*cpos)->get_width());
+ //find out on which side comment is
+ if( (*cpos)->get_position().get_x() > event->get_instance()->get_line_begin().get_x() )
+ {
+ //right
+ edge_point((*cpos)->get_position().get_x()+(*cpos)->get_width());
+ }
+ else
+ {
+ //left
+ edge_point((*cpos)->get_position().get_x()-(*cpos)->get_width());
+ }
m_comment_width_map.addDistance( event->get_instance()->get_line_begin().get_x(), (*cpos)->get_position().get_x(),true);
m_comment_slope_map.addDistance((*cpos)->get_position().get_y(),coor);
}
@@ -1131,6 +1138,11 @@
break;
}
+ if( level_type == COREGION_AREA_FIRST_LEVEL)
+ {
+ continue;
+ }
+
MessageEventPtr event = boost::dynamic_pointer_cast<MessageEvent>(*it_ptr_list);
if(event!=NULL)
{
Modified: trunk/src/data/exporttex/exportTex.h
===================================================================
--- trunk/src/data/exporttex/exportTex.h 2013-05-11 22:36:05 UTC (rev 1751)
+++ trunk/src/data/exporttex/exportTex.h 2013-05-16 11:35:48 UTC (rev 1752)
@@ -24,7 +24,7 @@
-#define EPSILON 0.5
+#define EPSILON 0.1
class Compare
{
public:
Modified: trunk/tests/exporttex_position_test/exporttex_position_test.cpp
===================================================================
--- trunk/tests/exporttex_position_test/exporttex_position_test.cpp 2013-05-11 22:36:05 UTC (rev 1751)
+++ trunk/tests/exporttex_position_test/exporttex_position_test.cpp 2013-05-16 11:35:48 UTC (rev 1752)
@@ -11,9 +11,9 @@
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
- * Copyright (c) 2009 Adrian Farmadin <a.f...@gm...>
+ * Copyright (c) 2012 Adrian Farmadin <a.f...@gm...>
*
- * $Id: z120_test.cpp 1274 2012-01-10 15:49:30Z lkorenciak $
+ * $Id: exporttex_position_test.cpp 1274 2012-01-10 15:49:30Z lkorenciak $
*/
#include <string.h>
Modified: trunk/tests/exporttex_test/exporttex_test.cpp
===================================================================
--- trunk/tests/exporttex_test/exporttex_test.cpp 2013-05-11 22:36:05 UTC (rev 1751)
+++ trunk/tests/exporttex_test/exporttex_test.cpp 2013-05-16 11:35:48 UTC (rev 1752)
@@ -11,9 +11,9 @@
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
- * Copyright (c) 2009 Petr Gotthard <pet...@ce...>
+ * Copyright (c) 2012 Adrian Farmadin <a.f...@gm...>
*
- * $Id: z120_test.cpp 1274 2012-01-10 15:49:30Z lkorenciak $
+ * $Id: exporttex_test.cpp 1274 2012-01-10 15:49:30Z lkorenciak $
*/
#include <string.h>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <xf...@us...> - 2013-05-16 12:27:19
|
Revision: 1753
http://sourceforge.net/p/scstudio/code/1753
Author: xfarmad
Date: 2013-05-16 12:27:16 +0000 (Thu, 16 May 2013)
Log Message:
-----------
New result for exporttex
Modified Paths:
--------------
trunk/CMakeLists.txt
trunk/tests/exporttex_position_test/exporttex_position_test.tex.result
trunk/tests/exporttex_test/CMakeLists.txt
trunk/tests/exporttex_test/exporttex_test00.tex.result
trunk/tests/exporttex_test/exporttex_test01.tex.result
trunk/tests/exporttex_test/exporttex_test03.tex.result
trunk/tests/exporttex_test/exporttex_test05.tex.result
trunk/tests/exporttex_test/exporttex_test06.tex.result
trunk/tests/exporttex_test/exporttex_test07.tex.result
trunk/tests/exporttex_test/exporttex_test08.tex.result
trunk/tests/exporttex_test/exporttex_test10.tex.result
trunk/tests/exporttex_test/exporttex_test11.tex.result
trunk/tests/exporttex_test/exporttex_test13.tex.result
trunk/tests/exporttex_test/exporttex_test15.tex.result
trunk/tests/exporttex_test/exporttex_test16.tex.result
trunk/tests/exporttex_test/exporttex_test17.tex.result
trunk/tests/exporttex_test/exporttex_test18.tex.result
trunk/tests/exporttex_test/exporttex_test19.tex.result
trunk/tests/exporttex_test/exporttex_test20.tex.result
trunk/tests/exporttex_test/exporttex_test21.tex.result
trunk/tests/exporttex_test/exporttex_test25.tex.result
trunk/tests/exporttex_test/exporttex_test26.tex.result
trunk/tests/exporttex_test/exporttex_test32.tex.result
trunk/tests/exporttex_test/exporttex_test33.tex.result
trunk/tests/exporttex_test/exporttex_test34.tex.result
trunk/tests/exporttex_test/exporttex_test35.tex.result
trunk/tests/exporttex_test/exporttex_test36.tex.result
trunk/tests/exporttex_test/exporttex_test37.tex.result
trunk/tests/exporttex_test/exporttex_test38.tex.result
trunk/tests/exporttex_test/exporttex_test40.tex.result
trunk/tests/exporttex_test/exporttex_test42.tex.result
trunk/tests/exporttex_test/exporttex_test45.tex.result
trunk/tests/exporttex_test/exporttex_test47.tex.result
trunk/tests/exporttex_test/exporttex_test51.tex.result
trunk/tests/exporttex_test/exporttex_test53.tex.result
trunk/tests/exporttex_test/exporttex_test54.tex.result
trunk/tests/exporttex_test/exporttex_test55.tex.result
trunk/tests/exporttex_test/exporttex_test58.tex.result
trunk/tests/exporttex_test/exporttex_test59.tex.result
trunk/tests/exporttex_test/exporttex_test60.tex.result
trunk/tests/exporttex_test/exporttex_test61.tex.result
trunk/tests/exporttex_test/exporttex_test64.tex.result
trunk/tests/exporttex_test/exporttex_test65.tex.result
trunk/tests/exporttex_test/exporttex_test66.tex.result
trunk/tests/exporttex_test/exporttex_test67.tex.result
trunk/tests/exporttex_test/exporttex_test68.tex.result
trunk/tests/exporttex_test/exporttex_test69.tex.result
trunk/tests/exporttex_test/exporttex_test70.tex.result
trunk/tests/exporttex_test/exporttex_test72.tex.result
trunk/tests/exporttex_test/exporttex_test73.tex.result
trunk/tests/exporttex_test/exporttex_test74.tex.result
trunk/tests/exporttex_test/exporttex_test76.tex.result
trunk/tests/exporttex_test/exporttex_test77.tex.result
trunk/tests/exporttex_test/exporttex_test79.tex.result
trunk/tests/exporttex_test/exporttex_test84.tex.result
trunk/tests/exporttex_test/exporttex_test85.tex.result
trunk/tests/exporttex_test/exporttex_test86.tex.result
trunk/tests/exporttex_test/exporttex_test88.tex.result
trunk/tests/exporttex_test/exporttex_test89.tex.result
trunk/tests/exporttex_test/exporttex_test90.tex.result
trunk/tests/exporttex_test/exporttex_test92.tex.result
trunk/tests/exporttex_test/exporttex_test93.tex.result
trunk/tests/exporttex_test/exporttex_time01.tex.result
trunk/tests/exporttex_test/exporttex_time02.tex.result
trunk/tests/exporttex_test/exporttex_time03.tex.result
trunk/tests/exporttex_test/exporttex_time04.tex.result
trunk/tests/exporttex_test/exporttex_time05.tex.result
trunk/tests/exporttex_test/exporttex_time06.tex.result
trunk/tests/exporttex_test/exporttex_time07.tex.result
trunk/tests/exporttex_test/exporttex_time08.tex.result
trunk/tests/exporttex_test/exporttex_time09.tex.result
trunk/tests/exporttex_test/exporttex_time10.tex.result
trunk/tests/exporttex_test/exporttex_time11.tex.result
trunk/tests/exporttex_test/exporttex_time12.tex.result
trunk/tests/exporttex_test/exporttex_time19.tex.result
trunk/tests/exporttex_test/exporttex_time22.tex.result
trunk/tests/exporttex_test/exporttex_time23.tex.result
trunk/tests/exporttex_test/exporttex_time24.tex.result
trunk/tests/exporttex_test/exporttex_time25.tex.result
trunk/tests/exporttex_test/exporttex_time26.tex.result
trunk/tests/exporttex_test/exporttex_time27.tex.result
trunk/tests/exporttex_test/exporttex_time28.tex.result
trunk/tests/exporttex_test/exporttex_time29.tex.result
trunk/tests/exporttex_test/exporttex_time30.tex.result
trunk/tests/exporttex_test/exporttex_time31.tex.result
trunk/tests/exporttex_test/exporttex_time32.tex.result
trunk/tests/exporttex_test/exporttex_time33.tex.result
trunk/tests/exporttex_test/exporttex_time34.tex.result
trunk/tests/exporttex_test/exporttex_time35.tex.result
trunk/tests/exporttex_test/exporttex_time36.tex.result
trunk/tests/exporttex_test/exporttex_time37.tex.result
trunk/tests/exporttex_test/exporttex_time38.tex.result
trunk/tests/exporttex_test/exporttex_time39.tex.result
trunk/tests/exporttex_test/exporttex_time40.tex.result
trunk/tests/exporttex_test/exporttex_time41.tex.result
trunk/tests/exporttex_test/exporttex_time42.tex.result
trunk/tests/exporttex_test/exporttex_time43.tex.result
trunk/tests/exporttex_test/exporttex_time44.tex.result
trunk/tests/exporttex_test/exporttex_time45.tex.result
trunk/tests/exporttex_test/exporttex_time46.tex.result
trunk/tests/exporttex_test/exporttex_time47.tex.result
trunk/tests/exporttex_test/exporttex_time48.tex.result
trunk/tests/exporttex_test/exporttex_time49.tex.result
Modified: trunk/CMakeLists.txt
===================================================================
--- trunk/CMakeLists.txt 2013-05-16 11:35:48 UTC (rev 1752)
+++ trunk/CMakeLists.txt 2013-05-16 12:27:16 UTC (rev 1753)
@@ -41,7 +41,7 @@
# Enforce strict ANSI C/C++ compliancy checking
IF(CMAKE_COMPILER_IS_GNUCXX)
- SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pedantic -ansi -Wall -Wno-long-long")
+ SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O0 -g -pedantic -ansi -Wall -Wno-long-long")
ENDIF(CMAKE_COMPILER_IS_GNUCXX)
# Disable microsoft security warnings
Modified: trunk/tests/exporttex_position_test/exporttex_position_test.tex.result
===================================================================
--- trunk/tests/exporttex_position_test/exporttex_position_test.tex.result 2013-05-16 11:35:48 UTC (rev 1752)
+++ trunk/tests/exporttex_position_test/exporttex_position_test.tex.result 2013-05-16 12:27:16 UTC (rev 1753)
@@ -178,47 +178,47 @@
\declinst{2_inst}{3}{}
\setlength{\levelheight}{\slopeA}
-\mess{hi1}{0_inst}[0.3]{1_inst}
+\mess{hi1}{0_inst}[0.3]{1_inst}[1]
\setlength{\levelheight}{\levelA}
\nextlevel
\setlength{\levelheight}{\slopeA}
-\mess{hi1}{0_inst}[0.3]{1_inst}
+\mess{hi1}{0_inst}[0.3]{1_inst}[1]
\setlength{\levelheight}{\levelA}
\nextlevel
\setlength{\levelheight}{\slopeA}
-\mess{hi1}{0_inst}[0.3]{2_inst}
+\mess{hi1}{0_inst}[0.3]{2_inst}[1]
\setlength{\levelheight}{\levelA}
\nextlevel
\setlength{\levelheight}{\slopeA}
-\mess{hi1}{2_inst}[0.3]{1_inst}
+\mess{hi1}{2_inst}[0.3]{1_inst}[1]
\setlength{\levelheight}{\levelA}
\nextlevel
\setlength{\levelheight}{\slopeA}
-\mess{hi1}{2_inst}[0.3]{0_inst}
+\mess{hi1}{2_inst}[0.3]{0_inst}[1]
\setlength{\levelheight}{\levelB}
\nextlevel
\setlength{\levelheight}{\slopeA}
-\mess{hi1}{0_inst}[0.3]{1_inst}
+\mess{hi1}{0_inst}[0.3]{1_inst}[1]
\setlength{\levelheight}{\levelC}
\nextlevel
\setlength{\levelheight}{\slopeA}
-\mess{hi1}{0_inst}[0.3]{1_inst}
+\mess{hi1}{0_inst}[0.3]{1_inst}[1]
\setlength{\levelheight}{\levelD}
\nextlevel
\setlength{\levelheight}{\slopeA}
-\mess{hi1}{0_inst}[0.3]{1_inst}
+\mess{hi1}{0_inst}[0.3]{1_inst}[1]
\setlength{\levelheight}{\levelA}
\nextlevel
\setlength{\levelheight}{\slopeA}
-\mess{hi1}{1_inst}[0.3]{2_inst}
+\mess{hi1}{1_inst}[0.3]{2_inst}[1]
\end{msc}
\newpage
\setmsckeyword{Simple slope test}
@@ -300,7 +300,7 @@
\declinst{1_inst}{2}{}
\setlength{\levelheight}{\slopeA}
-\mess{hi1}{0_inst}[0.3]{1_inst}
+\mess{hi1}{0_inst}[0.3]{1_inst}[1]
\setlength{\levelheight}{\levelA}
\nextlevel
@@ -334,7 +334,7 @@
\nextlevel
\setlength{\levelheight}{\slopeA}
-\mess{hi1}{0_inst}[0.3]{1_inst}
+\mess{hi1}{0_inst}[0.3]{1_inst}[1]
\setlength{\levelheight}{\levelB}
\nextlevel
@@ -447,7 +447,7 @@
\nextlevel
\setlength{\levelheight}{\slopeB}
-\mess{hi1}{0_inst}[0.3]{1_inst}
+\mess{hi1}{0_inst}[0.3]{1_inst}[1]
\setlength{\levelheight}{\levelB}
\nextlevel
@@ -534,7 +534,7 @@
\pgfsetlinewidth{0.4pt}
%%%% Picture box width:
-\setlength{\envinstdist}{37mm*\real{\mscScaleX}}
+\setlength{\envinstdist}{40mm*\real{\mscScaleX}}
%%%% Picture box y-padding:
\setlength{\topheaddist}{\topheaddist}
@@ -726,7 +726,7 @@
\measure[l]{[0,inf)}{0_inst}{0_inst}[1]
\measure[r]{[0,inf)}{0_inst}{0_inst}[1]
\setlength{\levelheight}{\slopeA}
-\mess{hi1}{0_inst}[0.3]{1_inst}
+\mess{hi1}{0_inst}[0.3]{1_inst}[1]
\setlength{\levelheight}{\timeIntervalSlopeA}
\measure[r]{[0,inf)}{1_inst}{1_inst}[1]
\nextlevel
@@ -735,13 +735,13 @@
\measure[l]{[0,inf)}{0_inst}[yes]{0_inst}[1]
\measure[r]{[0,inf)}{0_inst}{0_inst}[1]
\setlength{\levelheight}{\slopeA}
-\mess{hi1}{0_inst}[0.3]{1_inst}
+\mess{hi1}{0_inst}[0.3]{1_inst}[1]
\setlength{\levelheight}{\timeIntervalSlopeB}
\measure[l]{[0,inf)}{1_inst}{1_inst}[1]
\nextlevel
\setlength{\levelheight}{\slopeA}
-\mess{hi1}{0_inst}[0.3]{1_inst}
+\mess{hi1}{0_inst}[0.3]{1_inst}[1]
\setlength{\levelheight}{\timeIntervalSlopeC}
\measure[r]{[0,inf)}{1_inst}[yes]{1_inst}[-1]
\end{msc}
@@ -762,7 +762,7 @@
\pgfsetlinewidth{0.4pt}
%%%% Picture box width:
-\setlength{\envinstdist}{15mm*\real{\mscScaleX}}
+\setlength{\envinstdist}{25mm*\real{\mscScaleX}}
%%%% Picture box y-padding:
\setlength{\topheaddist}{\topheaddist}
@@ -950,7 +950,7 @@
\nextlevel
\setlength{\levelheight}{\slopeA}
-\mess{hi1}{0_inst}[0.3]{1_inst}
+\mess{hi1}{0_inst}[0.3]{1_inst}[1]
\setlength{\levelheight}{\levelA}
\nextlevel
@@ -965,7 +965,7 @@
\nextlevel
\setlength{\levelheight}{\slopeA}
-\mess{hi1}{1_inst}[0.3]{0_inst}
+\mess{hi1}{1_inst}[0.3]{0_inst}[1]
\setlength{\levelheight}{\levelC}
\nextlevel
@@ -984,7 +984,7 @@
\nextlevel
\setlength{\levelheight}{\slopeA}
-\mess{hi1}{1_inst}[0.3]{2_inst}
+\mess{hi1}{1_inst}[0.3]{2_inst}[1]
\setlength{\levelheight}{\levelA}
\nextlevel
@@ -1017,7 +1017,7 @@
\pgfsetlinewidth{0.4pt}
%%%% Picture box width:
-\setlength{\envinstdist}{30mm*\real{\mscScaleX}}
+\setlength{\envinstdist}{42mm*\real{\mscScaleX}}
%%%% Picture box y-padding:
\setlength{\topheaddist}{\topheaddist}
@@ -1089,7 +1089,7 @@
\setlength{\levelheight}{\commentSlopeA}
\msccomment{Comment}{0_inst}[-1]
\setlength{\levelheight}{\slopeA}
-\mess{hi1}{0_inst}[0.3]{1_inst}
+\mess{hi1}{0_inst}[0.3]{1_inst}[1]
\setlength{\msccommentdist}{\commentWidthC}
\setlength{\levelheight}{\commentSlopeC}
\msccomment[r]{Comment}{1_inst}[-1]
@@ -1100,7 +1100,7 @@
\setlength{\levelheight}{\commentSlopeB}
\msccomment{Comment}{0_inst}[-1]
\setlength{\levelheight}{\slopeA}
-\mess{hi1}{0_inst}[0.3]{1_inst}
+\mess{hi1}{0_inst}[0.3]{1_inst}[1]
\setlength{\msccommentdist}{\commentWidthB}
\setlength{\levelheight}{\commentSlopeD}
\msccomment[r]{Comment}{1_inst}[-1]
@@ -1122,7 +1122,7 @@
\pgfsetlinewidth{0.4pt}
%%%% Picture box width:
-\setlength{\envinstdist}{17mm*\real{\mscScaleX}}
+\setlength{\envinstdist}{22mm*\real{\mscScaleX}}
%%%% Picture box y-padding:
\setlength{\topheaddist}{\topheaddist}
@@ -1202,7 +1202,7 @@
\setlength{\markdist}{\absoluteTimeSlopeB}
\mscmark[bl]{@[0]}{0_inst}
\setlength{\levelheight}{\slopeA}
-\mess{hi1}{0_inst}[0.3]{1_inst}
+\mess{hi1}{0_inst}[0.3]{1_inst}[1]
\setlength{\selfmesswidth}{\absoluteTimeWidthD}
\setlength{\markdist}{\absoluteTimeSlopeE}
\mscmark[tr]{@[0]}{1_inst}
@@ -1219,7 +1219,7 @@
\setlength{\markdist}{\absoluteTimeSlopeD}
\mscmark[br]{@[0]}{0_inst}
\setlength{\levelheight}{\slopeA}
-\mess{hi1}{0_inst}[0.3]{1_inst}
+\mess{hi1}{0_inst}[0.3]{1_inst}[1]
\setlength{\selfmesswidth}{\absoluteTimeWidthF}
\setlength{\markdist}{\absoluteTimeSlopeB}
\mscmark[tl]{@[0]}{1_inst}
Modified: trunk/tests/exporttex_test/CMakeLists.txt
===================================================================
--- trunk/tests/exporttex_test/CMakeLists.txt 2013-05-16 11:35:48 UTC (rev 1752)
+++ trunk/tests/exporttex_test/CMakeLists.txt 2013-05-16 12:27:16 UTC (rev 1753)
@@ -1,283 +1,146 @@
FIND_PACKAGE(PythonInterp REQUIRED)
-
-
ADD_EXECUTABLE(exporttex_test
exporttex_test.cpp
)
-
-
TARGET_LINK_LIBRARIES(exporttex_test
sctex
scZ120
scbeautify
)
-
ADD_EXPORTTEX_TEST(exporttex_test00.mpr 1)
-
ADD_EXPORTTEX_TEST(exporttex_test01.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test02.mpr 1)
-
+ADD_EXPORTTEX_TEST(exporttex_test02.mpr 1)
ADD_EXPORTTEX_TEST(exporttex_test03.mpr 1)
-
ADD_EXPORTTEX_TEST(exporttex_test04.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test05.mpr 1)
-
+ADD_EXPORTTEX_TEST(exporttex_test05.mpr 1)
ADD_EXPORTTEX_TEST(exporttex_test06.mpr 1)
-
ADD_EXPORTTEX_TEST(exporttex_test07.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test08.mpr 1)
-
+ADD_EXPORTTEX_TEST(exporttex_test08.mpr 1)
ADD_EXPORTTEX_TEST(exporttex_test09.mpr 1)
-
ADD_EXPORTTEX_TEST(exporttex_test10.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test11.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test11.mpr 1)
ADD_EXPORTTEX_TEST(exporttex_test13.mpr 1)
-
ADD_EXPORTTEX_TEST(exporttex_test15.mpr 1)
-
ADD_EXPORTTEX_TEST(exporttex_test16.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test17.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test17.mpr 1)
ADD_EXPORTTEX_TEST(exporttex_test18.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test19.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test20.mpr 1)
-
+ADD_EXPORTTEX_TEST(exporttex_test19.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test20.mpr 1)
ADD_EXPORTTEX_TEST(exporttex_test21.mpr 1)
-
ADD_EXPORTTEX_TEST(exporttex_test22.mpr 1)
-
ADD_EXPORTTEX_TEST(exporttex_test23.mpr 1)
-
ADD_EXPORTTEX_TEST(exporttex_test24.mpr 1)
-
ADD_EXPORTTEX_TEST(exporttex_test25.mpr 1)
-
ADD_EXPORTTEX_TEST(exporttex_test26.mpr 1)
-
ADD_EXPORTTEX_TEST(exporttex_test27.mpr 1)
-
ADD_EXPORTTEX_TEST(exporttex_test28.mpr 1)
-
ADD_EXPORTTEX_TEST(exporttex_test29.mpr 1)
-
ADD_EXPORTTEX_TEST(exporttex_test30.mpr 1)
-
ADD_EXPORTTEX_TEST(exporttex_test31.mpr 1)
-
ADD_EXPORTTEX_TEST(exporttex_test32.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test33.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test34.mpr 1)
-
+ADD_EXPORTTEX_TEST(exporttex_test33.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test34.mpr 1)
ADD_EXPORTTEX_TEST(exporttex_test35.mpr 1)
-
ADD_EXPORTTEX_TEST(exporttex_test36.mpr 1)
-
ADD_EXPORTTEX_TEST(exporttex_test37.mpr 1)
-
ADD_EXPORTTEX_TEST(exporttex_test38.mpr 1)
-
ADD_EXPORTTEX_TEST(exporttex_test39.mpr 1)
-
ADD_EXPORTTEX_TEST(exporttex_test40.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test41.mpr 1)
-
+ADD_EXPORTTEX_TEST(exporttex_test41.mpr 1)
ADD_EXPORTTEX_TEST(exporttex_test42.mpr 1)
-
ADD_EXPORTTEX_TEST(exporttex_test45.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test47.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test49.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test50.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test51.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test52.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test53.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test54.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test55.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test56.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test58.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test59.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test60.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test61.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test62.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test63.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test64.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test65.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test66.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test67.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test68.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test69.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test70.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test72.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test73.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test74.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test75.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test76.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test77.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test78.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test79.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test80.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test81.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test82.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test83.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test84.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test85.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test86.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test87.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test88.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test89.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test90.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test92.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test93.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_test94.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time01.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time02.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time03.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time04.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time05.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time06.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time07.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time08.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time09.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time10.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time11.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time12.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time13.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time14.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time15.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time16.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time17.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time18.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time19.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time20.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time21.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time22.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time23.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time24.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time25.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time26.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time27.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time28.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time29.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time30.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time31.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time32.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time33.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time34.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time35.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time36.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time37.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time38.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time39.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time40.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time41.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time42.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time43.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time44.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time45.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time46.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time47.mpr 1)
-
-ADD_EXPORTTEX_TEST(exporttex_time48.mpr 1)
-
+ADD_EXPORTTEX_TEST(exporttex_test47.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test49.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test50.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test51.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test52.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test53.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test54.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test55.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test56.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test58.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test59.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test60.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test61.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test62.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test63.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test64.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test65.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test66.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test67.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test68.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test69.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test70.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test72.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test73.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test74.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test75.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test76.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test77.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test78.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test79.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test80.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test81.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test82.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test83.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test84.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test85.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test86.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test87.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test88.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test89.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test90.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test92.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test93.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_test94.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time01.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time02.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time03.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time04.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time05.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time06.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time07.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time08.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time09.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time10.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time11.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time12.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time13.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time14.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time15.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time16.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time17.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time18.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time19.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time20.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time21.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time22.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time23.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time24.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time25.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time26.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time27.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time28.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time29.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time30.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time31.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time32.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time33.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time34.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time35.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time36.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time37.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time38.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time39.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time40.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time41.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time42.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time43.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time44.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time45.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time46.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time47.mpr 1)
+ADD_EXPORTTEX_TEST(exporttex_time48.mpr 1)
ADD_EXPORTTEX_TEST(exporttex_time49.mpr 1)
Modified: trunk/tests/exporttex_test/exporttex_test00.tex.result
===================================================================
--- trunk/tests/exporttex_test/exporttex_test00.tex.result 2013-05-16 11:35:48 UTC (rev 1752)
+++ trunk/tests/exporttex_test/exporttex_test00.tex.result 2013-05-16 12:27:16 UTC (rev 1753)
@@ -106,7 +106,7 @@
\nextlevel
\setlength{\levelheight}{\slopeA}
-\mess{jedna}{0_inst}[0.3]{1_inst}
+\mess{jedna}{0_inst}[0.3]{1_inst}[1]
\setlength{\levelheight}{\levelA}
\nextlevel
@@ -114,7 +114,7 @@
\nextlevel
\setlength{\levelheight}{\slopeA}
-\mess{B1}{0_inst}[0.3]{1_inst}
+\mess{B1}{0_inst}[0.3]{1_inst}[1]
\lost[r]{B}{}{0_inst}
\setlength{\levelheight}{\coregionLastA}
\nextlevel
@@ -123,6 +123,6 @@
\nextlevel
\setlength{\levelheight}{\slopeA}
-\mess{jedna}{1_inst}[0.3]{0_inst}
+\mess{jedna}{1_inst}[0.3]{0_inst}[1]
\end{msc}
\end{document}
Modified: trunk/tests/exporttex_test/exporttex_test01.tex.result
===================================================================
--- trunk/tests/exporttex_test/exporttex_test01.tex.result 2013-05-16 11:35:48 UTC (rev 1752)
+++ trunk/tests/exporttex_test/exporttex_test01.tex.result 2013-05-16 12:27:16 UTC (rev 1753)
@@ -106,7 +106,7 @@
\nextlevel
\setlength{\levelheight}{\slopeB}
-\mess{NAME}{0_inst}[0.3]{1_inst}
+\mess{NAME}{0_inst}[0.3]{1_inst}[1]
\setlength{\levelheight}{\levelA}
\nextlevel
Modified: trunk/tests/exporttex_test/exporttex_test03.tex.result
===================================================================
--- trunk/tests/exporttex_test/exporttex_test03.tex.result 2013-05-16 11:35:48 UTC (rev 1752)
+++ trunk/tests/exporttex_test/exporttex_test03.tex.result 2013-05-16 12:27:16 UTC (rev 1753)
@@ -106,7 +106,7 @@
\nextlevel
\setlength{\levelheight}{\slopeA}
-\mess{jedna}{0_inst}[0.3]{1_inst}
+\mess{jedna}{0_inst}[0.3]{1_inst}[1]
\setlength{\levelheight}{\levelA}
\nextlevel
@@ -114,7 +114,7 @@
\nextlevel
\setlength{\levelheight}{\slopeA}
-\mess{B1}{0_inst}[0.3]{1_inst}
+\mess{B1}{0_inst}[0.3]{1_inst}[1]
\lost[r]{B}{}{0_inst}
\setlength{\levelheight}{\coregionLastA}
\nextlevel
Modified: trunk/tests/exporttex_test/exporttex_test05.tex.result
===================================================================
--- trunk/tests/exporttex_test/exporttex_test05.tex.result 2013-05-16 11:35:48 UTC (rev 1752)
+++ trunk/tests/exporttex_test/exporttex_test05.tex.result 2013-05-16 12:27:16 UTC (rev 1753)
@@ -81,11 +81,11 @@
\declinst{1_inst}{p2}{}
\setlength{\levelheight}{\slopeA}
-\mess{a}{0_inst}[0.3]{1_inst}
+\mess{a}{0_inst}[0.3]{1_inst}[1]
\setlength{\levelheight}{\levelA}
\nextlevel
\setlength{\levelheight}{\slopeA}
-\mess{a}{1_inst}[0.3]{0_inst}
+\mess{a}{1_inst}[0.3]{0_inst}[1]
\end{msc}
\end{document}
Modified: trunk/tests/exporttex_test/exporttex_test06.tex.result
===================================================================
--- trunk/tests/exporttex_test/exporttex_test06.tex.result 2013-05-16 11:35:48 UTC (rev 1752)
+++ trunk/tests/exporttex_test/exporttex_test06.tex.result 2013-05-16 12:27:16 UTC (rev 1753)
@@ -81,11 +81,11 @@
\declinst{1_inst}{I2}{}
\setlength{\levelheight}{\slopeA}
-\mess{M1}{0_inst}[0.3]{1_inst}
+\mess{M1}{0_inst}[0.3]{1_inst}[1]
\setlength{\levelheight}{\levelA}
\nextlevel
\setlength{\levelheight}{\slopeA}
-\mess{M1}{0_inst}[0.3]{1_inst}
+\mess{M1}{0_inst}[0.3]{1_inst}[1]
\end{msc}
\end{document}
Modified: trunk/tests/exporttex_test/exporttex_test07.tex.result
===================================================================
--- trunk/tests/exporttex_test/exporttex_test07.tex.result 2013-05-16 11:35:48 UTC (rev 1752)
+++ trunk/tests/exporttex_test/exporttex_test07.tex.result 2013-05-16 12:27:16 UTC (rev 1753)
@@ -81,11 +81,11 @@
\declinst{1_inst}{B}{}
\setlength{\levelheight}{\slopeA}
-\mess{M1}{0_inst}[0.3]{1_inst}
+\mess{M1}{0_inst}[0.3]{1_inst}[1]
\setlength{\levelheight}{\levelA}
\nextlevel
\setlength{\levelheight}{\slopeA}
-\mess{M2}{0_inst}[0.3]{1_inst}
+\mess{M2}{0_inst}[0.3]{1_inst}[1]
\end{msc}
\end{document}
Modified: trunk/tests/exporttex_test/exporttex_test08.tex.result
===================================================================
--- trunk/tests/exporttex_test/exporttex_test08.tex.result 2013-05-16 11:35:48 UTC (rev 1752)
+++ trunk/tests/exporttex_test/exporttex_test08.tex.result 2013-05-16 12:27:16 UTC (rev 1753)
@@ -106,7 +106,7 @@
\setlength{\selfmesswidth}{\orderingWidthA}
\order*[r]{0_inst}{0_inst}[1]
\setlength{\levelheight}{\slopeA}
-\mess{b}{0_inst}[0.3]{1_inst}
+\mess{b}{0_inst}[0.3]{1_inst}[1]
\setlength{\levelheight}{\levelA}
\nextlevel
Modified: trunk/tests/exporttex_test/exporttex_test10.tex.result
===================================================================
--- trunk/tests/exporttex_test/exporttex_test10.tex.result 2013-05-16 11:35:48 UTC (rev 1752)
+++ trunk/tests/exporttex_test/exporttex_test10.tex.result 2013-05-16 12:27:16 UTC (rev 1753)
@@ -81,16 +81,16 @@
\declinst{1_inst}{Q}{}
\setlength{\levelheight}{\slopeA}
-\mess{a}{0_inst}[0.3]{1_inst}
+\mess{a}{0_inst}[0.3]{1_inst}[1]
\setlength{\levelheight}{\levelA}
\nextlevel
\setlength{\levelheight}{\slopeA}
-\mess{a}{0_inst}[0.3]{1_inst}
+\mess{a}{0_inst}[0.3]{1_inst}[1]
\setlength{\levelheight}{\levelA}
\nextlevel
\setlength{\levelheight}{\slopeA}
-\mess{a}{0_inst}[0.3]{1_inst}
+\mess{a}{0_inst}[0.3]{1_inst}[1]
\end{msc}
\end{document}
Modified: trunk/tests/exporttex_test/exporttex_test11.tex.result
===================================================================
--- trunk/tests/exporttex_test/exporttex_test11.tex.result 2013-05-16 11:35:48 UTC (rev 1752)
+++ trunk/tests/exporttex_test/exporttex_test11.tex.result 2013-05-16 12:27:16 UTC (rev 1753)
@@ -46,9 +46,13 @@
%%%% Slope:
\def\slopeA{0mm*\real{\mscScaleY}}
-\def\slopeB{5mm*\real{\mscScaleY}}
+\def\slopeB{\coregionFirstA}
+%%%% Coregin first levels:
+\def\coregionFirstA{5mm*\real{\mscScaleY}}
+
+
%%%% Coregion last levels:
\def\coregionLastA{5mm*\real{\mscScaleY}}
@@ -94,17 +98,17 @@
\declinst{1_inst}{Server}{}
\setlength{\levelheight}{\slopeA}
-\mess{SYN}{0_inst}[0.3]{1_inst}
+\mess{SYN}{0_inst}[0.3]{1_inst}[1]
\setlength{\levelheight}{\levelA}
\nextlevel
\setlength{\levelheight}{\slopeA}
-\mess{SYNACK}{1_inst}[0.3]{0_inst...
[truncated message content] |
|
From: <xb...@us...> - 2013-05-16 15:47:52
|
Revision: 1756
http://sourceforge.net/p/scstudio/code/1756
Author: xborza
Date: 2013-05-16 15:47:49 +0000 (Thu, 16 May 2013)
Log Message:
-----------
ImportFormatter - argument config_file in load_msc
- pcap headers
Modified Paths:
--------------
trunk/src/data/Z120/z120.h
trunk/src/data/Z120/z120_load.cpp
trunk/src/data/engmann/engmann.cpp
trunk/src/data/engmann/engmann.h
trunk/src/data/formatter.h
trunk/src/data/mscgen/mscgen.h
trunk/src/data/mscgen/mscgen_load.cpp
trunk/src/data/pcap/aggreg_handler.cpp
trunk/src/data/pcap/aggreg_handler.h
trunk/src/data/pcap/aggregation_formats.cpp
trunk/src/data/pcap/aggregation_formats.h
trunk/src/data/pcap/application_layer.cpp
trunk/src/data/pcap/application_layer.h
trunk/src/data/pcap/data_link_layer.cpp
trunk/src/data/pcap/data_link_layer.h
trunk/src/data/pcap/export.h
trunk/src/data/pcap/module.cpp
trunk/src/data/pcap/network_layer.cpp
trunk/src/data/pcap/network_layer.h
trunk/src/data/pcap/packet.cpp
trunk/src/data/pcap/packet.h
trunk/src/data/pcap/pcap_handler.cpp
trunk/src/data/pcap/pcap_handler.h
trunk/src/data/pcap/pcap_load.cpp
trunk/src/data/pcap/pcap_load.h
trunk/src/data/pcap/pcap_settings.cpp
trunk/src/data/pcap/pcap_settings.h
trunk/src/data/pcap/protocols.h
trunk/src/data/pcap/transport_layer.cpp
trunk/src/data/pcap/transport_layer.h
trunk/src/scstudio.cpp
trunk/src/view/visio/addon/pcapSettingADlg.cpp
trunk/src/view/visio/addon/pcapSettingADlg.h
trunk/src/view/visio/addon/pcapSettingAggregDlg.cpp
trunk/src/view/visio/addon/pcapSettingAggregDlg.h
trunk/src/view/visio/addon/pcapSettingGDlg.cpp
trunk/src/view/visio/addon/pcapSettingGDlg.h
trunk/src/view/visio/addon/pcapSettingViewDlg.cpp
trunk/src/view/visio/addon/pcapSettingViewDlg.h
trunk/tests/pcap/pcap_test.cpp
Modified: trunk/src/data/Z120/z120.h
===================================================================
--- trunk/src/data/Z120/z120.h 2013-05-16 12:52:11 UTC (rev 1755)
+++ trunk/src/data/Z120/z120.h 2013-05-16 15:47:49 UTC (rev 1756)
@@ -58,7 +58,7 @@
#ifdef HAVE_ANTLR
//! import MSC document
- virtual std::vector<MscPtr> load_msc(const std::string &filename);
+ virtual std::vector<MscPtr> load_msc(const std::string &filename, const std::string &config_name = "");
//! Returns a list of transformation for this format.
virtual TransformationList get_transformations(MscPtr msc) const;
#endif
Modified: trunk/src/data/Z120/z120_load.cpp
===================================================================
--- trunk/src/data/Z120/z120_load.cpp 2013-05-16 12:52:11 UTC (rev 1755)
+++ trunk/src/data/Z120/z120_load.cpp 2013-05-16 15:47:49 UTC (rev 1756)
@@ -21,7 +21,7 @@
#include "Z120Lexer.h"
#include "Z120Parser.h"
-std::vector<MscPtr> Z120::load_msc(const std::string &filename)
+std::vector<MscPtr> Z120::load_msc(const std::string &filename, const std::string &config_file)
{
std::vector<MscPtr> result;
Modified: trunk/src/data/engmann/engmann.cpp
===================================================================
--- trunk/src/data/engmann/engmann.cpp 2013-05-16 12:52:11 UTC (rev 1755)
+++ trunk/src/data/engmann/engmann.cpp 2013-05-16 15:47:49 UTC (rev 1756)
@@ -138,7 +138,7 @@
return pos->second;
}
-std::vector<MscPtr> Engmann::load_msc(const std::string &filename)
+std::vector<MscPtr> Engmann::load_msc(const std::string &filename, const std::string &config_file)
{
std::vector<MscPtr> result;
Modified: trunk/src/data/engmann/engmann.h
===================================================================
--- trunk/src/data/engmann/engmann.h 2013-05-16 12:52:11 UTC (rev 1755)
+++ trunk/src/data/engmann/engmann.h 2013-05-16 15:47:49 UTC (rev 1756)
@@ -34,7 +34,7 @@
{ return "Engmann Message Chart"; }
//! import MSC document
- virtual std::vector<MscPtr> load_msc(const std::string &filename);
+ virtual std::vector<MscPtr> load_msc(const std::string &filename, const std::string &config_file = "");
//! Returns a list of transformation for this format.
virtual TransformationList get_transformations(MscPtr msc) const;
Modified: trunk/src/data/formatter.h
===================================================================
--- trunk/src/data/formatter.h 2013-05-16 12:52:11 UTC (rev 1755)
+++ trunk/src/data/formatter.h 2013-05-16 15:47:49 UTC (rev 1756)
@@ -50,7 +50,7 @@
virtual ~ImportFormatter() {}
//! import MSC document
- virtual std::vector<MscPtr> load_msc(const std::string &filename) = 0;
+ virtual std::vector<MscPtr> load_msc(const std::string &filename, const std::string &config_file = "") = 0;
//! List of transformations that must be performed after the import.
typedef std::vector<std::wstring> TransformationList;
Modified: trunk/src/data/mscgen/mscgen.h
===================================================================
--- trunk/src/data/mscgen/mscgen.h 2013-05-16 12:52:11 UTC (rev 1755)
+++ trunk/src/data/mscgen/mscgen.h 2013-05-16 15:47:49 UTC (rev 1756)
@@ -57,7 +57,7 @@
#ifdef HAVE_ANTLR
//! import MSC document
- virtual std::vector<MscPtr> load_msc(const std::string &filename);
+ virtual std::vector<MscPtr> load_msc(const std::string &filename, const std::string &config_file = "");
//! Returns a list of transformation for this format.
virtual TransformationList get_transformations(MscPtr msc) const;
#endif
Modified: trunk/src/data/mscgen/mscgen_load.cpp
===================================================================
--- trunk/src/data/mscgen/mscgen_load.cpp 2013-05-16 12:52:11 UTC (rev 1755)
+++ trunk/src/data/mscgen/mscgen_load.cpp 2013-05-16 15:47:49 UTC (rev 1756)
@@ -21,7 +21,7 @@
#include "MscgenLexer.h"
#include "MscgenParser.h"
-std::vector<MscPtr> Mscgen::load_msc(const std::string &filename)
+std::vector<MscPtr> Mscgen::load_msc(const std::string &filename,const std::string &config_file)
{
std::vector<MscPtr> result;
Modified: trunk/src/data/pcap/aggreg_handler.cpp
===================================================================
--- trunk/src/data/pcap/aggreg_handler.cpp 2013-05-16 12:52:11 UTC (rev 1755)
+++ trunk/src/data/pcap/aggreg_handler.cpp 2013-05-16 15:47:49 UTC (rev 1756)
@@ -1,3 +1,19 @@
+/*
+ * scstudio - Sequence Chart Studio
+ * http://scstudio.sourceforge.net
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * Copyright (c) 2012 Viktor Borza <bo...@ma...>
+ */
+
#include "aggreg_handler.h"
AggregHandler::AggregHandler(PcapSettings* p_settings)
Modified: trunk/src/data/pcap/aggreg_handler.h
===================================================================
--- trunk/src/data/pcap/aggreg_handler.h 2013-05-16 12:52:11 UTC (rev 1755)
+++ trunk/src/data/pcap/aggreg_handler.h 2013-05-16 15:47:49 UTC (rev 1756)
@@ -1,3 +1,19 @@
+/*
+ * scstudio - Sequence Chart Studio
+ * http://scstudio.sourceforge.net
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * Copyright (c) 2012 Viktor Borza <bo...@ma...>
+ */
+
#ifndef AGGREGATION_INCLUDED
#define AGGREGATION_INCLUDED
Modified: trunk/src/data/pcap/aggregation_formats.cpp
===================================================================
--- trunk/src/data/pcap/aggregation_formats.cpp 2013-05-16 12:52:11 UTC (rev 1755)
+++ trunk/src/data/pcap/aggregation_formats.cpp 2013-05-16 15:47:49 UTC (rev 1756)
@@ -1,3 +1,19 @@
+/*
+ * scstudio - Sequence Chart Studio
+ * http://scstudio.sourceforge.net
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * Copyright (c) 2012 Viktor Borza <bo...@ma...>
+ */
+
#include "aggregation_formats.h"
AggregData get_aggregd_for_aggreg(PcapSettings* settings,Packet* packet,AggrLevel packet_level) // MAX TRANSPORT_LAYER PARSE
Modified: trunk/src/data/pcap/aggregation_formats.h
===================================================================
--- trunk/src/data/pcap/aggregation_formats.h 2013-05-16 12:52:11 UTC (rev 1755)
+++ trunk/src/data/pcap/aggregation_formats.h 2013-05-16 15:47:49 UTC (rev 1756)
@@ -1,3 +1,19 @@
+/*
+ * scstudio - Sequence Chart Studio
+ * http://scstudio.sourceforge.net
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * Copyright (c) 2012 Viktor Borza <bo...@ma...>
+ */
+
#ifndef AGGREGATION_FORMATS_INCLUDED
#define AGGREGATION_FORMATS_INCLUDED
Modified: trunk/src/data/pcap/application_layer.cpp
===================================================================
--- trunk/src/data/pcap/application_layer.cpp 2013-05-16 12:52:11 UTC (rev 1755)
+++ trunk/src/data/pcap/application_layer.cpp 2013-05-16 15:47:49 UTC (rev 1756)
@@ -1,3 +1,19 @@
+/*
+ * scstudio - Sequence Chart Studio
+ * http://scstudio.sourceforge.net
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * Copyright (c) 2012 Viktor Borza <bo...@ma...>
+ */
+
#include "application_layer.h"
/*-------------------------------------------------DNS --------------------------------------------------*/
Modified: trunk/src/data/pcap/application_layer.h
===================================================================
--- trunk/src/data/pcap/application_layer.h 2013-05-16 12:52:11 UTC (rev 1755)
+++ trunk/src/data/pcap/application_layer.h 2013-05-16 15:47:49 UTC (rev 1756)
@@ -1,3 +1,19 @@
+/*
+ * scstudio - Sequence Chart Studio
+ * http://scstudio.sourceforge.net
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * Copyright (c) 2012 Viktor Borza <bo...@ma...>
+ */
+
#ifndef APPLICATION_LAYER_INCLUDED
#define APPLICATION_LAYER_INCLUDED
Modified: trunk/src/data/pcap/data_link_layer.cpp
===================================================================
--- trunk/src/data/pcap/data_link_layer.cpp 2013-05-16 12:52:11 UTC (rev 1755)
+++ trunk/src/data/pcap/data_link_layer.cpp 2013-05-16 15:47:49 UTC (rev 1756)
@@ -1,3 +1,19 @@
+/*
+ * scstudio - Sequence Chart Studio
+ * http://scstudio.sourceforge.net
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * Copyright (c) 2012 Viktor Borza <bo...@ma...>
+ */
+
#include "data_link_layer.h"
EthernetPacket::EthernetPacket(const u_char* data,u_short data_size)
Modified: trunk/src/data/pcap/data_link_layer.h
===================================================================
--- trunk/src/data/pcap/data_link_layer.h 2013-05-16 12:52:11 UTC (rev 1755)
+++ trunk/src/data/pcap/data_link_layer.h 2013-05-16 15:47:49 UTC (rev 1756)
@@ -1,3 +1,20 @@
+/*
+ * scstudio - Sequence Chart Studio
+ * http://scstudio.sourceforge.net
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * Copyright (c) 2012 Viktor Borza <bo...@ma...>
+ */
+
+
#ifndef DATA_LINK_LAYER_INCLUDED
#define DATA_LINK_LAYER_INCLUDED
Modified: trunk/src/data/pcap/export.h
===================================================================
--- trunk/src/data/pcap/export.h 2013-05-16 12:52:11 UTC (rev 1755)
+++ trunk/src/data/pcap/export.h 2013-05-16 15:47:49 UTC (rev 1756)
@@ -11,9 +11,7 @@
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
- * Copyright (c) 2009 Petr Gotthard <pet...@ce...>
- *
- * $Id$
+ * Copyright (c) 2012 Viktor Borza <bo...@ma...>
*/
#ifndef _SCPCAP_EXPORT_H
Modified: trunk/src/data/pcap/module.cpp
===================================================================
--- trunk/src/data/pcap/module.cpp 2013-05-16 12:52:11 UTC (rev 1755)
+++ trunk/src/data/pcap/module.cpp 2013-05-16 15:47:49 UTC (rev 1756)
@@ -11,9 +11,7 @@
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
- * Copyright (c) 2009 Petr Gotthard <pet...@ce...>
- *
- * $Id$
+ * Copyright (c) 2012 Viktor Borza <bo...@ma...>
*/
#include "data/pcap/pcap_load.h"
Modified: trunk/src/data/pcap/network_layer.cpp
===================================================================
--- trunk/src/data/pcap/network_layer.cpp 2013-05-16 12:52:11 UTC (rev 1755)
+++ trunk/src/data/pcap/network_layer.cpp 2013-05-16 15:47:49 UTC (rev 1756)
@@ -1,3 +1,19 @@
+/*
+ * scstudio - Sequence Chart Studio
+ * http://scstudio.sourceforge.net
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * Copyright (c) 2012 Viktor Borza <bo...@ma...>
+ */
+
#include "network_layer.h"
/* ----------------------------------------------------Ipv4--------------------------------------------------------*/
Modified: trunk/src/data/pcap/network_layer.h
===================================================================
--- trunk/src/data/pcap/network_layer.h 2013-05-16 12:52:11 UTC (rev 1755)
+++ trunk/src/data/pcap/network_layer.h 2013-05-16 15:47:49 UTC (rev 1756)
@@ -1,3 +1,19 @@
+/*
+ * scstudio - Sequence Chart Studio
+ * http://scstudio.sourceforge.net
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * Copyright (c) 2012 Viktor Borza <bo...@ma...>
+ */
+
#ifndef NETWORK_LAYER_INCLUDED
#define NETWORK_LAYER_INCLUDED
Modified: trunk/src/data/pcap/packet.cpp
===================================================================
--- trunk/src/data/pcap/packet.cpp 2013-05-16 12:52:11 UTC (rev 1755)
+++ trunk/src/data/pcap/packet.cpp 2013-05-16 15:47:49 UTC (rev 1756)
@@ -1,3 +1,19 @@
+/*
+ * scstudio - Sequence Chart Studio
+ * http://scstudio.sourceforge.net
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * Copyright (c) 2012 Viktor Borza <bo...@ma...>
+ */
+
#include "packet.h"
std::string get_host(u_char* host,u_short len)
Modified: trunk/src/data/pcap/packet.h
===================================================================
--- trunk/src/data/pcap/packet.h 2013-05-16 12:52:11 UTC (rev 1755)
+++ trunk/src/data/pcap/packet.h 2013-05-16 15:47:49 UTC (rev 1756)
@@ -1,3 +1,19 @@
+/*
+ * scstudio - Sequence Chart Studio
+ * http://scstudio.sourceforge.net
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * Copyright (c) 2012 Viktor Borza <bo...@ma...>
+ */
+
#ifndef PACKET_INCLUDED
#define PACKET_INCLUDED
Modified: trunk/src/data/pcap/pcap_handler.cpp
===================================================================
--- trunk/src/data/pcap/pcap_handler.cpp 2013-05-16 12:52:11 UTC (rev 1755)
+++ trunk/src/data/pcap/pcap_handler.cpp 2013-05-16 15:47:49 UTC (rev 1756)
@@ -1,3 +1,19 @@
+/*
+ * scstudio - Sequence Chart Studio
+ * http://scstudio.sourceforge.net
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * Copyright (c) 2012 Viktor Borza <bo...@ma...>
+ */
+
#include "pcap_handler.h"
PcapSettings* PcapHandler::settings;
@@ -10,16 +26,13 @@
inst_count = 0;
packet_id = 0;
- settings = parse_set;
+ this->aggreg_handler = NULL;
+ this->settings = parse_set;
if(settings->flow_settings->apply_aggreg)
{
this->aggreg_handler = new AggregHandler(parse_set);
}
- else
- {
- this->aggreg_handler = NULL;
- }
zero_time.tv_sec = 0;
zero_time.tv_usec = 0;
Modified: trunk/src/data/pcap/pcap_handler.h
===================================================================
--- trunk/src/data/pcap/pcap_handler.h 2013-05-16 12:52:11 UTC (rev 1755)
+++ trunk/src/data/pcap/pcap_handler.h 2013-05-16 15:47:49 UTC (rev 1756)
@@ -1,3 +1,19 @@
+/*
+ * scstudio - Sequence Chart Studio
+ * http://scstudio.sourceforge.net
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * Copyright (c) 2012 Viktor Borza <bo...@ma...>
+ */
+
#ifndef PCAP_HANDLER_INCLUDED
#define PCAP_HANDLER_INCLUDED
Modified: trunk/src/data/pcap/pcap_load.cpp
===================================================================
--- trunk/src/data/pcap/pcap_load.cpp 2013-05-16 12:52:11 UTC (rev 1755)
+++ trunk/src/data/pcap/pcap_load.cpp 2013-05-16 15:47:49 UTC (rev 1756)
@@ -11,30 +11,95 @@
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
- * Copyright (c) 2009 Petr Gotthard <pet...@ce...>
- *
- * $Id$
+ * Copyright (c) 2012 Viktor Borza <bo...@ma...>
*/
// include pcap library
-// under Windows WinPcap Developer's Pack http://www.winpcap.org/devel.htm
+// under Windows WinPcap Developer's Pack http://www.winpcap.org
// under UN*X libpcap http://www.tcpdump.org
#include "pcap_load.h"
#include "pcap_settings.h"
+#include <boost/lexical_cast.hpp>
+#include <boost/property_tree/ptree.hpp>
+#include <boost/property_tree/ini_parser.hpp>
#include <pcap.h>
-std::vector<MscPtr> Pcap::load_msc(const std::string &filename)
+PcapSettings* Pcap::load_configuration(const std::string &filename)
{
- PcapSettings* settings = new PcapSettings(this->get_config_provider());
- settings->load_registry();
+ PcapSettings* settings = new PcapSettings();
+ boost::property_tree::ptree pt;
+ boost::property_tree::ini_parser::read_ini(filename, pt);
+ // read general settings
+ settings->pcap_filter = pt.get<std::string>("GeneralSettings.PcapFilter");
+ settings->parse_layer = (ParseLayer)pt.get<int>("GeneralSettings.ParseLayer");
+ settings->show_timestamps = pt.get<bool>("GeneralSettings.ShowTimestamps");
+ settings->time_format = (TimeFormat)pt.get<int>("GeneralSettings.TimeFormat");
+ settings->time_unit = pt.get<int>("GeneralSettings.TimeUnit");
+ settings->data_unit = pt.get<int>("GeneralSettings.DataUnit");
+
+ // read view settings
+ ViewSettings* view_set = new ViewSettings();
+ view_set->show_all_layers_info = pt.get<bool>("ViewSettings.AllLayersInfo");
+ view_set->ignore_packets = pt.get<bool>("ViewSettings.IgnorePackets");
+ view_set->show_data_size = pt.get<bool>("ViewSettings.DataSize");
+ view_set->show_packets_numbers = pt.get<bool>("ViewSettings.PacketNumber");
+ view_set->show_upper_proto = pt.get<bool>("ViewSettings.EncapsulatedProto");
+ view_set->show_ports = pt.get<bool>("ViewSettings.Ports");
+ settings->view_settings = view_set;
+
+ // read advanced settings
+ TcpSettings* tcp_set = new TcpSettings();
+ tcp_set->show_flags = pt.get<bool>("TcpSettings.Flags");
+ tcp_set->show_seqack = pt.get<bool>("TcpSettings.SeqAckNumbers");
+ tcp_set->show_segments = pt.get<bool>("TcpSettings.Segments");
+ tcp_set->reassembly = pt.get<bool>("TcpSettings.Reassemble");
- return load_msc(filename,settings);
+ HttpSettings* http_set = new HttpSettings();
+ http_set->show_version = pt.get<bool>("HttpSettings.Version");
+ http_set->show_packet_part = pt.get<bool>("HttpSettings.PacketPart");
+ http_set->reassembly = pt.get<bool>("HttpSettings.Reassemble");
+
+ SipSettings* sip_set = new SipSettings();
+ sip_set->show_version = pt.get<bool>("SipSettings.Version");
+ sip_set->show_from_to = pt.get<bool>("SipSettings.FromTo");
+ sip_set->show_only_nick_names = pt.get<bool>("SipSettings.OnlyNicknames");
+ sip_set->show_specification = pt.get<bool>("SipSettings.StatusDescript");
+ sip_set->reassembly = pt.get<bool>("SipSettings.ReassembleRTP");
+
+ AdvancedSettings* adv_set = new AdvancedSettings(http_set,sip_set,tcp_set);
+ settings->adv_settings = adv_set;
+
+ // read aggregation settings
+ AggregSettings* agg_set = new AggregSettings();
+ agg_set->apply_aggreg = pt.get<bool>("AggregSettings.ApplyAggregation");
+ agg_set->level = (AggrLevel)pt.get<int>("AggregSettings.AggregLevel");
+ agg_set->type = (AggregType)pt.get<int>("AggregSettings.AggregType");
+ agg_set->time_interval = pt.get<double>("AggregSettings.TimeInterval");
+ agg_set->ignore_packets = pt.get<bool>("AggregSettings.IgnorePackets");
+ //redefine by aggregation dialog
+ agg_set->show_data_size = pt.get<bool>("AggregSettings.DataSize");
+ agg_set->show_packet_count = pt.get<bool>("AggregSettings.PacketCount");
+ settings->flow_settings = agg_set;
+
+ return settings;
}
-std::vector<MscPtr> Pcap::load_msc(const std::string &filename,PcapSettings* settings)
+
+std::vector<MscPtr> Pcap::load_msc(const std::string &filename,const std::string &config_file)
{
- std::string filter = "Pcap filter:";
+ PcapSettings* settings = NULL;
+ if(config_file == "")
+ {
+ settings = new PcapSettings(this->get_config_provider());
+ settings->load_registry();
+ }
+ else
+ {
+ settings = load_configuration(config_file);
+ }
+
+ std::string filter = "Pcap filter:";
filter.append(settings->pcap_filter);
this->print_report(RS_REPORT, TOWSTRING(filter));
@@ -80,33 +145,31 @@
return result;
}
- //----------------------------------------------------------
- PcapHandler* pcapHandler = new PcapHandler(settings);
- //----------------------------------------------------------
+ PcapHandler* pcapHandler = new PcapHandler(settings);
+
handStruct hands;
- hands.pcap = pcapHandler;
+ hands.pcap = pcapHandler;
hands.handle = adhandle;
- pcap_loop(adhandle, 0, PcapHandler::packet_handler, (u_char*)&hands);
+ pcap_loop(adhandle, 0, PcapHandler::packet_handler, (u_char*)&hands);
// for aggregation buffer flush
hands.pcap->last_diagram_update();
// handle empty msc
if(hands.pcap->msc_is_empty())
{
- print_report(RS_ERROR,stringize() << "No packet passed through defined settings.");
+ print_report(RS_ERROR,stringize() << "No packet from PCAP file passeed through defined settings.");
}
else
{
result.push_back(hands.pcap->getMsc());
}
-
- pcap_freecode(&fcode);
- pcap_close(adhandle);
-
- delete settings;
- delete pcapHandler;
- return result;
+
+ delete pcapHandler;
+ delete settings;
+ pcap_freecode(&fcode);
+ pcap_close(adhandle);
+ return result;
}
ImportFormatter::TransformationList Pcap::get_transformations(MscPtr msc) const
Modified: trunk/src/data/pcap/pcap_load.h
===================================================================
--- trunk/src/data/pcap/pcap_load.h 2013-05-16 12:52:11 UTC (rev 1755)
+++ trunk/src/data/pcap/pcap_load.h 2013-05-16 15:47:49 UTC (rev 1756)
@@ -11,9 +11,7 @@
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
- * Copyright (c) 2009 Petr Gotthard <pet...@ce...>
- *
- * $Id$
+ * Copyright (c) 2012 Viktor Borza <bo...@ma...>
*/
#ifndef _SCPCAP_PCAP_IMPORT_H_
@@ -44,6 +42,9 @@
class SCPCAP_EXPORT Pcap : public Formatter, public ImportFormatter
{
+private:
+ PcapSettings* load_configuration(const std::string &filename);
+
public:
//! file extension used to distinguish this format
// note: DLL in Windows cannot return pointers to static data
@@ -54,8 +55,8 @@
{ return "Wireshark (libpcap) packet trace"; }
//! import MSC document
- virtual std::vector<MscPtr> load_msc(const std::string &filename);
- virtual std::vector<MscPtr> load_msc(const std::string &filename,PcapSettings* settings);
+ virtual std::vector<MscPtr> load_msc(const std::string &filename, const std::string &config_file ="");
+
//! Returns a list of transformation for this format.
virtual TransformationList get_transformations(MscPtr msc) const;
};
Modified: trunk/src/data/pcap/pcap_settings.cpp
===================================================================
--- trunk/src/data/pcap/pcap_settings.cpp 2013-05-16 12:52:11 UTC (rev 1755)
+++ trunk/src/data/pcap/pcap_settings.cpp 2013-05-16 15:47:49 UTC (rev 1756)
@@ -1,3 +1,19 @@
+/*
+ * scstudio - Sequence Chart Studio
+ * http://scstudio.sourceforge.net
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * Copyright (c) 2012 Viktor Borza <bo...@ma...>
+ */
+
#include "pcap_settings.h"
double round(double num, int prec)
@@ -167,8 +183,6 @@
if(get_config_long(L"Pcap", L"AggPorts", 0) != 0)
flow_settings->le...
[truncated message content] |
|
From: <tm...@us...> - 2013-06-24 10:15:12
|
Revision: 1829
http://sourceforge.net/p/scstudio/code/1829
Author: tmarton
Date: 2013-06-24 10:15:07 +0000 (Mon, 24 Jun 2013)
Log Message:
-----------
fixed time relevant ordering test
Modified Paths:
--------------
trunk/src/check/time/module.cpp
Added Paths:
-----------
trunk/tests/time_relevant_ordering/tro_test24.tex.result2
trunk/tests/time_relevant_ordering/tro_test25.tex.result2
Modified: trunk/src/check/time/module.cpp
===================================================================
--- trunk/src/check/time/module.cpp 2013-06-22 10:09:51 UTC (rev 1828)
+++ trunk/src/check/time/module.cpp 2013-06-24 10:15:07 UTC (rev 1829)
@@ -30,7 +30,7 @@
Checker **result = new Checker* [5];
result[0] = new ConstraintsChecker();
result[1] = new ConsistencyChecker();
- result[2] = new TimeRaceChecker();
+ result[2] = new TimeRaceChecker();
result[3] = new AbsoluteTimeConsistencyChecker();
result[4] = NULL;
@@ -43,10 +43,10 @@
extern "C" SCTIME_EXPORT
Transformer** init_transformers()
{
- Transformer **result = new Transformer* [2];
-// result[0] = new Tighter();
- result[0] = new AbsoluteTimeTighter();
- result[1] = NULL;
+ Transformer **result = new Transformer* [3];
+ result[0] = new Tighter();
+ result[1] = new AbsoluteTimeTighter();
+ result[2] = NULL;
return result;
}
Added: trunk/tests/time_relevant_ordering/tro_test24.tex.result2
===================================================================
--- trunk/tests/time_relevant_ordering/tro_test24.tex.result2 (rev 0)
+++ trunk/tests/time_relevant_ordering/tro_test24.tex.result2 2013-06-24 10:15:07 UTC (rev 1829)
@@ -0,0 +1,180 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%% You can download Msc5.sty package from:
+%%%% http://is.muni.cz/www/374320/msc5.sty
+%%%% Documentation:
+%%%% http://is.muni.cz/www/374320/manualNew.pdf
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+\documentclass{article}
+\usepackage{msc5}
+\usepackage[a4paper]{geometry}
+\begin{document}
+\drawframe{no}
+\section*{tro\_test24}
+\setmsckeyword{Pcap}
+\begin{msc}{}
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%% Configuration header
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%%%% Scale:
+\def\mscScaleX{1.0}
+\def\mscScaleY{1.0}
+
+%%%% Lines width:
+\pgfsetlinewidth{0.4pt}
+
+%%%% Picture box width:
+\setlength{\envinstdist}{20mm*\real{\mscScaleX}}
+
+%%%% Picture box y-padding:
+\setlength{\topheaddist}{\topheaddist}
+\setlength{\bottomfootdist}{\bottomfootdist}
+
+%%%% Instance first and last level height:
+\setlength{\firstlevelheight}{13mm*\real{\mscScaleY}}
+\setlength{\lastlevelheight}{11mm*\real{\mscScaleY}}
+
+%%%% Levels:
+\def\levelA{8mm*\real{\mscScaleY}}
+
+\setlength{\levelheight}{\levelA}
+
+
+%%%% Slope:
+\def\slopeA{0mm*\real{\mscScaleY}}
+
+
+%%%% Width of absolute time:
+\def\absoluteTimeWidthA{10mm*\real{\mscScaleX}}
+
+
+%%%% Absolute time slope:
+\def\absoluteTimeSlopeA{5mm*\real{\mscScaleY}}
+
+\setlength{\markdist}{\absoluteTimeSlopeA}
+
+%%%% Width od time interval:
+\def\timeIntervalWidthA{7mm*\real{\mscScaleX}}
+
+
+%%%% Ordering width:
+\def\orderingWidthA{3mm*\real{\mscScaleX}}
+
+
+%%%% Width of instance head/foot:
+\def\instanceWidthA{15mm*\real{\mscScaleX}}
+
+\setlength{\instwidth}{\instanceWidthA}
+
+%%%% Height of instance head/foot:
+\def\instanceHeightA{3mm*\real{\mscScaleY}}
+
+\setlength{\instheadheight}{\instanceHeightA}
+
+\setlength{\instfootheight}{\instheadheight}
+
+%%%% Space between instances:
+\def\instanceSpaceA{30mm*\real{\mscScaleX}}
+
+\setlength{\instdist}{\instanceSpaceA}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%% End of configuration header
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\declinst{0_inst}{192.168.69.2}{}
+\declinst{1_inst}{192.168.69.1}{}
+
+\setlength{\selfmesswidth}{\absoluteTimeWidthA}
+\mscmark[tl]{@[0]}{0_inst}
+\setlength{\levelheight}{\slopeA}
+\mess{Ethernet\_II.\_I\_IPv4\_SRC\_34059\_DST\_80\_TCP\_SYN\_SEQ\_0\_}{0_inst}[0.3]{1_inst}[1]
+\setlength{\selfmesswidth}{\absoluteTimeWidthA}
+\mscmark[tr]{@[0]}{1_inst}
+\setlength{\levelheight}{\levelA}
+\nextlevel
+
+\setlength{\selfmesswidth}{\absoluteTimeWidthA}
+\mscmark[tl]{@[5.9e-005]}{0_inst}
+\setlength{\selfmesswidth}{\absoluteTimeWidthA}
+\mscmark[tr]{@[5.9e-005]}{1_inst}
+\setlength{\levelheight}{\slopeA}
+\mess{Ethernet\_II.\_I\_IPv4\_SRC\_80\_DST\_34059\_TCP\_SYN\_ACK\_SEQ\_0\_ACK\_1\_}{1_inst}[0.3]{0_inst}[1]
+\setlength{\levelheight}{\levelA}
+\nextlevel
+
+\setlength{\selfmesswidth}{\absoluteTimeWidthA}
+\mscmark[tl]{@[0.000153]}{0_inst}
+\setlength{\levelheight}{\slopeA}
+\mess{Ethernet\_II.\_I\_IPv4\_SRC\_34059\_DST\_80\_TCP\_ACK\_SEQ\_1\_ACK\_1\_}{0_inst}[0.3]{1_inst}[1]
+\setlength{\selfmesswidth}{\absoluteTimeWidthA}
+\mscmark[tr]{@[0.000153]}{1_inst}
+\setlength{\levelheight}{\levelA}
+\nextlevel
+
+\setlength{\selfmesswidth}{\absoluteTimeWidthA}
+\mscmark[tl]{@[0.000282]}{0_inst}
+\setlength{\levelheight}{\slopeA}
+\mess{Ethernet\_II.\_I\_IPv4\_I\_SRC\_34059\_DST\_80\_TCP\_PSH\_ACK\_SEQ\_1\_ACK\_1\_HTTP\_GET\_cerberus\_}{0_inst}[0.3]{1_inst}[1]
+\setlength{\selfmesswidth}{\absoluteTimeWidthA}
+\mscmark[tr]{@[0.000282]}{1_inst}
+\setlength{\levelheight}{\levelA}
+\nextlevel
+
+\setlength{\selfmesswidth}{\absoluteTimeWidthA}
+\mscmark[tl]{@[0.00033]}{0_inst}
+\setlength{\selfmesswidth}{\absoluteTimeWidthA}
+\mscmark[tr]{@[0.00033]}{1_inst}
+\setlength{\levelheight}{\slopeA}
+\mess{Ethernet\_II.\_I\_IPv4\_SRC\_80\_DST\_34059\_TCP\_ACK\_SEQ\_1\_ACK\_446\_}{1_inst}[0.3]{0_inst}[1]
+\setlength{\levelheight}{\levelA}
+\nextlevel
+
+\setlength{\selfmesswidth}{\absoluteTimeWidthA}
+\mscmark[tl]{@[0.021452]}{0_inst}
+\setlength{\selfmesswidth}{\absoluteTimeWidthA}
+\mscmark[tr]{@[0.021452]}{1_inst}
+\setlength{\levelheight}{\slopeA}
+\mess{Ethernet\_II.\_I\_IPv4\_I\_SRC\_80\_DST\_34059\_TCP\_PSH\_ACK\_SEQ\_1\_ACK\_446\_HTTP\_STATUS\_CODE\_200\_}{1_inst}[0.3]{0_inst}[1]
+\setlength{\levelheight}{\levelA}
+\nextlevel
+
+\setlength{\selfmesswidth}{\absoluteTimeWidthA}
+\mscmark[tl]{@[0.021629]}{0_inst}
+\setlength{\levelheight}{\slopeA}
+\mess{Ethernet\_II.\_I\_IPv4\_SRC\_34059\_DST\_80\_TCP\_ACK\_SEQ\_446\_ACK\_403\_}{0_inst}[0.3]{1_inst}[1]
+\setlength{\selfmesswidth}{\absoluteTimeWidthA}
+\mscmark[tr]{@[0.021629]}{1_inst}
+\setlength{\levelheight}{\levelA}
+\nextlevel
+
+\setlength{\selfmesswidth}{\absoluteTimeWidthA}
+\mscmark[tl]{@[0.021755]}{0_inst}
+\setlength{\selfmesswidth}{\absoluteTimeWidthA}
+\mscmark[tr]{@[0.021755]}{1_inst}
+\setlength{\levelheight}{\slopeA}
+\mess{Ethernet\_II.\_I\_IPv4\_SRC\_80\_DST\_34059\_TCP\_FIN\_ACK\_SEQ\_403\_ACK\_446\_}{1_inst}[0.3]{0_inst}[1]
+\setlength{\levelheight}{\levelA}
+\nextlevel
+
+\setlength{\selfmesswidth}{\absoluteTimeWidthA}
+\mscmark[tl]{@[0.022677]}{0_inst}
+\setlength{\levelheight}{\slopeA}
+\mess{Ethernet\_II.\_I\_IPv4\_SRC\_34059\_DST\_80\_TCP\_FIN\_ACK\_SEQ\_446\_ACK\_404\_}{0_inst}[0.3]{1_inst}[1]
+\setlength{\selfmesswidth}{\absoluteTimeWidthA}
+\mscmark[tr]{@[0.022677]}{1_inst}
+\setlength{\levelheight}{\levelA}
+\nextlevel
+
+\setlength{\selfmesswidth}{\absoluteTimeWidthA}
+\mscmark[tl]{@[0.022715]}{0_inst}
+\setlength{\selfmesswidth}{\absoluteTimeWidthA}
+\mscmark[tr]{@[0.022715]}{1_inst}
+\setlength{\levelheight}{\slopeA}
+\mess{Ethernet\_II.\_I\_IPv4\_SRC\_80\_DST\_34059\_TCP\_ACK\_SEQ\_404\_ACK\_447\_}{1_inst}[0.3]{0_inst}[1]
+\end{msc}
+\end{document}
Added: trunk/tests/time_relevant_ordering/tro_test25.tex.result2
===================================================================
--- trunk/tests/time_relevant_ordering/tro_test25.tex.result2 (rev 0)
+++ trunk/tests/time_relevant_ordering/tro_test25.tex.result2 2013-06-24 10:15:07 UTC (rev 1829)
@@ -0,0 +1,159 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%% You can download Msc5.sty package from:
+%%%% http://is.muni.cz/www/374320/msc5.sty
+%%%% Documentation:
+%%%% http://is.muni.cz/www/374320/manualNew.pdf
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+\documentclass{article}
+\usepackage{msc5}
+\usepackage[a4paper]{geometry}
+\begin{document}
+\drawframe{no}
+\section*{tro\_test25}
+\setmsckeyword{Pcap}
+\begin{msc}{}
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%% Configuration header
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%%%% Scale:
+\def\mscScaleX{1.0}
+\def\mscScaleY{1.0}
+
+%%%% Lines width:
+\pgfsetlinewidth{0.4pt}
+
+%%%% Picture box width:
+\setlength{\envinstdist}{18mm*\real{\mscScaleX}}
+
+%%%% Picture box y-padding:
+\setlength{\topheaddist}{\topheaddist}
+\setlength{\bottomfootdist}{\bottomfootdist}
+
+%%%% Instance first and last level height:
+\setlength{\firstlevelheight}{13mm*\real{\mscScaleY}}
+\setlength{\lastlevelheight}{11mm*\real{\mscScaleY}}
+
+%%%% Levels:
+\def\levelA{8mm*\real{\mscScaleY}}
+
+\setlength{\levelheight}{\levelA}
+
+
+%%%% Slope:
+\def\slopeA{0mm*\real{\mscScaleY}}
+\def\slopeB{\levelA+\levelA+\levelA}
+\def\slopeC{\levelA+\levelA}
+
+
+%%%% Width od time interval:
+\def\timeIntervalWidthA{7mm*\real{\mscScaleX}}
+
+
+
+%%%% Time interval slope:
+\def\timeIntervalSlopeA{\levelA}
+\def\timeIntervalSlopeB{\levelA+\levelA}
+\def\timeIntervalSlopeC{0mm*\real{\mscScaleY}}
+%%%% Ordering width:
+\def\orderingWidthA{3mm*\real{\mscScaleX}}
+
+
+%%%% Width of instance head/foot:
+\def\instanceWidthA{15mm*\real{\mscScaleX}}
+
+\setlength{\instwidth}{\instanceWidthA}
+
+%%%% Height of instance head/foot:
+\def\instanceHeightA{3mm*\real{\mscScaleY}}
+
+\setlength{\instheadheight}{\instanceHeightA}
+
+\setlength{\instfootheight}{\instheadheight}
+
+%%%% Space between instances:
+\def\instanceSpaceA{30mm*\real{\mscScaleX}}
+
+\setlength{\instdist}{\instanceSpaceA}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%% End of configuration header
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\declinst{0_inst}{192.168.69.2}{}
+\declinst{1_inst}{192.168.69.1}{}
+
+\setlength{\selfmesswidth}{\timeIntervalWidthA}
+\measure[l]{[5.9e-005]}{0_inst}{0_inst}[1]
+\setlength{\levelheight}{\slopeA}
+\mess{1\_TCP\_SYN\_SEQ\_0\_}{0_inst}[0.3]{1_inst}[1]
+\setlength{\levelheight}{\timeIntervalSlopeA}
+\measure[l]{[5.9e-005]}{1_inst}{1_inst}[1]
+\nextlevel
+
+\measure[l]{[9.4e-005]}{0_inst}{0_inst}[1]
+\measure[l]{[9.4e-005]}{1_inst}{1_inst}[1]
+\setlength{\levelheight}{\slopeA}
+\mess{2\_TCP\_SYN\_ACK\_SEQ\_0\_ACK\_1\_}{1_inst}[0.3]{0_inst}[1]
+\setlength{\levelheight}{\levelA}
+\nextlevel
+
+\measure[l]{[0.000129]}{0_inst}{0_inst}[1]
+\setlength{\levelheight}{\slopeA}
+\mess{3\_TCP\_ACK\_SEQ\_1\_ACK\_1\_}{0_inst}[0.3]{1_inst}[1]
+\setlength{\levelheight}{\timeIntervalSlopeA}
+\measure[l]{[0.000129]}{1_inst}{1_inst}[1]
+\nextlevel
+
+\measure[l]{[4.8e-005]}{0_inst}{0_inst}[1]
+\setlength{\levelheight}{\slopeA}
+\mess{4\_HTTP\_GET\_cerberus\_ALL\_DATA\_}{0_inst}[0.3]{1_inst}[1]
+\setlength{\levelheight}{\timeIntervalSlopeA}
+\measure[l]{[4.8e-005]}{1_inst}{1_inst}[1]
+\nextlevel
+
+\measure[l]{[0.021122]}{0_inst}{0_inst}[1]
+\measure[l]{[0.021122]}{1_inst}{1_inst}[1]
+\setlength{\levelheight}{\slopeA}
+\mess{5\_TCP\_ACK\_SEQ\_1\_ACK\_446\_}{1_inst}[0.3]{0_inst}[1]
+\setlength{\levelheight}{\levelA}
+\nextlevel
+
+\setlength{\levelheight}{\timeIntervalSlopeB}
+\measure[l]{[0.001225]}{0_inst}{0_inst}[1]
+\setlength{\levelheight}{\timeIntervalSlopeA}
+\measure[l]{[0.000303]}{1_inst}{1_inst}[1]
+\setlength{\levelheight}{\slopeA}
+\mess{6\_HTTP\_STATUS\_CODE\_200\_ALL\_DATA\_}{1_inst}[0.3]{0_inst}[1]
+\setlength{\levelheight}{\levelA}
+\nextlevel
+
+\measure[l]{[0.000922]}{1_inst}{1_inst}[1]
+\setlength{\levelheight}{\slopeB}
+\mess{8\_TCP\_FIN\_ACK\_SEQ\_403\_ACK\_446\_}{1_inst}[0.3]{0_inst}[1]
+\setlength{\levelheight}{\levelA}
+\nextlevel
+
+\setlength{\levelheight}{\timeIntervalSlopeB}
+\measure[l]{[0.000126]}{0_inst}{0_inst}[1]
+\setlength{\levelheight}{\timeIntervalSlopeC}
+\measure[l]{[0.001048]}{0_inst}{1_inst}[1]
+\mess{9\_TCP\_FIN\_ACK\_SEQ\_446\_ACK\_404\_2\_packets\_}{0_inst}[0.3]{1_inst}[1]
+\setlength{\levelheight}{\timeIntervalSlopeA}
+\measure[l]{[3.8e-005]}{1_inst}{1_inst}[1]
+\nextlevel
+
+\setlength{\levelheight}{\slopeC}
+\mess{10\_TCP\_ACK\_SEQ\_404\_ACK\_447\_}{1_inst}[0.3]{0_inst}[1]
+\setlength{\levelheight}{\levelA}
+\nextlevel
+
+\measure[l]{[0.00096]}{0_inst}{0_inst}[1]
+\nextlevel
+
+\end{msc}
+\end{document}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <xb...@us...> - 2013-10-11 09:27:09
|
Revision: 1864
http://sourceforge.net/p/scstudio/code/1864
Author: xborza
Date: 2013-10-11 09:27:00 +0000 (Fri, 11 Oct 2013)
Log Message:
-----------
/trunk merged with with ondra/conditions branch
Modified Paths:
--------------
trunk/doc/help/CMakeLists.txt
trunk/doc/help/frontend/automatic_drawing.body.htm
trunk/src/check/localchoice/local_choice_checker.cpp
trunk/src/check/localchoice/local_choice_checker.h
trunk/src/check/order/acyclic_checker.cpp
trunk/src/check/order/acyclic_checker.h
trunk/src/check/order/fifo_checker.cpp
trunk/src/check/order/fifo_checker.h
trunk/src/check/pseudocode/causal_closure_initiator.cpp
trunk/src/check/pseudocode/causal_closure_initiator.h
trunk/src/check/pseudocode/communication_graph.cpp
trunk/src/check/pseudocode/communication_graph.h
trunk/src/check/pseudocode/msc_duplicators.cpp
trunk/src/check/pseudocode/msc_duplicators.h
trunk/src/check/pseudocode/utils.h
trunk/src/check/pseudocode/visual_closure_initiator.cpp
trunk/src/check/pseudocode/visual_closure_initiator.h
trunk/src/check/race/footprint.cpp
trunk/src/check/race/footprint.h
trunk/src/check/race/race_checker.cpp
trunk/src/check/race/race_checker.h
trunk/src/check/time/constraint_syntax.cpp
trunk/src/check/time/hmsc_all_paths.cpp
trunk/src/check/time/hmsc_all_paths.h
trunk/src/check/time/module.cpp
trunk/src/check/time/pcap_time.cpp
trunk/src/check/time/tightening.cpp
trunk/src/check/time/tightening.h
trunk/src/check/time/time_consistency.h
trunk/src/check/time/time_pseudocode.cpp
trunk/src/check/time/time_pseudocode.h
trunk/src/check/time/time_trace_race.h
trunk/src/check/time/traverse_erase.cpp
trunk/src/check/time/traverse_erase.h
trunk/src/data/CMakeLists.txt
trunk/src/data/Z120/Context.cpp
trunk/src/data/Z120/Context_Impl.h
trunk/src/data/Z120/z120.h
trunk/src/data/Z120/z120_save.cpp
trunk/src/data/beautify/layout_optimizer.cpp
trunk/src/data/beautify/time_transformer.cpp
trunk/src/data/dfs_area_traverser.cpp
trunk/src/data/dfs_area_traverser.h
trunk/src/data/dfs_events_traverser.cpp
trunk/src/data/dfs_events_traverser.h
trunk/src/data/dfs_instance_events_traverser.cpp
trunk/src/data/dfs_instance_events_traverser.h
trunk/src/data/engmann/engmann.cpp
trunk/src/data/exporttex/exportTex.cpp
trunk/src/data/modelchecking/divine.cpp
trunk/src/data/modelchecking/divine.h
trunk/src/data/msc/BMsc.cpp
trunk/src/data/msc/BMsc.h
trunk/src/data/msc/Condition.h
trunk/src/data/msc/ConditionNode.cpp
trunk/src/data/msc/ConditionNode.h
trunk/src/data/msc/CoregionArea.cpp
trunk/src/data/msc/CoregionArea.h
trunk/src/data/msc/CoregionEventRelation.h
trunk/src/data/msc/Event.cpp
trunk/src/data/msc/Event.h
trunk/src/data/msc/EventArea.cpp
trunk/src/data/msc/EventArea.h
trunk/src/data/msc/EventTmpl.h
trunk/src/data/msc/Instance.cpp
trunk/src/data/msc/Instance.h
trunk/src/data/msc/LocalAction.h
trunk/src/data/msc/MessageEvent.cpp
trunk/src/data/msc/MessageEvent.h
trunk/src/data/msc/MscMessage.h
trunk/src/data/msc/StrictOrderArea.cpp
trunk/src/data/msc/StrictOrderArea.h
trunk/src/data/msc/time/TimeRelationEvent.cpp
trunk/src/data/msc/time/TimeRelationEvent.h
trunk/src/data/msc.h
trunk/src/data/msc_types.h
trunk/src/data/mscgen/MscgenContext.cpp
trunk/src/data/pcap/pcap_handler.cpp
trunk/src/data/pcap/pcap_handler.h
trunk/src/data/time_relevant_ordering/dfs_backward_traverser.cpp
trunk/src/data/time_relevant_ordering/dfs_backward_traverser.h
trunk/src/data/time_relevant_ordering/time_order_optimizer.cpp
trunk/src/data/time_relevant_ordering/time_order_optimizer.h
trunk/src/data/time_relevant_ordering/time_relevant_ordering.cpp
trunk/src/data/time_relevant_ordering/time_relevant_ordering.h
trunk/src/membership/diff_impl.cpp
trunk/src/membership/membership_additional.cpp
trunk/src/membership/membership_additional.h
trunk/src/membership/membership_alg.cpp
trunk/src/membership/membership_base.h
trunk/src/membership/membership_time.cpp
trunk/src/montecarlo/montecarlo.cpp
trunk/src/montecarlo/montecarlo.h
trunk/src/view/visio/addon/extract.cpp
trunk/src/view/visio/addon/extract.h
trunk/src/view/visio/addon/visualize.cpp
trunk/src/view/visio/addon/visualize.h
trunk/tests/acyclic_checker_test.cpp
trunk/tests/bmsc_matrix_converter_test.cpp
trunk/tests/bmsc_tightening_test.cpp
trunk/tests/constrain_check_test.cpp
trunk/tests/exporttex_position_test/exporttex_position_test.cpp
trunk/tests/fifo_checker_test.cpp
trunk/tests/hmsc_all_paths_test.cpp
trunk/tests/local_choice_checker_test.cpp
trunk/tests/max_tightener_test.cpp
trunk/tests/race_checker_test.cpp
trunk/tests/tighten_hmsc_test.cpp
trunk/tests/tighten_msc_test.cpp
trunk/tests/time/time_race/CMakeLists.txt
trunk/tests/universal_boundedness_checker_test.cpp
Added Paths:
-----------
trunk/src/data/msc/Condition.cpp
trunk/src/data/msc/ConditionEvent.h
trunk/src/data/msc/LocalAction.cpp
trunk/src/data/msc/LocalActionEvent.h
trunk/tests/time/time_race/race_cond_neg1.mpr
trunk/tests/time/time_race/race_cond_neg1.mpr.result
trunk/tests/time/time_race/race_cond_neg1.vsd
trunk/tests/time/time_race/race_cond_neg2.mpr
trunk/tests/time/time_race/race_cond_neg2.mpr.result
trunk/tests/time/time_race/race_cond_neg2.vsd
trunk/tests/time/time_race/race_cond_pos1.mpr
trunk/tests/time/time_race/race_cond_pos1.vsd
trunk/tests/time/time_race/race_cond_pos2.mpr
trunk/tests/time/time_race/race_cond_pos2.vsd
trunk/tests/time/time_race/race_cond_pos3.mpr
trunk/tests/time/time_race/race_cond_pos3.vsd
Removed Paths:
-------------
trunk/src/data/msc/MscMessage.cpp
Property Changed:
----------------
trunk/doc/help/frontend/
trunk/src/data/msc/EventArea.cpp
trunk/src/data/msc/MessageEvent.h
trunk/src/data/msc/StrictOrderArea.cpp
Modified: trunk/doc/help/CMakeLists.txt
===================================================================
--- trunk/doc/help/CMakeLists.txt 2013-09-26 12:48:24 UTC (rev 1863)
+++ trunk/doc/help/CMakeLists.txt 2013-10-11 09:27:00 UTC (rev 1864)
@@ -18,7 +18,6 @@
fifo/fifo.html
frontend/automatic_drawing.html
frontend/flip_message_direction.html
- frontend/message_jumping.html
frontend/message_numbering.html
frontend/settings.html
frontend/shape_selection.html
Index: trunk/doc/help/frontend
===================================================================
--- trunk/doc/help/frontend 2013-09-26 12:48:24 UTC (rev 1863)
+++ trunk/doc/help/frontend 2013-10-11 09:27:00 UTC (rev 1864)
Property changes on: trunk/doc/help/frontend
___________________________________________________________________
Added: svn:global-ignores
## -0,0 +1 ##
+message_jumping.body.htm
Modified: trunk/doc/help/frontend/automatic_drawing.body.htm
===================================================================
--- trunk/doc/help/frontend/automatic_drawing.body.htm 2013-09-26 12:48:24 UTC (rev 1863)
+++ trunk/doc/help/frontend/automatic_drawing.body.htm 2013-10-11 09:27:00 UTC (rev 1864)
@@ -75,11 +75,15 @@
</p>
<ul>
<li>
- if there are no instances selected, all instances on the page are taken (there have to be at least 2 instances on the page);
+ if there are no instances selected, all instances on the page are taken;
</li>
<li>
- otherwise, all selected instances (at least 2) are taken into account.
+ if there is exactly one instance selected, then SCStudio waits for
+ another instance to be selected;
</li>
+ <li>
+ otherwise, all selected instances are taken into account.
+ </li>
</ul>
From all of these instances, the leftmost and the rightmost instances are
recognized as the first and last instance in the message sequence. (During
Modified: trunk/src/check/localchoice/local_choice_checker.cpp
===================================================================
--- trunk/src/check/localchoice/local_choice_checker.cpp 2013-09-26 12:48:24 UTC (rev 1863)
+++ trunk/src/check/localchoice/local_choice_checker.cpp 2013-10-11 09:27:00 UTC (rev 1864)
@@ -67,7 +67,7 @@
current_node->set_attribute(LocalChoiceChecker::lc_nip_attribute, nip);
}
-void BMscInitListener::on_white_event_found(MessageEvent *e)
+void BMscInitListener::on_white_event_found(Event *e)
{
if(m_first) //Still looking for a possibly first event in the instance
{
@@ -81,7 +81,8 @@
{
if(e->is_minimal())
{
- if(e->is_send())
+ MessageEvent* me = dynamic_cast<MessageEvent*>(e);
+ if(me != NULL && me->is_send())
m_mep = true;
}
else //the event is not minimal
@@ -95,7 +96,8 @@
m_first = false;
if(m_first_coregion == NULL)
{
- if(e->is_send())
+ MessageEvent* me = dynamic_cast<MessageEvent*>(e);
+ if(me != NULL && me->is_send())
m_mep = true;
}
}
Modified: trunk/src/check/localchoice/local_choice_checker.h
===================================================================
--- trunk/src/check/localchoice/local_choice_checker.h 2013-09-26 12:48:24 UTC (rev 1863)
+++ trunk/src/check/localchoice/local_choice_checker.h 2013-10-11 09:27:00 UTC (rev 1864)
@@ -105,7 +105,7 @@
bool m_mep;
CoregionArea *m_first_coregion;
public:
- void on_white_event_found(MessageEvent *e);
+ void on_white_event_found(Event *e);
BMscInitListener(void)
:m_idle(true),m_first(true),m_mep(false), m_first_coregion(NULL)
{}
Modified: trunk/src/check/order/acyclic_checker.cpp
===================================================================
--- trunk/src/check/order/acyclic_checker.cpp 2013-09-26 12:48:24 UTC (rev 1863)
+++ trunk/src/check/order/acyclic_checker.cpp 2013-10-11 09:27:00 UTC (rev 1864)
@@ -57,8 +57,8 @@
BMscDuplicator duplicator;
for(it = bmsc->get_instances().begin(); it != bmsc->get_instances().end(); it++)
{
- const MessageEventPList min_events = (*it)->get_minimal_events();
- for (MessageEventPList::const_iterator i = min_events.begin(); i != min_events.end(); ++i)
+ const EventPList min_events = (*it)->get_minimal_events();
+ for (EventPList::const_iterator i = min_events.begin(); i != min_events.end(); ++i)
{
ConnectionNode* node = (*i)->get_attribute<ConnectionNode*>("ACC_node", NULL);
start->add_successor(node);
@@ -80,7 +80,7 @@
cono = dynamic_cast<ConnectionNode*>((*eit));
if(cono)
{
- MessageEventP e = cono->get_attribute<MessageEventP>("ACC_event", NULL);
+ EventP e = cono->get_attribute<EventP>("ACC_event", NULL);
duplicator.get_copy(e)->set_marked(MARKED);
}
nore = dynamic_cast<NodeRelation*>((*eit));
Modified: trunk/src/check/order/acyclic_checker.h
===================================================================
--- trunk/src/check/order/acyclic_checker.h 2013-09-26 12:48:24 UTC (rev 1863)
+++ trunk/src/check/order/acyclic_checker.h 2013-10-11 09:27:00 UTC (rev 1864)
@@ -49,7 +49,7 @@
AssignHMscListener(HMsc *hmsc)
:m_hmsc(hmsc)
{}
- void on_white_event_found(MessageEvent *e)
+ void on_white_event_found(Event *e)
{
ConnectionNode *node = new ConnectionNode();
m_hmsc->add_node(node);
@@ -75,7 +75,7 @@
class InstanceSuccessors: public EventSuccessorListener
{
public:
- void on_event_successor(MessageEvent *event, MessageEvent *successor)
+ void on_event_successor(Event *event, Event *successor)
{
ConnectionNode *first, *second;
first = event->get_attribute("ACC_node", second);
@@ -87,7 +87,7 @@
class CleanHMscListener: public WhiteEventFoundListener
{
public:
- void on_white_event_found(MessageEvent *e)
+ void on_white_event_found(Event *e)
{
ConnectionNode *node, *dummy;
NodeRelation* nr;
@@ -98,7 +98,7 @@
nr->remove_attribute<MscMessage*>("ACC_message");
e->remove_attribute<NodeRelation*>("ACC_relation");
}
- node->remove_attribute<MessageEvent*>("ACC_event");
+ node->remove_attribute<Event*>("ACC_event");
e->remove_attribute<ConnectionNode*>("ACC_node");
}
};
Modified: trunk/src/check/order/fifo_checker.cpp
===================================================================
--- trunk/src/check/order/fifo_checker.cpp 2013-09-26 12:48:24 UTC (rev 1863)
+++ trunk/src/check/order/fifo_checker.cpp 2013-10-11 09:27:00 UTC (rev 1864)
@@ -40,6 +40,7 @@
{
//event is surely complete
MessageEvent* copy = duplicator.get_event_copy(events[i]);
+ assert(copy->get_complete_message() != NULL); // better way of saying something is sure
copy->get_complete_message()->set_marked(MARKED);
}
return new_bmsc;
@@ -53,8 +54,7 @@
DFSEventsTraverser traverser;
traverser.add_event_finished_listener(&topology_listener);
traverser.traverse(bmsc);
- MessageEventPVector topology(topology_listener.get_topology().size());
- topology.assign(
+ EventPVector topology(
topology_listener.get_topology().begin(),
topology_listener.get_topology().end()
);
@@ -65,13 +65,16 @@
BoolVector& closure_e = closure_initiator.get_visual_closure(topology[e]);
for(size_t f=0; f<topology.size(); f++)
{
- if(topology[e]->is_receive() && topology[f]->is_receive() &&
- topology[e]->is_matched() && topology[f]->is_matched() &&
- mapper->same_channel(topology[e],topology[f]) && closure_e[f] &&
- !closure_initiator.get_visual_closure(topology[e]->get_matching_event())[
- closure_initiator.get_topology_index(topology[f]->get_matching_event())])
+ MessageEventP me = dynamic_cast<MessageEventP>(topology[e]);
+ MessageEventP mf = dynamic_cast<MessageEventP>(topology[f]);
+
+ if(me != NULL && mf != NULL &&
+ me->is_receive() && mf->is_receive() &&
+ me->is_matched() && mf->is_matched() &&
+ mapper->same_channel(me, mf) && closure_e[f] &&
+ !closure_initiator.get_visual_closure(me->get_matching_event())[closure_initiator.get_topology_index(mf->get_matching_event())])
{
- result.push_back(create_counter_example(bmsc,topology[e],topology[f]));
+ result.push_back(create_counter_example(bmsc, me, mf));
}
}
}
@@ -83,7 +86,7 @@
{
while(!m_modified_events.empty())
{
- MessageEvent* e = m_modified_events.top();
+ Event* e = m_modified_events.top();
m_modified_events.pop();
e->remove_attribute<size_t>(channel_id_attribute);
}
Modified: trunk/src/check/order/fifo_checker.h
===================================================================
--- trunk/src/check/order/fifo_checker.h 2013-09-26 12:48:24 UTC (rev 1863)
+++ trunk/src/check/order/fifo_checker.h 2013-10-11 09:27:00 UTC (rev 1864)
@@ -55,7 +55,7 @@
/**
* Events with modified dynamic attributes
*/
- MessageEventPStack m_modified_events;
+ EventPStack m_modified_events;
BMscPtr create_counter_example(BMscPtr& bmsc, MessageEvent* receive1, MessageEvent* receive2);
@@ -65,7 +65,7 @@
* An e1 is supposed to be before e2. If this holds true is returned, false
* otherwise.
*/
- bool consistent_order(VisualClosureInitiator& initiator, MessageEvent* e1, MessageEvent* e2)
+ bool consistent_order(VisualClosureInitiator& initiator, Event* e1, Event* e2)
{
BoolVector& e1_closure = initiator.get_visual_closure(e1);
size_t e2_index = initiator.get_topology_index(e2);
@@ -130,7 +130,7 @@
/**
* Setter of channel id attribute of message.
*/
- void set_channel_id(MessageEvent* e, size_t id)
+ void set_channel_id(Event* e, size_t id)
{
e->set_attribute<size_t>(channel_id_attribute,id);
}
@@ -138,7 +138,7 @@
/**
* Getter of channel id attribute of m.
*/
- size_t get_channel_id(MessageEvent* e)
+ size_t get_channel_id(Event* e)
{
return e->get_attribute<size_t>(channel_id_attribute,0);
}
@@ -148,9 +148,10 @@
*
* MessageEvent should be checked if it is receive event and has matching event.
*/
- static bool should_be_checked(MessageEvent* e)
+ static bool should_be_checked(Event* e)
{
- return e->is_receive() && e->is_matched();
+ MessageEvent* me = dynamic_cast<MessageEvent*>(e);
+ return (me != NULL && me->is_receive() && me->is_matched());
}
};
Modified: trunk/src/check/pseudocode/causal_closure_initiator.cpp
===================================================================
--- trunk/src/check/pseudocode/causal_closure_initiator.cpp 2013-09-26 12:48:24 UTC (rev 1863)
+++ trunk/src/check/pseudocode/causal_closure_initiator.cpp 2013-10-11 09:27:00 UTC (rev 1864)
@@ -24,23 +24,22 @@
{
while(!m_modified_events.empty())
{
- MessageEvent* e = m_modified_events.top();
+ Event* e = m_modified_events.top();
e->remove_attribute<BoolVector>(m_causal_closure_attribute);
m_modified_events.pop();
}
}
-void CausalClosureInitiator::initialize(const MessageEventPVector& events,
+void CausalClosureInitiator::initialize(const EventPVector& events,
VisualClosureInitiator& visual_closure_init, ChannelMapperPtr mapper)
{
//initialize matrix
size_t events_count = events.size();
- MessageEventPList::const_iterator i;
//closure[x][y]==true <=> x << y
std::vector<BoolVector*> closure(events_count);
for(size_t i=0;i<events_count;i++)
{
- MessageEvent* i_event = events[i];
+ Event* i_event = events[i];
BoolVector& causal_closure = get_causal_closure(i_event);
causal_closure.resize(events_count,false);
closure[i] = &causal_closure;
@@ -48,33 +47,40 @@
//for any event e: e << e
causal_closure[i] = true;
//send event << receive matching event
- if(i_event->is_send() && i_event->is_matched())
- causal_closure[visual_closure_init.get_topology_index(
- i_event->get_matching_event())] = true;
+ MessageEvent* i_msg_event = dynamic_cast<MessageEvent*>(i_event);
+ if(i_msg_event != NULL && i_msg_event->is_send() && i_msg_event->is_matched())
+ {
+ size_t topo_index = visual_closure_init.get_topology_index(i_msg_event->get_matching_event());
+ causal_closure[topo_index] = true;
+ }
}
for(size_t i=0;i<events_count;i++)
{
- MessageEvent* i_event = events[i];
+ Event* i_event = events[i];
BoolVector& i_causal_closure = *closure[i];
BoolVector& i_visual_closure = visual_closure_init.get_visual_closure(i_event);
for(size_t j = 0; j < events_count; j++)
{
- MessageEvent* j_event = events[j];
- //i_event and j_event are from the same instance, j_event is send event and
- //i_event < j_event
+ Event* j_event = events[j];
+ MessageEvent* j_msg_event = dynamic_cast<MessageEvent*>(j_event);
+
if(i_event->get_instance()==j_event->get_instance() &&
- !j_event->is_receive() && i_visual_closure[j])
+ j_msg_event != NULL && !j_msg_event->is_receive() && i_visual_closure[j])
{
+ //i_event and j_event are from the same instance, j_event is send event and
+ //i_event < j_event
i_causal_closure[j] = true;
}
- //i_event and j_event are send events of the same channel and i_event<j_event
- if(i_event->is_send() && i_event->is_matched() &&
- j_event->is_send() && j_event->is_matched() &&
- mapper->same_channel(i_event,j_event) && i_visual_closure[j])
+
+ MessageEvent* i_msg_event = dynamic_cast<MessageEvent*>(i_event);
+ if(i_msg_event != NULL && j_msg_event != NULL &&
+ i_msg_event->is_send() && i_msg_event->is_matched() &&
+ j_msg_event->is_send() && j_msg_event->is_matched() &&
+ mapper->same_channel(i_msg_event,j_msg_event) && i_visual_closure[j])
{
- get_causal_closure(i_event->get_matching_event())[
- visual_closure_init.get_topology_index(j_event->get_matching_event())
- ] = true;
+ //i_event and j_event are send events of the same channel and i_event<j_event
+ size_t topo_index = visual_closure_init.get_topology_index(j_msg_event->get_matching_event());
+ get_causal_closure(i_msg_event->get_matching_event())[topo_index] = true;
}
}
}
Modified: trunk/src/check/pseudocode/causal_closure_initiator.h
===================================================================
--- trunk/src/check/pseudocode/causal_closure_initiator.h 2013-09-26 12:48:24 UTC (rev 1863)
+++ trunk/src/check/pseudocode/causal_closure_initiator.h 2013-10-11 09:27:00 UTC (rev 1864)
@@ -35,7 +35,7 @@
/**
* Used for cleaning up attributes.
*/
- MessageEventPStack m_modified_events;
+ EventPStack m_modified_events;
/**
* Name of causal closure attribute.
@@ -75,7 +75,7 @@
/**
* Getter of causal closure attribute of e.
*/
- BoolVector& get_causal_closure(MessageEvent* e)
+ BoolVector& get_causal_closure(Event* e)
{
static BoolVector empty(1,false);
return e->get_attribute<BoolVector>(m_causal_closure_attribute,empty);
@@ -90,7 +90,7 @@
* @param events - topologically sorted events used for visual_closure_init's initialization
* @param visual_closure_init - initialized VisualClosureInitiator
*/
- void initialize(const MessageEventPVector& events,
+ void initialize(const EventPVector& events,
VisualClosureInitiator& visual_closure_init, ChannelMapperPtr mapper);
/**
Modified: trunk/src/check/pseudocode/communication_graph.cpp
===================================================================
--- trunk/src/check/pseudocode/communication_graph.cpp 2013-09-26 12:48:24 UTC (rev 1863)
+++ trunk/src/check/pseudocode/communication_graph.cpp 2013-10-11 09:27:00 UTC (rev 1864)
@@ -20,17 +20,16 @@
const std::string CommunicationGraph::lexical_order_attribute = "lexical_order";
-void CommunicationGraphListener::on_white_event_found(MessageEvent *e)
+void CommunicationGraphListener::on_white_event_found(Event *e)
{
unsigned from, to;
bool status;
-
- if(e->is_send())
+ MessageEvent* me = dynamic_cast<MessageEvent*>(e);
+
+ if(me != NULL && me->is_send() && me->is_matched())
{
- if(!e->is_matched())
- return;
- from = e->get_instance()->get_attribute(m_index_attribute, 0, status);
- to = e->get_matching_event()->get_instance()->get_attribute(m_index_attribute, 0, status);
+ from = me->get_instance()->get_attribute(m_index_attribute, 0, status);
+ to = me->get_matching_event()->get_instance()->get_attribute(m_index_attribute, 0, status);
m_graph.at(from).at(to) += 1;
}
}
Modified: trunk/src/check/pseudocode/communication_graph.h
===================================================================
--- trunk/src/check/pseudocode/communication_graph.h 2013-09-26 12:48:24 UTC (rev 1863)
+++ trunk/src/check/pseudocode/communication_graph.h 2013-10-11 09:27:00 UTC (rev 1864)
@@ -88,7 +88,7 @@
Graph& m_graph;
std::string m_index_attribute;
public:
- void on_white_event_found(MessageEvent *e);
+ void on_white_event_found(Event *e);
CommunicationGraphListener(Graph& destination, std::string index_attribute)
:m_graph(destination), m_index_attribute(index_attribute)
{}
Modified: trunk/src/check/pseudocode/msc_duplicators.cpp
===================================================================
--- trunk/src/check/pseudocode/msc_duplicators.cpp 2013-09-26 12:48:24 UTC (rev 1863)
+++ trunk/src/check/pseudocode/msc_duplicators.cpp 2013-10-11 09:27:00 UTC (rev 1864)
@@ -105,12 +105,6 @@
return new_bmsc;
}
-MessageEvent* BMscDuplicator::get_event_copy(MessageEvent* e)
-{
- MscElement* elem = get_copy(e);
- return dynamic_cast<MessageEvent*>(elem);
-}
-
BMscDuplicator::~BMscDuplicator()
{
}
@@ -369,7 +363,7 @@
}
-void EventsCreatorListener::on_white_event_found(MessageEvent* e)
+void EventsCreatorListener::on_white_event_found(Event* e)
{
if(m_last_instance!=e->get_instance())
{
@@ -395,14 +389,14 @@
m_last_area = e->get_area();
}
- MessageEventPtr new_e = new MessageEvent(e);
+ EventPtr new_e = e->clone();
m_duplicator->set_copy(e,new_e.get());
m_last_new_area->add_event(new_e);
create_successor(e);
}
-MessageEvent* EventsCreatorListener::get_preceding_event()
+Event* EventsCreatorListener::get_preceding_event()
{
const MscElementPList& elements = m_traverser->get_reached_elements();
if(elements.size()>1)
@@ -413,31 +407,31 @@
if(dynamic_cast<CoregionEventRelation*>(*i))
{
i--;
- return dynamic_cast<MessageEvent*>(*i);
+ return dynamic_cast<Event*>(*i);
}
}
return NULL;
}
-void EventsCreatorListener::on_gray_event_found(MessageEvent* e)
+void EventsCreatorListener::on_gray_event_found(Event* e)
{
create_successor(e);
}
-void EventsCreatorListener::on_black_event_found(MessageEvent* e)
+void EventsCreatorListener::on_black_event_found(Event* e)
{
create_successor(e);
}
-void EventsCreatorListener::create_successor(MessageEvent* e)
+void EventsCreatorListener::create_successor(Event* e)
{
- MessageEvent* coreg_new = m_duplicator->get_event_copy(e);
+ Event* coreg_new = m_duplicator->get_event_copy(e);
if(coreg_new->in_coregion_area())
{
- MessageEvent* preceding = get_preceding_event();
+ Event* preceding = get_preceding_event();
if(preceding)
{
- MessageEvent* preceding_new = m_duplicator->get_event_copy(preceding);
+ Event* preceding_new = m_duplicator->get_event_copy(preceding);
CoregionArea* coregion = dynamic_cast<CoregionArea*>(preceding_new->get_area());
coregion->add_successor_rel(preceding_new, coreg_new);
}
@@ -452,25 +446,29 @@
}
-void MessagesCreatorListener::on_white_event_found(MessageEvent* e)
+void MessagesCreatorListener::on_white_event_found(Event* e)
{
- MessageEvent* event_copy = m_duplicator->get_event_copy(e);
- if(e->is_matched())
+ MessageEvent* me = dynamic_cast<MessageEvent*>(e);
+ if (me == NULL)
+ return; // events of other types ignored
+
+ MessageEvent* event_copy = m_duplicator->get_event_copy(me);
+ if(me->is_matched())
{
- if(e->is_send())
+ if(me->is_send())
{
- MessageEvent* matching_copy = m_duplicator->get_event_copy(e->get_matching_event());
- MscMessagePtr complete = new CompleteMessage(event_copy,matching_copy,e->get_complete_message().get());
+ MessageEvent* matching_copy = m_duplicator->get_event_copy(me->get_matching_event());
+ MscMessagePtr complete = new CompleteMessage(event_copy,matching_copy,me->get_complete_message().get());
event_copy->set_message(complete);
matching_copy->set_message(complete);
- m_duplicator->set_copy(e->get_message().get(),complete.get());
+ m_duplicator->set_copy(me->get_message().get(),complete.get());
}
}
else
{
- MscMessagePtr incomplete = new IncompleteMessage(e->get_incomplete_message().get());
+ MscMessagePtr incomplete = new IncompleteMessage(me->get_incomplete_message().get());
event_copy->set_message(incomplete);
- m_duplicator->set_copy(e->get_message().get(),incomplete.get());
+ m_duplicator->set_copy(me->get_message().get(),incomplete.get());
}
}
@@ -482,7 +480,7 @@
}
-void TimeRelationCreatorListener::on_white_event_found(MessageEvent* e)
+void TimeRelationCreatorListener::on_white_event_found(Event* e)
{
TimeRelationEventPtrList relations = e->get_time_relations();
TimeRelationEventPtrList::iterator it;
@@ -491,16 +489,15 @@
if((*it)->get_event_a()!=e)
continue;
- MessageEvent* a_copy = m_duplicator->get_event_copy((*it)->get_event_a());
- MessageEvent* b_copy = m_duplicator->get_event_copy((*it)->get_event_b());
- TimeRelationEventPtr relation = new TimeRelationEvent((*it).get());
+ Event* a_copy = m_duplicator->get_event_copy((*it)->get_event_a());
+ Event* b_copy = m_duplicator->get_event_copy((*it)->get_event_b());
+ TimeRelationEventPtr relation = new TimeRelationEvent(it->get());
relation->glue_events(a_copy, b_copy);
m_duplicator->set_copy((*it).get(),relation.get());
if((it->get())->get_marked() == MARKED)
relation->set_marked();
}
-
}
////////////////////////////////////////////////////////////////////////
Modified: trunk/src/check/pseudocode/msc_duplicators.h
===================================================================
--- trunk/src/check/pseudocode/msc_duplicators.h 2013-09-26 12:48:24 UTC (rev 1863)
+++ trunk/src/check/pseudocode/msc_duplicators.h 2013-10-11 09:27:00 UTC (rev 1864)
@@ -42,6 +42,7 @@
virtual ~Duplicator();
+ // TODO: make this (and possibly others) a template method returning the same type it accepts, so that dynamic casts are not necessary
MscElement*& get_copy(MscElement* e);
SuccessorNode* get_copy(SuccessorNode* s)
@@ -118,17 +119,17 @@
DFSAreaTraverser* m_traverser;
- void create_successor(MessageEvent* e);
+ void create_successor(Event* e);
- MessageEvent* get_preceding_event();
+ Event* get_preceding_event();
public:
EventsCreatorListener(BMscDuplicator* duplicator, DFSAreaTraverser* traverser, BMsc* bmsc);
- void on_white_event_found(MessageEvent* e);
- void on_gray_event_found(MessageEvent* e);
- void on_black_event_found(MessageEvent* e);
+ void on_white_event_found(Event* e);
+ void on_gray_event_found(Event* e);
+ void on_black_event_found(Event* e);
};
@@ -142,7 +143,7 @@
MessagesCreatorListener(BMscDuplicator* duplicator);
- void on_white_event_found(MessageEvent* e);
+ void on_white_event_found(Event* e);
};
@@ -157,7 +158,7 @@
TimeRelationCreatorListener(BMscDuplicator* duplicator);
- void on_white_event_found(MessageEvent* e);
+ void on_white_event_found(Event* e);
};
@@ -180,13 +181,19 @@
~BMscDuplicator();
- MessageEvent* get_event_copy(MessageEvent* e);
+ template <typename EventType>
+ EventType* get_event_copy(EventType* e)
+ {
+ MscElement* elem = get_copy(e);
+ EventType* copy = dynamic_cast<EventType*>(el...
[truncated message content] |
|
From: <xf...@us...> - 2013-12-05 14:13:53
|
Revision: 1878
http://sourceforge.net/p/scstudio/code/1878
Author: xfarmad
Date: 2013-12-05 14:13:49 +0000 (Thu, 05 Dec 2013)
Log Message:
-----------
basic MSC colors
Modified Paths:
--------------
trunk/make_build.bat
trunk/src/data/CMakeLists.txt
trunk/src/data/exporttex/exportTex.cpp
trunk/src/data/msc/CoregionArea.cpp
trunk/src/data/msc/CoregionArea.h
trunk/src/data/msc/MscElement.h
trunk/src/data/msc.h
trunk/src/data/msc_types.h
trunk/src/view/visio/addon/extract.cpp
trunk/src/view/visio/addon/extract.h
trunk/src/view/visio/addon/shapeutils.cpp
trunk/src/view/visio/addon/shapeutils.h
trunk/src/view/visio/addon/visualize.cpp
trunk/src/view/visio/addon/visualize.h
Added Paths:
-----------
trunk/src/data/msc/MscColor.h
Modified: trunk/make_build.bat
===================================================================
--- trunk/make_build.bat 2013-11-28 23:27:31 UTC (rev 1877)
+++ trunk/make_build.bat 2013-12-05 14:13:49 UTC (rev 1878)
@@ -8,8 +8,8 @@
set ACTION=build
REM set the following to Release or to Debug
-set TARGET=Release
-rem set TARGET=Debug
+rem set TARGET=Release
+set TARGET=Debug
echo %ACTION% in %TARGET% mode into scstudio-setup-%VERSION%.exe
echo(
@@ -19,11 +19,11 @@
REM Even explicitelly specified address is without qoutes here.
set PROJECT_TRUNK_DIR=%CD%
REM Contrary to the previous one, others are in qoutes!
-set DEVENV_COMMAND="C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE\devenv.com"
+set DEVENV_COMMAND="C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\devenv.com"
set CMAKE_EXE="C:\Program Files (x86)\CMake 2.8\bin\cmake.exe"
set CMAKE_EXE_GUI="C:\Program Files (x86)\CMake 2.8\bin\cmake-gui.exe"
-set NSIS_EXE="C:\Program Files\NSIS\makensis.exe"
-set SIGN_TOOL_EXE="C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin\signtool.exe"
+set NSIS_EXE="C:\Program Files (x86)\NSIS\makensis.exe"
+set SIGN_TOOL_EXE="C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\signtool.exe"
echo Cmake...
IF "%ACTION%"=="rebuild" (
Modified: trunk/src/data/CMakeLists.txt
===================================================================
--- trunk/src/data/CMakeLists.txt 2013-11-28 23:27:31 UTC (rev 1877)
+++ trunk/src/data/CMakeLists.txt 2013-12-05 14:13:49 UTC (rev 1878)
@@ -75,6 +75,7 @@
msc/LocalAction.h
msc/LocalActionEvent.h
msc/Msc.h
+ msc/MscColor.h
msc/MscElement.h
msc/MscElementTmpl.h
msc/MscMessage.h
Modified: trunk/src/data/exporttex/exportTex.cpp
===================================================================
--- trunk/src/data/exporttex/exportTex.cpp 2013-11-28 23:27:31 UTC (rev 1877)
+++ trunk/src/data/exporttex/exportTex.cpp 2013-12-05 14:13:49 UTC (rev 1878)
@@ -48,6 +48,116 @@
typedef boost::shared_ptr<Coordinate> CoordinatePtr;
+class ColorMap{
+private:
+ std::map<MscColor,int> color_map;
+ MscColor m_last;
+ std::string m_name;
+ std::string m_description;
+ std::string m_length_name;
+public:
+
+ ColorMap()
+ {
+
+ }
+
+ ColorMap(std::string name)
+ {
+ m_name.append(name);
+ }
+
+ void setName(std::string name)
+ {
+ m_name.clear();
+ m_name.append(name);
+ }
+
+ void setLengthName(std::string name)
+ {
+ m_length_name.clear();
+ m_length_name.append(name);
+ }
+
+ void setDescription(std::string description)
+ {
+ m_description.clear();
+ m_description.append(description);
+ }
+
+ void addColor(MscColor color)
+ {
+ if(color_map.find(color)==color_map.end())
+ {
+ color_map.insert( std::make_pair<MscColor,int>(color, color_map.size()));
+ }
+ }
+
+ std::string getId(MscColor color)
+ {
+ std::ostringstream result;
+ if(color_map.find(color)!=color_map.end())
+ {
+ result << m_name;
+ int range = 'Z' - 'A' + 1;
+ int identificator = color_map.find(color)->second;
+ std::string id;
+ do{
+ id.push_back(('A'+(identificator%range)));
+ identificator /= range;
+ }while(identificator != 0);
+ for(std::string::reverse_iterator it = id.rbegin(); it != id.rend(); it++)
+ {
+ result << *it;
+ }
+ }
+ else
+ {
+ throw std::runtime_error("ExportTex: Undefined color in diagram!");
+ }
+ return result.str();
+ }
+
+ std::string printOptParam(MscColor color){
+ std::ostringstream result;
+ result << "[" << getId(color) << "]";
+ return result.str();
+ }
+
+ std::string printColor(MscColor color){
+ std::ostringstream result;
+ if(color!=m_last)
+ {
+ result << "\\mscsetcolor{" << getId(color) << "}" << std::endl;
+ m_last = color;
+ }
+ return result.str();
+ }
+
+
+ std::string print()
+ {
+ std::ostringstream result;
+ if(!color_map.empty()){
+ result << m_description << std::endl;
+ double red, green, blue;
+ for(std::map<MscColor,int>::iterator it = color_map.begin(); it!=color_map.end(); it++)
+ {
+ it->first.getColorD(red,green,blue);
+ result << "\\definecolor{" << getId(it->first) << "}{rgb}{" << red << ", "
+ << green << ", " << blue << "}" << std::endl;
+ }
+ result << std::endl;
+ }
+
+ return result.str();
+ }
+
+ bool empty(){
+ return color_map.empty();
+ }
+};
+
class DistanceMap{
private:
//coordinate - size, int - number to distinguish names of sizes
@@ -299,6 +409,7 @@
DistanceMap m_instance_spacing_map;
DistanceMap m_slope_size_map;//! map of slope values
DistanceMap m_incomlete_mess_slope_map;
+ ColorMap m_colors;
std::list<std::pair<Coordinate,Coordinate> > m_slope_coordinates_map;//! list of (start,end) coordinates of slope
std::list<std::pair<Coordinate,Coordinate> > m_time_interval_slope_coordinates_map;//! list of (start,end) coordinates of slope
std::list<std::pair<Coordinate,Coordinate> > m_order_slope_coordinates_map;//! list of (start,end) coordinates of slope
@@ -334,38 +445,15 @@
return cor;
}
- void print_color(const MarkType& mark){
- if(mark == m_last_mark){
- //nothing to change
- return;
- }
- switch(mark)
- {
- case NONE: print_color_change("black"); break;
- case REMOVED:
- case MARKED: print_color_change("red"); break;
- case ADDED: print_color_change("green"); break;
- default: throw std::runtime_error("Error: unexpected behaviour");
- }
- m_last_mark = mark;
+ void print_color(const MscColor& color){
+ m_stream << m_colors.printColor(color);
}
- void print_opt_color(const MarkType& mark)
+ std::string print_opt_color(const MscColor& color)
{
- switch(mark)
- {
- case NONE: break;
- case REMOVED:
- case MARKED: m_stream << "[red]"; break;
- case ADDED: m_stream << "[green]"; break;
- default: throw std::runtime_error("Error: unexpected behaviour");
- }
+ return m_colors.printOptParam(color);
}
- void print_color_change(std::string color){
- m_stream << "\\mscsetcolor{" << color << "}" << std::endl;
- }
-
bool findPtr(MscElementPtrList list, MscElementPtr element)
{
for (MscElementPtrList::iterator nextIt = list.begin(); list.end() != nextIt ; nextIt++)
@@ -404,7 +492,7 @@
CoregEventRelPtrVector rels = coregion->get_successor_rels(event.get());
for(CoregEventRelPtrVector::const_iterator spos = rels.begin(); spos != rels.end(); spos++)
{
- print_color((*spos)->get_marked());
+ print_color((*spos)->get_color());
print_order(event, (*spos)->get_successor());
}
}
@@ -433,7 +521,7 @@
receiveY += Compare::round(coregion_receive_event->get_area()->get_begin_height());
}
receiveY += complete_message->get_receive_event()->get_instance()->get_line_begin().get_y();
- print_color(complete_message->get_marked());
+ print_color(complete_message->get_color());
m_stream << m_slope_size_map.printLength(sendY,receiveY,true);
m_stream << "\\mess{" << ExportTex::print_wchar(complete_message->get_label())
<< "}{"<< m_instance_id_map.get_id(inst_pos(complete_message->get_sender())) << "_inst}[0.3]{"
@@ -452,16 +540,12 @@
}
}
- //only complete message is printed on send event (receive event is skipped)
- //for all other items we can print color
- print_color(event->get_marked());
-
if (msg_event != NULL)
{
IncompleteMessagePtr incomplete_message = msg_event->get_incomplete_message();
if(incomplete_message != NULL)
{
- print_color(incomplete_message->get_marked());
+ print_color(incomplete_message->get_color());
//get_dot_position() distance from event
m_stream << m_lostfound_width_map.printLength(fabs(incomplete_message_width_corection(incomplete_message->get_dot_position().get_x())));
if(incomplete_message->is_lost())
@@ -482,6 +566,7 @@
if (act != NULL)
{
assert(lae->get_instance() != NULL);
+ print_color(act->get_color());
m_stream << m_local_action_width_map.printLength(act->get_width());
m_stream << m_local_action_height_map.printLength(act->get_height());
m_stream << "\\action*{" << ExportTex::print_wchar(act->get_statement()) << "}{" << m_instance_id_map.get_id(inst_pos(lae->get_instance())) << "_inst}" << std::endl;
@@ -494,6 +579,7 @@
if(cond != NULL)
{
assert(ce->get_instance() != NULL);
+ print_color(cond->get_color());
m_stream << m_local_condition_height_map.printLength(cond->get_height());
m_stream << m_local_condition_width_map.printLength(cond->get_width()/2);
m_stream << "\\condition*{" << ExportTex::print_wchar(cond->get_text()) << "}{" << m_instance_id_map.get_id(inst_pos(ce->get_instance())) << "_inst}" << std::endl;
@@ -511,10 +597,8 @@
Coordinate cor = coregionArea->get_begin_height() + coregionArea->get_instance()->get_line_begin().get_y();
if(Compare::equal(cor, coordinate))
{
- print_color(coregionArea->get_marked());
- m_stream << "\\regionstart{coregion}";
- print_opt_color(coregionArea->get_marked());
- m_stream << "{" << m_instance_id_map.get_id(inst_pos(coregionArea->get_instance())) << "_inst}"
+ m_stream << "\\regionstart{coregion}" << print_opt_color(coregionArea->get_color())
+ << "{" << m_instance_id_map.get_id(inst_pos(coregionArea->get_instance())) << "_inst}"
<< m_coregion_width_map.printOptParam(coregionArea->get_width()) << std::endl;
return;
}
@@ -583,7 +667,7 @@
for(CommentPtrSet::const_iterator cpos = event->get_comments().begin();
cpos != event->get_comments().end(); cpos++)
{
- print_color((*cpos)->get_marked());
+ print_color((*cpos)->get_color());
m_stream << m_comment_width_map.printLength(event->get_instance()->get_line_begin().get_x(),(*cpos)->get_position().get_x(),true);
m_stream << m_comment_slope_map.printLength((*cpos)->get_position().get_y(),event->get_position().get_y()+coordinate);
m_stream << "\\msccomment";
@@ -627,10 +711,8 @@
}
if(Compare::equal((*min)->get_line_begin().get_y(),first))
{
- print_color((*min)->get_marked());
m_stream << "\\declinst" << m_instance_width_map.printOptParam((*min)->get_width()) << "{" << m_instance_id_map.get_id(inst_pos((*min))) << "_inst}"
- << m_instance_height_map.printOptParam(3) << "{" << ExportTex::print_wchar((*min)->get_label()) << "}";
- print_opt_color((*min)->get_marked());
+ << m_instance_height_map.printOptParam(3) << "{" << ExportTex::print_wchar((*min)->get_label()) << "}" << print_opt_color((*min)->get_color());
m_stream << "{}" << std::endl;
}
else
@@ -655,8 +737,8 @@
{
m_stream << "\\create{}{}{" << m_instance_id_map.get_id(inst_pos(instance)) << "_inst}"
<< m_instance_width_map.printOptParam(instance->get_width()) << "{"
- << ExportTex::print_wchar(instance->get_label()) << "}" << m_instance_height_map.printOptParam(3) << "{}";
- print_opt_color(instance->get_marked());
+ << ExportTex::print_wchar(instance->get_label()) << "}" << m_instance_height_map.printOptParam(3) << "{}"
+ << print_opt_color(instance->get_color());
m_stream << std::endl;
return;
}
@@ -675,7 +757,7 @@
for(AbsoluteTimePtrList::const_iterator apos = absolute_times.begin();
apos != absolute_times.end(); apos++)
{
- print_color((*apos)->get_marked());
+ print_color((*apos)->get_color());
m_stream << m_absolutetime_width_map.printLength((*apos)->get_position().get_x(),event->get_instance()->get_line_begin().get_x(),true);
m_stream << m_absolutetime_slope_map.printLength((*apos)->get_position().get_y(),coordinate+event->get_position().get_y(),true);
m_stream << "\\mscmark[";
@@ -705,7 +787,7 @@
{
if((*rpos)->get_event_a()==event)
{
- print_color((*rpos)->get_marked());
+ print_color((*rpos)->get_color());
m_stream << m_timeinterval_slope_map.printLength(getTimeRelationSlope(*rpos));
m_stream << m_timeinterval_width_map.printLength(7);
m_stream << "\\measure[";
@@ -733,7 +815,7 @@
cpos != m_bmsc->get_comments().end(); cpos++)
{
//position is x = middle of comment, y = up side, width is width of whole comment
- print_color((*cpos)->get_marked());
+ print_color((*cpos)->get_color());
Coordinate bmsc_begin_x = m_bmsc->get_instances().begin()->get()->get_line_begin().get_x();
Coordinate bmsc_begin_y = m_bmsc->get_instances().begin()->get()->get_line_begin().get_y();
if(!Compare::equal(last_width,(*cpos)->get_width())){
@@ -834,6 +916,8 @@
m_stream << m_instance_spacing_map.print();
+ m_stream << m_colors.print();
+
//print end
m_stream << "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%" << std::endl
<< "%%%% End of configuration header" << std::endl
@@ -868,6 +952,7 @@
Coordinate cor = comment->get_position().get_y()+coordinate;
edge_point(comment->get_position().get_x(),comment->get_width());
insert_pointer(comment,cor);
+ m_colors.addColor(comment->get_color());
};
void insert_event(EventPtr event, Coordinate coordinate = 0)
@@ -876,6 +961,8 @@
LocalActionEventPtr local_action_event = boost::dynamic_pointer_cast<LocalActionEvent>(event);
ConditionEventPtr condition_event = boost::dynamic_pointer_cast<ConditionEvent>(event);
+ m_colors.addColor(event->get_color());
+
Coordinate coor = event->get_position().get_y()+coordinate; //! event absolute position in diagram
CoregionArea* coregion = dynamic_cast<CoregionArea*>(event->get_area());
@@ -929,6 +1016,7 @@
CompleteMessagePtr complete_message = msg_event->get_complete_message();
if(complete_message != NULL)
{
+ m_colors.addColor(complete_message->get_color());
if(complete_message->get_send_event() == msg_event)
{
Coordinate send_y = Compare::round(complete_message->get_send_event()->get_position().get_y());
@@ -957,6 +1045,7 @@
IncompleteMessagePtr incomplete_message = msg_event->get_incomplete_message();
if(incomplete_message != NULL)
{
+ m_colors.addColor(incomplete_message->get_color());
edge_point(incomplete_message->get_event()->get_instance()->get_line_begin().get_x()+incomplete_message->get_dot_position().get_x());
m_incomlete_mess_slope_map.addDistance(incomplete_message->get_dot_position().get_y());
m_lostfound_width_map.addDistance(fabs(incomplete_message_width_corection(incomplete_message->get_dot_position().get_x())));
@@ -967,6 +1056,7 @@
LocalActionPtr act = local_action_event->get_local_action();
if (act != NULL)
{
+ m_colors.addColor(act->get_color());
assert(local_action_event->get_instance() != NULL);
edge_point(local_action_event->get_instance()->get_line_begin().get_x(), act->get_width());
m_local_action_width_map.addDistance(act->get_width());
@@ -978,6 +1068,7 @@
ConditionPtr cond = condition_event->get_condition();
if (cond != NULL)
{
+ m_colors.addColor(cond->get_color());
assert(condition_event->get_instance() != NULL);
edge_point(condition_event->get_instance()->get_line_begin().get_x(), cond->get_width());
m_local_condition_width_map.addDistance(cond->get_width()/2);
@@ -992,6 +1083,7 @@
void insert_coregion_area(CoregionAreaPtr coregion_area, Coordinate coordinate = 0)
{
+ m_colors.addColor(coregion_area->get_color());
edge_point(coregion_area->get_instance()->get_line_begin().get_x(),coregion_area->get_width());
//coregion_end_Width_map insert coregion end width
insert_pointer(coregion_area,coregion_area->get_begin_height()+coordinate);
@@ -1008,6 +1100,7 @@
for(AbsoluteTimePtrList::const_iterator apos = absolute_times.begin();
apos != absolute_times.end(); apos++)
{
+ m_colors.addColor((*apos)->get_color());
edge_point((*apos)->get_position().get_x());
m_absolutetime_width_map.addDistance((*apos)->get_position().get_x(),event->get_instance()->get_line_begin().get_x(),true);
m_absolutetime_slope_map.addDistance((*apos)->get_position().get_y(),coordinate,true);
@@ -1016,6 +1109,7 @@
for(TimeRelationEventPtrList::const_iterator rpos = relations.begin();
rpos != relations.end(); rpos++)
{
+ m_colors.addColor((*rpos)->get_color());
// for each "event a" we print the time relation to "event b"
// we thus skip all "events b"
if((*rpos)->get_event_a() != event)
@@ -1059,6 +1153,7 @@
void insert_instance(const InstancePtr instance)
{
+ m_colors.addColor(instance->get_color());
m_instance_width_map.addDistance(instance->get_width());
insert_pointer(instance,instance->get_line_begin().get_y());
insert_pointer(instance,instance->get_line_end().get_y());
@@ -1611,6 +1706,9 @@
m_incomlete_mess_slope_map.setDescription("%%%% Incomplete message slope:");
m_incomlete_mess_slope_map.setLengthName("levelheight");
m_incomlete_mess_slope_map.setIsLength(false);
+ m_colors.setName("color");
+ m_colors.setDescription("%%% Colors:");
+ m_colors.setLengthName("color");
m_last_mark = NONE;
// not in structure lengths
m_instance_height_map.addDistance(3);
@@ -1658,6 +1756,7 @@
ipos != m_bmsc->get_instances().end(); ipos++)
{
insert_instance((*ipos));
+
Coordinate inst_start = (*ipos)->get_line_begin().get_y();
//find edge instances
@@ -1676,7 +1775,9 @@
{
const EventPtrList& events = strict_area->get_events();
for (EventPtrList::const_iterator it = events.begin(); it != events.end(); ++it)
+ {
insert_event(*it, inst_start);
+ }
}
//coredionArea
@@ -1695,7 +1796,7 @@
for(EventPtrList::const_iterator epos = event_stack.begin(); epos != event_stack.end(); epos++)
{
insert_event(*epos,coregion_area->get_begin_height()+inst_start);
-
+
// process forward links
CoregEventRelPtrVector rels = coregion_area->get_successor_rels(epos->get());
for(CoregEventRelPtrVector::const_iterator spos = rels.begin(); spos != rels.end(); spos++)
@@ -1805,29 +1906,14 @@
DistanceMap m_conection_radius;
DistanceMap m_time_interval_width;
DistanceMap m_start_symbol_width;
+ ColorMap m_colors;
MarkType m_last_mark;
PtrIDMap<HMscNodePtr> node_id_map; // node identifiers
- void print_color(const MarkType& mark){
- if(mark == m_last_mark){
- //nothing to change
- return;
- }
- switch(mark)
- {
- case NONE: print_color_change("black"); break;
- case REMOVED:
- case MARKED: print_color_change("red"); break;
- case ADDED: print_color_change("green"); break;
- default: throw std::runtime_error("Error: unexpected behaviour");
- }
- m_last_mark = mark;
+ void print_color(const MscColor& color){
+ m_stream << m_colors.printColor(color);
}
- void print_color_change(std::string color){
- m_stream << "\\mscsetcolor{" << color << "}" << std::endl;
- }
-
/*
* In structure is position system left most = the lowest value && right most = the highest value (same as in tex)
* bottom most = the lowest value && upper most = the highest value (opposite as in tex)
@@ -1957,7 +2043,8 @@
<< m_condition_width.print() << std::endl
<< m_condition_height.print() << std::endl
<< m_conection_radius.print() << std::endl
- << m_time_interval_width.print() << std::endl;
+ << m_time_interval_width.print() << std::endl
+ << m_colors.print() << std::endl;
m_stream << "%%%%%%%%%%%%%%%%%%" << std::endl
@@ -1975,7 +2062,7 @@
// phase 1: print only constraints applied to this single node
if((*rpos)->get_ref_node_a() != (*rpos)->get_ref_node_b())
continue;
- print_color((*rpos)->get_marked());
+ print_color((*rpos)->get_color());
m_stream << "\\hmscmeasure" << ((*rpos)->is_directed() ? "[yes]" : "") << "{" << (*rpos)->get_label() << "}"
//<< Compare::round((*rpos)->get_width()) << "]{" << node_id_map.get_id((*rpos)->get_ref_node_a()) //width is not stored in structure
<< m_time_interval_width.printOptParam(14) << "{" << node_id_map.get_id((*rpos)->get_ref_node_a())
@@ -2014,7 +2101,7 @@
//i think it's better simple
width = 11;
- print_color((*rpos)->get_marked());
+ print_color((*rpos)->get_color());
m_stream << "\\hmscmeasure" << ((*rpos)->is_directed() ? "[yes]" : "") << "{" << (*rpos)->get_label() << "}"
<< m_time_interval_width.printOptParam(14) << "{" << node_id_map.get_id((*rpos)->get_ref_node_a())
<< "}[" << ((*rpos)->get_ref_node_a()->is_time_relation_bottom(*rpos) ? "bottom" : "top") << "]{"
@@ -2058,6 +2145,9 @@
m_start_symbol_width.setName("startSymbolWidth");
m_start_symbol_width.setLengthName("hmscstartsymbolwidth");
m_start_symbol_width.setIsVerticalLength(false);
+ m_colors.setName("color");
+ m_colors.setDescription("%%% Colors:");
+ m_colors.setLengthName("color");
//default lengths
m_reference_height.addDistance(10);
m_reference_width.addDistance(20);
@@ -2081,7 +2171,7 @@
for(CommentPtrSet::const_iterator cpos = m_hmsc->get_comments().begin();
cpos != m_hmsc->get_comments().end(); cpos++)
{
- print_color((*cpos)->get_marked());
+ print_color((*cpos)->get_color());
m_stream << m_global_comment_width.printLength((*cpos)->get_width());
m_stream << "\\mscglobalcomment{"
<< ExportTex::print_wchar((*cpos)->get_text()) << "}(" << get_pos_x((*cpos)->get_position().get_x() - ((*cpos)->get_width()/2)) << ","
@@ -2108,7 +2198,7 @@
StartNodePtr start_node = boost::dynamic_pointer_cast<StartNode>(*npos);
if(start_node != NULL)
{
- print_color(start_node->get_marked());
+ print_color(start_node->get_color());
m_stream << "\\hmscstartsymbol{" << node_id_map.get_id(*npos) << "}(" << get_pos_x(start_node->get_position().get_x())
<< "," << get_pos_y(start_node->get_position().get_y()) << ")"<< std::endl;
}
@@ -2116,7 +2206,7 @@
ConditionNodePtr condition_node = boost::dynamic_pointer_cast<ConditionNode>(*npos);
if(condition_node != NULL)
{
- print_color(condition_node->get_marked());
+ print_color(condition_node->get_color());
m_stream << "\\hmsccondition{" << node_id_map.get_id(*npos)
<< "}{" << ExportTex::print_string(condition_node->get_label()) << "}(" << get_pos_x(condition_node->get_position().get_x())
<< "," << get_pos_y(condition_node->get_position().get_y()) << ")" << std::endl;
@@ -2125,7 +2215,7 @@
ConnectionNodePtr connection_node = boost::dynamic_pointer_cast<ConnectionNode>(*npos);
if(connection_node != NULL)
{
- print_color(connection_node->get_marked());
+ print_color(connection_node->get_color());
m_stream << "\\hmscconnection{" << node_id_map.get_id(*npos)
<< "}(" << get_pos_x(connection_node->get_position().get_x())
<< "," << get_pos_y(connection_node->get_position().get_y()) << ")" << std::endl;
@@ -2136,7 +2226,7 @@
{
if(reference_node->get_msc() != NULL)
{
- print_color(reference_node->get_marked());
+ print_color(reference_node->get_color());
m_stream << "\\hmscreference{" << node_id_map.get_id(*npos)
<< "}{" << ExportTex::print_wchar(reference_node->get_msc()->get_label())
<< "}(" << get_pos_x(reference_node->get_position().get_x())
@@ -2150,7 +2240,7 @@
EndNodePtr end_node = boost::dynamic_pointer_cast<EndNode>(*npos);
if(end_node != NULL)
{
- print_color(end_node->get_marked());
+ print_color(end_node->get_color());
m_stream << "\\hmscendsymbol{" << node_id_map.get_id(*npos)
<< "}(" << get_pos_x(end_node->get_position().get_x())
<< "," << get_pos_y(end_node->get_position().get_y()) << ")" << std::endl;
@@ -2175,7 +2265,7 @@
for(CommentPtrSet::const_iterator cpos = (*npos)->get_comments().begin();
cpos != (*npos)->get_comments().end(); cpos++)
{
- print_color((*cpos)->get_marked());
+ print_color((*cpos)->get_color());
m_stream << "\\hmsccomment{"
<< ExportTex::print_wchar((*cpos)->get_text()) << "}(" << get_pos_x((*cpos)->get_position().get_x())
<< "," << get_pos_y((*cpos)->get_position().get_y()) << "){"
@@ -2226,7 +2316,7 @@
SuccessorNode *successor = (*spos)->get_successor();
HMscNode *successor_node = dynamic_cast<HMscNode*>(successor);
- print_color((*spos)->get_marked());
+ print_color((*spos)->get_color());
m_stream << "\\arrow{" << node_id_map.get_id(*npos) << "}";
std::list<MscPoint> line = (*spos)->get_line().get_points();
if(!line.empty())
Modified: trunk/src/data/msc/CoregionArea.cpp
===================================================================
--- trunk/src/data/msc/CoregionArea.cpp 2013-11-28 23:27:31 UTC (rev 1877)
+++ trunk/src/data/msc/CoregionArea.cpp 2013-12-05 14:13:49 UTC (rev 1878)
@@ -90,14 +90,22 @@
return maxes;
}
-void CoregionArea::add_successor_rel(Event* predecessor, Event* successor)
+ CoregEventRelPtr CoregionArea::add_successor_rel(Event* predecessor, Event* successor)
{
vertex_t u = get_vertex(predecessor);
vertex_t v = get_vertex(successor);
edge_t e = boost::add_edge(u, v, m_events).first;
m_events[e] = new CoregionEventRelation(predecessor, successor);
+ return m_events[e];
}
+CoregEventRelPtr CoregionArea::add_successor_rel(Event* predecessor, Event* successor, MscColor color)
+{
+ CoregEventRelPtr result = add_successor_rel(predecessor, successor);
+ result->set_color(color);
+ return result;
+}
+
CoregEventRelPtrVector CoregionArea::get_successor_rels(const Event* e) const
{
CoregEventRelPtrVector result;
Modified: trunk/src/data/msc/CoregionArea.h
===================================================================
--- trunk/src/data/msc/CoregionArea.h 2013-11-28 23:27:31 UTC (rev 1877)
+++ trunk/src/data/msc/CoregionArea.h 2013-12-05 14:13:49 UTC (rev 1878)
@@ -116,8 +116,10 @@
* After the operation, %predecessor will have %successor as its successor in the coregion.
* NOTE: both events must already exist in the coregion area
*/
- void add_successor_rel(Event* predecessor, Event* successor);
+ CoregEventRelPtr add_successor_rel(Event* predecessor, Event* successor);
+ CoregEventRelPtr add_successor_rel(Event* predecessor, Event* successor, MscColor color);
+
void remove_event(Event* e);
InstanceAxisForm get_form() const
Added: trunk/src/data/msc/MscColor.h
===================================================================
--- trunk/src/data/msc/MscColor.h (rev 0)
+++ trunk/src/data/msc/MscColor.h 2013-12-05 14:13:49 UTC (rev 1878)
@@ -0,0 +1,130 @@
+/*
+ * scstudio - Sequence Chart Studio
+ * http://scstudio.sourceforge.net
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * Copyright (c) 2013 Adrian Farmadin <far...@ma...>
+ *
+ * $Id: MscElement.h 1724 2013-03-21 18:08:46Z obouda $
+ */
+
+#ifndef _MSCCOLOR_H
+#define _MSCCOLOR_H
+
+/**
+ * \brief Common basic class for color value
+ */
+class SCMSC_EXPORT MscColor
+{
+ private:
+ int m_R;
+ int m_G;
+ int m_B;
+ double m_color;
+
+ public:
+
+ MscColor()
+ {
+ clear();
+ };
+
+ void setColor(int R, int G, int B)
+ {
+ m_R=R;
+ m_G=G;
+ m_B=B;
+ };
+
+ void setColor(double color)
+ {
+ m_color=color;
+ };
+
+ void setColor(MscColor color)
+ {
+ setColor(color.m_R, color.m_G, color.m_B);
+ m_color = color.m_color;
+ };
+
+ double getColor() const
+ {
+ return m_color;
+ };
+
+ void getColor(int &R, int &G, int &B) const
+ {
+ R=m_R;
+ G=m_G;
+ B=m_B;
+ };
+
+#define color_round(x) floor(double(x)/255*1000)/1000
+
+ void getColorD(double &R, double &G, double &B) const
+ {
+ R=color_round(m_R);
+ G=color_round(m_G);
+ B=color_round(m_B);
+ };
+
+ int getRed() const
+ {
+ return m_R;
+ };
+
+ int getGreen() const
+ {
+ return m_G;
+ };
+
+ int getBlue() const
+ {
+ return m_B;
+ };
+
+ bool operator < (const MscColor& color) c...
[truncated message content] |
|
From: <xb...@us...> - 2014-01-16 21:35:03
|
Revision: 1881
http://sourceforge.net/p/scstudio/code/1881
Author: xborza
Date: 2014-01-16 21:35:00 +0000 (Thu, 16 Jan 2014)
Log Message:
-----------
Duplicate and drop shape into mouse position feature + HELP updated (added Keyboard accelerators section)
Modified Paths:
--------------
trunk/doc/help/frontend/shortcuts.body.htm
trunk/doc/help/menu.htm
trunk/doc/help/menui.htm
trunk/src/view/visio/addon/addon.cpp
trunk/src/view/visio/addon/document.cpp
trunk/src/view/visio/addon/document.h
Modified: trunk/doc/help/frontend/shortcuts.body.htm
===================================================================
--- trunk/doc/help/frontend/shortcuts.body.htm 2014-01-11 21:04:52 UTC (rev 1880)
+++ trunk/doc/help/frontend/shortcuts.body.htm 2014-01-16 21:35:00 UTC (rev 1881)
@@ -56,6 +56,14 @@
<a href="message_numbering.html">Delete message numbering</a>
</td>
</tr>
+ <tr>
+ <td>
+ <code>Ctrl+Alt+X</code>
+ </td>
+ <td>
+ Duplicate and drop selected shape into mouse position
+ </td>
+ </tr>
</table>
</div>
</body>
Modified: trunk/doc/help/menu.htm
===================================================================
--- trunk/doc/help/menu.htm 2014-01-11 21:04:52 UTC (rev 1880)
+++ trunk/doc/help/menu.htm 2014-01-16 21:35:00 UTC (rev 1881)
@@ -24,6 +24,9 @@
<li>
<a href="frontend/settings.html">Options</a>
</li>
+ <li>
+ <a href="frontend/shortcuts.html">Keyboard accelerators</a>
+ </li>
</ul>
</li>
<li>
Modified: trunk/doc/help/menui.htm
===================================================================
--- trunk/doc/help/menui.htm 2014-01-11 21:04:52 UTC (rev 1880)
+++ trunk/doc/help/menui.htm 2014-01-16 21:35:00 UTC (rev 1881)
@@ -24,6 +24,9 @@
<li>
<a href="../frontend/settings.html">Options</a>
</li>
+ <li>
+ <a href="../frontend/shortcuts.html">Keyboard accelerators</a>
+ </li>
</ul>
</li>
<li>
Modified: trunk/src/view/visio/addon/addon.cpp
===================================================================
--- trunk/src/view/visio/addon/addon.cpp 2014-01-11 21:04:52 UTC (rev 1880)
+++ trunk/src/view/visio/addon/addon.cpp 2014-01-16 21:35:00 UTC (rev 1881)
@@ -392,6 +392,11 @@
TRACE("CStudioAddon::Run() disable message enumeration");
return pDocumentMonitor->OnMenuDisableMessageEnumeration(vsoApp);
+ //case 3xx events - shortcuts events
+ case CDocumentMonitor::SHORT_DROP_INST:
+ TRACE("CStudioAddon::Run() SHORT DROP INSTANCE");
+ return pDocumentMonitor->OnShortcutDropInstace(vsoApp);
+
default:
TRACE("CStudioAddon::Run() unexpected event id=" << iEvent);
return VAORC_FAILURE;
@@ -1215,6 +1220,7 @@
// being monitored for this document.
pDocumentMonitor = new CDocumentMonitor(this, vsoApp, vsoDocument);
pDocumentMonitor->InitMenu();
+ pDocumentMonitor->InitShortcuts();
pDocumentMonitor->InitToolbar();
// register BeforeDocumentClose
Modified: trunk/src/view/visio/addon/document.cpp
===================================================================
--- trunk/src/view/visio/addon/document.cpp 2014-01-11 21:04:52 UTC (rev 1880)
+++ trunk/src/view/visio/addon/document.cpp 2014-01-16 21:35:00 UTC (rev 1881)
@@ -410,6 +410,22 @@
return m_vsoApp->GetBuiltInToolbars(0);
}
+void CDocumentMonitor::InitShortcuts()
+{
+ //create accelerators
+ Visio::IVUIObjectPtr vsoMenus = m_vsoDocument->GetCustomMenus();
+ Visio::IVAccelTablePtr accelTable = vsoMenus->AccelTables->ItemAtID[Visio::visUIObjSetDrawing];
+
+ //Select Instances
+ Visio::IVAccelItemPtr accelItemSelectInstances = accelTable->AccelItems->Add();
+ //accelItemSelectInstances->CmdNum = SHORT_SELECT_INST;
+ accelItemSelectInstances->Key = 'X';
+ accelItemSelectInstances->Control = true;
+ accelItemSelectInstances->Alt = true;
+ accelItemSelectInstances->AddOnArgs = stringize() << L"/event=" << SHORT_DROP_INST;
+ accelItemSelectInstances->AddOnName = ADDON_NAME;
+}
+
void CDocumentMonitor::InitMenu()
{
Visio::IVUIObjectPtr vsoMenus = GetMostCustomMenus();
@@ -1297,6 +1313,66 @@
vsoApp->ActiveWindow->Selection = selection;
}
+VAORC CDocumentMonitor::OnShortcutDropInstace(Visio::IVApplicationPtr vsoApp)
+{
+ //get selected shape
+ int count = vsoApp->ActiveWindow->Selection->Count;
+ if(count != 1)
+ {
+ MessageBox(GetActiveWindow(),
+ _T("To use duplicate-&-drop feature, you must choose exactly one shape on active page."),
+ _T("Error"), MB_OK | MB_ICONEXCLAMATION);
+ return VAORC_FAILURE;
+ }
+ //Visio::IVShapePtr shape = vsoApp->ActiveWindow->Selection->Item[1];
+ Visio::IVShapePtr shape = vsoApp->ActiveWindow->Selection->Item[1];
+ //get mouse position
+ double xPos = 0;
+ double yPos = 0;
+
+ // need to conver units?
+ xPos = m_addon->GetMousePosX();
+ yPos = m_addon->GetMousePosY();
+ //drop the master identic to selected shape
+ Visio::IVPagePtr vsoPage = vsoApp->ActivePage;
+ CDrawingVisualizer visualizer(vsoApp);
+ TShapeType shape_type = get_shape_type(shape);
+ Visio::IVMasterPtr master = visualizer.find_master(shape_type);
+ //drop
+ Visio::IVShapePtr new_shape = vsoPage->Drop(master,xPos,yPos);
+ // check if shape is message, if it is LEFT MESSAGE then swith the direction
+ if(isMessageShape(shape) && CShapeUtils::getMsgDirection(shape) == MSG_RIGHT)
+ {
+ std::vector<_bstr_t> formulas;
+ long scopeId = vsoApp->BeginUndoScope("Flip direction");
+ vsoApp->EventsEnabled = false;
+ //flip message direction
+ for(int i = 0; i < 4; i++)
+ formulas.push_back(new_shape->GetCellsSRC(visSectionObject, visRowXForm1D, i)->FormulaU);
+ try {
+ for(int i = 0; i < 2; i++)
+ {
+ new_shape->GetCellsSRC(visSectionObject, visRowXForm1D, i)->FormulaU = formulas.at(i+2);
+ new_shape->GetCellsSRC(visSectionObject, visRowXForm1D, i+2)->FormulaU = formulas.at(i);
+ }
+ }
+ catch(_com_error err){
+ MessageBox(GetActiveWindow(), L"Exception occurred", L"", MB_OK);
+ }
+ formulas.clear();
+ //Flip lost and found messages
+ if(shape_type == ST_BMSC_MESSAGE_FOUND || shape_type == ST_BMSC_MESSAGE_LOST)
+ {
+ CMessageJump::changeMsgType(new_shape, (TShapeType)((shape_type == 3) ? 2 : 3));
+ CMessageSnapping::resnap(new_shape, vsoApp->ActivePage->Shapes, 0.0001);
+ }
+ vsoApp->EventsEnabled = true;
+ vsoApp->EndUndoScope(scopeId, true);
+ }
+
+ return VAORC_SUCCESS;
+}
+
VAORC CDocumentMonitor::OnMenuSelectAllInstances(Visio::IVApplicationPtr vsoApp, SelectionType selType)
{
selectAll(vsoApp, true, selType);
Modified: trunk/src/view/visio/addon/document.h
===================================================================
--- trunk/src/view/visio/addon/document.h 2014-01-11 21:04:52 UTC (rev 1880)
+++ trunk/src/view/visio/addon/document.h 2014-01-16 21:35:00 UTC (rev 1881)
@@ -58,6 +58,7 @@
VAORC OnOpenReference(int iDocumentIndex, int iPageIndex, _bstr_t sShapeU);
void InitMenu();
+ void InitShortcuts();
void InitToolbar();
enum MenuItems
@@ -95,6 +96,11 @@
MENU_THIN_LINES,
};
+ enum ShortCutItems
+ {
+ SHORT_DROP_INST = 401
+ };
+
VAORC OnMenuWindowsReporter(Visio::IVApplicationPtr vsoApp);
VAORC OnMenuImport(Visio::IVApplicationPtr vsoApp);
VAORC OnMenuExport(Visio::IVApplicationPtr vsoApp);
@@ -116,6 +122,9 @@
VAORC OnMenuFlipMessageDirection(Visio::IVApplicationPtr vsoApp);
VAORC OnHelp();
+ //shortcuts for dropping shapes
+ VAORC OnShortcutDropInstace(Visio::IVApplicationPtr vsoApp);
+
void ShowReportView();
void OnHideReportView();
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <xf...@us...> - 2014-01-20 18:23:17
|
Revision: 1886
http://sourceforge.net/p/scstudio/code/1886
Author: xfarmad
Date: 2014-01-20 18:23:12 +0000 (Mon, 20 Jan 2014)
Log Message:
-----------
Prepared for release 0.5.4
Modified Paths:
--------------
trunk/CHANGELOG
trunk/doc/scstudio-instructions.rtf
trunk/make_build.bat
trunk/src/view/visio/addon/dllmodule.rc
Modified: trunk/CHANGELOG
===================================================================
--- trunk/CHANGELOG 2014-01-20 17:50:08 UTC (rev 1885)
+++ trunk/CHANGELOG 2014-01-20 18:23:12 UTC (rev 1886)
@@ -7,6 +7,12 @@
$Date$, svn revision $Rev$
+
+######################
+# Version 0.5.4
+
+ 20-Jan_2014, svn revision 1885
+
* refactoring of internal structure (done)
* extend import from Z120 by large numbers in time intervals e.g. 1e+10
* feature requests No. 41 solved (default option to the Import dialog)
@@ -30,10 +36,10 @@
* ordering arrow automaticly change direction of its arrow
* hmsc connection shape behavior improvment
* hmsc connection arraw shape automatic snapping
-* bug No. 76,75,68,64,61,60,36,53,26,88,83,82,55,94 fixed
+* bug No. 76,75,68,64,61,60,36,53,26,88,87,83,82,55,94 fixed
* message automatic drawing behavior improvment (message interleaving not
possible now)
-* feature requests No. 35,13 solved
+* feature requests No. 35,13,41,37,32,30 solved
######################
Modified: trunk/doc/scstudio-instructions.rtf
===================================================================
--- trunk/doc/scstudio-instructions.rtf 2014-01-20 17:50:08 UTC (rev 1885)
+++ trunk/doc/scstudio-instructions.rtf 2014-01-20 18:23:12 UTC (rev 1886)
@@ -1,168156 +1,266351 @@
-{\rtf1\adeflang1025\ansi\ansicpg1250\uc1\adeff1\deff0\stshfdbch0\stshfloch0\stshfhich0\stshfbi0\deflang1029\deflangfe1029\themelang1029\themelangfe0\themelangcs0{\fonttbl{\f0\fbidi \froman\fcharset238\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f1\fbidi \fswiss\fcharset238\fprq2{\*\panose 020b0604020202020204}Arial;}
-{\f2\fbidi \fmodern\fcharset238\fprq1{\*\panose 02070309020205020404}Courier New;}{\f3\fbidi \froman\fcharset2\fprq2{\*\panose 05050102010706020507}Symbol;}{\f10\fbidi \fnil\fcharset2\fprq2{\*\panose 05000000000000000000}Wingdings;}
-{\f34\fbidi \froman\fcharset1\fprq2{\*\panose 02040503050406030204}Cambria Math;}{\f36\fbidi \froman\fcharset238\fprq2{\*\panose 02040503050406030204}Cambria;}{\f38\fbidi \fswiss\fcharset238\fprq2{\*\panose 020b0604030504040204}Tahoma;}
-{\flomajor\f31500\fbidi \froman\fcharset238\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\fdbmajor\f31501\fbidi \froman\fcharset238\fprq2{\*\panose 02020603050405020304}Times New Roman;}
-{\fhimajor\f31502\fbidi \froman\fcharset238\fprq2{\*\panose 02040503050406030204}Cambria;}{\fbimajor\f31503\fbidi \froman\fcharset238\fprq2{\*\panose 02020603050405020304}Times New Roman;}
-{\flominor\f31504\fbidi \froman\fcharset238\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\fdbminor\f31505\fbidi \froman\fcharset238\fprq2{\*\panose 02020603050405020304}Times New Roman;}
-{\fhiminor\f31506\fbidi \fswiss\fcharset238\fprq2{\*\panose 020f0502020204030204}Calibri;}{\fbiminor\f31507\fbidi \froman\fcharset238\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f41\fbidi \froman\fcharset0\fprq2 Times New Roman;}
-{\f40\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\f42\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\f43\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\f44\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}
-{\f45\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\f46\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\f47\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\f51\fbidi \fswiss\fcharset0\fprq2 Arial;}
-{\f50\fbidi \fswiss\fcharset204\fprq2 Arial Cyr;}{\f52\fbidi \fswiss\fcharset161\fprq2 Arial Greek;}{\f53\fbidi \fswiss\fcharset162\fprq2 Arial Tur;}{\f54\fbidi \fswiss\fcharset177\fprq2 Arial (Hebrew);}
-{\f55\fbidi \fswiss\fcharset178\fprq2 Arial (Arabic);}{\f56\fbidi \fswiss\fcharset186\fprq2 Arial Baltic;}{\f57\fbidi \fswiss\fcharset163\fprq2 Arial (Vietnamese);}{\f61\fbidi \fmodern\fcharset0\fprq1 Courier New;}
-{\f60\fbidi \fmodern\fcharset204\fprq1 Courier New Cyr;}{\f62\fbidi \fmodern\fcharset161\fprq1 Courier New Greek;}{\f63\fbidi \fmodern\fcharset162\fprq1 Courier New Tur;}{\f64\fbidi \fmodern\fcharset177\fprq1 Courier New (Hebrew);}
-{\f65\fbidi \fmodern\fcharset178\fprq1 Courier New (Arabic);}{\f66\fbidi \fmodern\fcharset186\fprq1 Courier New Baltic;}{\f67\fbidi \fmodern\fcharset163\fprq1 Courier New (Vietnamese);}{\f401\fbidi \froman\fcharset0\fprq2 Cambria;}
-{\f400\fbidi \froman\fcharset204\fprq2 Cambria Cyr;}{\f402\fbidi \froman\fcharset161\fprq2 Cambria Greek;}{\f403\fbidi \froman\fcharset162\fprq2 Cambria Tur;}{\f406\fbidi \froman\fcharset186\fprq2 Cambria Baltic;}
-{\f407\fbidi \froman\fcharset163\fprq2 Cambria (Vietnamese);}{\f421\fbidi \fswiss\fcharset0\fprq2 Tahoma;}{\f420\fbidi \fswiss\fcharset204\fprq2 Tahoma Cyr;}{\f422\fbidi \fswiss\fcharset161\fprq2 Tahoma Greek;}
-{\f423\fbidi \fswiss\fcharset162\fprq2 Tahoma Tur;}{\f424\fbidi \fswiss\fcharset177\fprq2 Tahoma (Hebrew);}{\f425\fbidi \fswiss\fcharset178\fprq2 Tahoma (Arabic);}{\f426\fbidi \fswiss\fcharset186\fprq2 Tahoma Baltic;}
-{\f427\fbidi \fswiss\fcharset163\fprq2 Tahoma (Vietnamese);}{\f428\fbidi \fswiss\fcharset222\fprq2 Tahoma (Thai);}{\flomajor\f31510\fbidi \froman\fcharset0\fprq2 Times New Roman;}{\flomajor\f31509\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}
-{\flomajor\f31511\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\flomajor\f31512\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\flomajor\f31513\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}
-{\flomajor\f31514\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\flomajor\f31515\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\flomajor\f31516\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}
-{\fdbmajor\f31520\fbidi \froman\fcharset0\fprq2 Times New Roman;}{\fdbmajor\f31519\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\fdbmajor\f31521\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}
-{\fdbmajor\f31522\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\fdbmajor\f31523\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\fdbmajor\f31524\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}
-{\fdbmajor\f31525\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\fdbmajor\f31526\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\fhimajor\f31530\fbidi \froman\fcharset0\fprq2 Cambria;}
-{\fhimajor\f31529\fbidi \froman\fcharset204\fprq2 Cambria Cyr;}{\fhimajor\f31531\fbidi \froman\fcharset161\fprq2 Cambria Greek;}{\fhimajor\f31532\fbidi \froman\fcharset162\fprq2 Cambria Tur;}
-{\fhimajor\f31535\fbidi \froman\fcharset186\fprq2 Cambria Baltic;}{\fhimajor\f31536\fbidi \froman\fcharset163\fprq2 Cambria (Vietnamese);}{\fbimajor\f31540\fbidi \froman\fcharset0\fprq2 Times New Roman;}
-{\fbimajor\f31539\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\fbimajor\f31541\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\fbimajor\f31542\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}
-{\fbimajor\f31543\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\fbimajor\f31544\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\fbimajor\f31545\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}
-{\fbimajor\f31546\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\flominor\f31550\fbidi \froman\fcharset0\fprq2 Times New Roman;}{\flominor\f31549\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}
-{\flominor\f31551\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\flominor\f31552\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\flominor\f31553\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}
-{\flominor\f31554\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\flominor\f31555\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\flominor\f31556\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}
-{\fdbminor\f31560\fbidi \froman\fcharset0\fprq2 Times New Roman;}{\fdbminor\f31559\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\fdbminor\f31561\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}
-{\fdbminor\f31562\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\fdbminor\f31563\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\fdbminor\f31564\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}
-{\fdbminor\f31565\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\fdbminor\f31566\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\fhiminor\f31570\fbidi \fswiss\fcharset0\fprq2 Calibri;}
-{\fhiminor\f31569\fbidi \fswiss\fcharset204\fprq2 Calibri Cyr;}{\fhiminor\f31571\fbidi \fswiss\fcharset161\fprq2 Calibri Greek;}{\fhiminor\f31572\fbidi \fswiss\fcharset162\fprq2 Calibri Tur;}
-{\fhiminor\f31575\fbidi \fswiss\fcharset186\fprq2 Calibri Baltic;}{\fhiminor\f31576\fbidi \fswiss\fcharset163\fprq2 Calibri (Vietnamese);}{\fbiminor\f31580\fbidi \froman\fcharset0\fprq2 Times New Roman;}
-{\fbiminor\f31579\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\fbiminor\f31581\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\fbiminor\f31582\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}
-{\fbiminor\f31583\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\fbiminor\f31584\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\fbiminor\f31585\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}
-{\fbiminor\f31586\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}}{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;
-\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;\red128\green0\blue128;\red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;}{\*\defchp \fs22 }{\*\defpap
-\ql \li0\ri0\sa200\sl276\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 }\noqfpromote {\stylesheet{\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af1\afs20\alang1025
-\ltrch\fcs0 \f1\fs20\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \snext0 \sqformat \spriority0 \styrsid6893578 Normal;}{\s1\ql \li2268\ri0\sb120\sa240\sl280\slmult0
-\keepn\pagebb\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin2268\itap0 \rtlch\fcs1 \ab\af1\afs28\alang1025 \ltrch\fcs0 \b\f1\fs28\lang1033\langfe1029\kerning32\cgrid\langnp1033\langfenp1029
-\sbasedon17 \snext17 \slink15 \sqformat \styrsid12978455 heading 1;}{\s2\ql \li2268\ri0\sb360\sa60\sl280\slmult0\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin2268\itap0 \rtlch\fcs1 \ab\af1\afs24\alang1025
-\ltrch\fcs0 \b\f1\fs24\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \sbasedon17 \snext17 \slink16 \sqformat \styrsid10886401 heading 2;}{\*\cs10 \additive \ssemihidden Default Paragraph Font;}{\*
-\ts11\tsrowd\trftsWidthB3\trpaddl108\trpaddr108\trpaddfl3\trpaddft3\trpaddfb3\trpaddfr3\tblind0\tblindtype3\tscellwidthfts0\tsvertalt\tsbrdrt\tsbrdrl\tsbrdrb\tsbrdrr\tsbrdrdgl\tsbrdrdgr\tsbrdrh\tsbrdrv \ql \li0\ri0\sa200\sl276\slmult1
-\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs22\alang1025 \ltrch\fcs0 \fs22\lang1029\langfe1029\cgrid\langnp1029\langfenp1029 \snext11 \ssemihidden \sunhideused \sqformat Normal Table;}{\*\cs15 \additive
-\rtlch\fcs1 \ab\af0\afs32 \ltrch\fcs0 \b\f36\fs32\lang0\langfe1029\kerning32\langnp0\langfenp1029 \sbasedon10 \slink1 \slocked Nadpis 1 Char;}{\*\cs16 \additive \rtlch\fcs1 \ab\ai\af0\afs28 \ltrch\fcs0 \b\i\f36\fs28\lang0\langfe1029\langnp0\langfenp1029
-\sbasedon10 \slink2 \slocked \ssemihidden Nadpis 2 Char;}{\s17\ql \li2268\ri0\sb120\sa120\sl280\slmult0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin2268\itap0 \rtlch\fcs1 \af1\afs20\alang1025 \ltrch\fcs0
-\f1\fs20\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \sbasedon0 \snext17 \styrsid4814744 Paragraph;}{\s18\ql \fi-2268\li2268\ri0\sb120\sa120\sl280\slmult0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin2268\itap0 \rtlch\fcs1
-\af1\afs20\alang1025 \ltrch\fcs0 \f1\fs20\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \sbasedon17 \snext18 \styrsid10750423 Paragraph w Sidehead;}{\*\ts19\tsrowd\trbrdrt\brdrs\brdrw10 \trbrdrl\brdrs\brdrw10 \trbrdrb\brdrs\brdrw10 \trbrdrr
-\brdrs\brdrw10 \trbrdrh\brdrs\brdrw10 \trbrdrv\brdrs\brdrw10 \trftsWidthB3\trpaddl108\trpaddr108\trpaddfl3\trpaddft3\trpaddfb3\trpaddfr3\tblind0\tblindtype0\tscellwidthfts0\tsvertalt\tsbrdrt\tsbrdrl\tsbrdrb\tsbrdrr\tsbrdrdgl\tsbrdrdgr\tsbrdrh\tsbrdrv
-\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af1\afs20\alang1025 \ltrch\fcs0 \f1\fs20\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon11 \snext19 \styrsid14371250 Table Grid;}{\*\cs20
-\additive \rtlch\fcs1 \af0 \ltrch\fcs0 \ul\cf2 \sbasedon10 \styrsid3177514 Hyperlink;}{\s21\ql \li2268\ri0\sl280\slmult0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin2268\itap0 \rtlch\fcs1 \af2\afs18\alang1025 \ltrch\fcs0
-\f2\fs18\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \sbasedon17 \snext21 \styrsid7881996 Example;}{\s22\ql \li0\ri0\widctlpar\brdrt\brdrs\brdrw10\brsp20 \tqc\tx4536\tqr\tx9072\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0
-\rtlch\fcs1 \af1\afs20\alang1025 \ltrch\fcs0 \f1\fs20\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \sbasedon0 \snext22 \slink23 \styrsid12473112 footer;}{\*\cs23 \additive \rtlch\fcs1 \af1\afs20 \ltrch\fcs0
-\f1\fs20\lang0\langfe1029\langnp0\langfenp1029 \sbasedon10 \slink22 \slocked \ssemihidden Z\'e1pat\'ed Char;}{\*\cs24 \additive \rtlch\fcs1 \af0 \ltrch\fcs0 \sbasedon10 \styrsid12473112 page number;}{\s25\ql \li0\ri0\widctlpar
-\tqc\tx4536\tqr\tx9072\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af1\afs20\alang1025 \ltrch\fcs0 \f1\fs20\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \sbasedon0 \snext25 \slink26 \styrsid12473112 header;}{\*\cs26
-\additive \rtlch\fcs1 \af1\afs20 \ltrch\fcs0 \f1\fs20\lang0\langfe1029\langnp0\langfenp1029 \sbasedon10 \slink25 \slocked \ssemihidden Z\'e1hlav\'ed Char;}{\*\cs27 \additive \rtlch\fcs1 \af0\afs16 \ltrch\fcs0 \fs16
-\sbasedon10 \ssemihidden \styrsid14681692 annotation reference;}{\s28\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af1\afs20\alang1025 \ltrch\fcs0
-\f1\fs20\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \sbasedon0 \snext28 \slink29 \ssemihidden \styrsid14681692 annotation text;}{\*\cs29 \additive \rtlch\fcs1 \af1\afs20 \ltrch\fcs0 \f1\fs20\lang0\langfe1029\langnp0\langfenp1029
-\sbasedon10 \slink28 \slocked \ssemihidden Text koment\'e1\'f8e Char;}{\s30\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \ab\af1\afs20\alang1025 \ltrch\fcs0
-\b\f1\fs20\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \sbasedon28 \snext28 \slink31 \ssemihidden \styrsid14681692 annotation subject;}{\*\cs31 \additive \rtlch\fcs1 \ab\af1\afs20 \ltrch\fcs0 \b\f1\fs20\lang0\langfe1029\langnp0\langfenp1029
-\sbasedon29 \slink30 \slocked \ssemihidden P\'f8edm\'ect koment\'e1\'f8e Char;}{\s32\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs16\alang1025 \ltrch\fcs0
-\f38\fs16\lang1033\langfe1029\cgrid\langnp1033\langfenp1029 \sbasedon0 \snext32 \slink33 \ssemihidden \styrsid14681692 Balloon Text;}{\*\cs33 \additive \rtlch\fcs1 \af38\afs16 \ltrch\fcs0 \f38\fs16\lang0\langfe1029\langnp0\langfenp1029
-\sbasedon10 \slink32 \slocked \ssemihidden Text bubliny Char;}{\*\cs34 \additive \rtlch\fcs1 \af0 \ltrch\fcs0 \f2\fs20 \sbasedon10 \styrsid8486799 Keyboard Shortcut;}{\*\cs35 \additive \rtlch\fcs1 \af0 \ltrch\fcs0 \sbasedon10 \styrsid3303158 mw-headline;}
-}{\*\listtable{\list\listtemplateid-318340160\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\leveltemplateid67436545\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0\hres0\chhres0
-\fi-360\li720\jclisttab\tx720\lin720 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace360\levelindent0{\leveltext\leveltemplateid67436547\'01o;}{\levelnumbers;}\f2\fbias0\hres0\chhres0 \fi-360\li1440
-\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace360\levelindent0{\leveltext\leveltemplateid67436549\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0\hres0\chhres0 \fi-360\li2160
-\jclisttab\tx2160\lin2160 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace360\levelindent0{\leveltext\leveltemplateid67436545\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0\hres0\chhres0 \fi-360\li2880
-\jclisttab\tx2880\lin2880 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace360\levelindent0{\leveltext\leveltemplateid67436547\'01o;}{\levelnumbers;}\f2\fbias0\hres0\chhres0 \fi-360\li3600
-\jclisttab\tx3600\lin3600 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace360\levelindent0{\leveltext\leveltemplateid67436549\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0\hres0\chhres0 \fi-360\li4320
-\jclisttab\tx4320\lin4320 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace360\levelindent0{\leveltext\leveltemplateid67436545\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0\hres0\chhres0 \fi-360\li5040
-\jclisttab\tx5040\lin5040 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace360\levelindent0{\leveltext\leveltemplateid67436547\'01o;}{\levelnumbers;}\f2\fbias0\hres0\chhres0 \fi-360\li5760
-\jclisttab\tx5760\lin5760 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace360\levelindent0{\leveltext\leveltemplateid67436549\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0\hres0\chhres0 \fi-360\li6480
-\jclisttab\tx6480\lin6480 }{\listname ;}\listid88896242}{\list\listtemplateid-2435210\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid-598469796
-\'01\'96;}{\levelnumbers;}\f0\fbias0\hres0\chhres0 \fi-311\li3033\jclisttab\tx3033\lin3033 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436547\'01o;}{\levelnumbers
-;}\f2\fbias0\hres0\chhres0 \fi-360\li3708\jclisttab\tx3708\lin3708 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436549\'01\u-3929 ?;}{\levelnumbers;}
-\f10\fbias0\hres0\chhres0 \fi-360\li4428\jclisttab\tx4428\lin4428 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436545\'01\u-3913 ?;}{\levelnumbers;}
-\f3\fbias0\hres0\chhres0 \fi-360\li5148\jclisttab\tx5148\lin5148 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436547\'01o;}{\levelnumbers;}
-\f2\fbias0\hres0\chhres0 \fi-360\li5868\jclisttab\tx5868\lin5868 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436549\'01\u-3929 ?;}{\levelnumbers;}
-\f10\fbias0\hres0\chhres0 \fi-360\li6588\jclisttab\tx6588\lin6588 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436545\'01\u-3913 ?;}{\levelnumbers;}
-\f3\fbias0\hres0\chhres0 \fi-360\li7308\jclisttab\tx7308\lin7308 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436547\'01o;}{\levelnumbers;}
-\f2\fbias0\hres0\chhres0 \fi-360\li8028\jclisttab\tx8028\lin8028 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436549\'01\u-3929 ?;}{\levelnumbers;}
-\f10\fbias0\hres0\chhres0 \fi-360\li8748\jclisttab\tx8748\lin8748 }{\listname ;}\listid218248755}{\list\listtemplateid-707857544\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0
-{\leveltext\leveltemplateid67436545\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0\hres0\chhres0 \fi-360\li2988\jclisttab\tx2988\lin2988 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext
-\leveltemplateid67436547\'01o;}{\levelnumbers;}\f2\fbias0\hres0\chhres0 \fi-360\li3708\jclisttab\tx3708\lin3708 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\leveltemplateid67436549
-\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0\hres0\chhres0 \fi-360\li4428\jclisttab\tx4428\lin4428 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\leveltemplateid67436545
-\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0\hres0\chhres0 \fi-360\li5148\jclisttab\tx5148\lin5148 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\leveltemplateid67436547
-\'01o;}{\levelnumbers;}\f2\fbias0\hres0\chhres0 \fi-360\li5868\jclisttab\tx5868\lin5868 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\leveltemplateid67436549
-\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0\hres0\chhres0 \fi-360\li6588\jclisttab\tx6588\lin6588 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\leveltemplateid67436545
-\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0\hres0\chhres0 \fi-360\li7308\jclisttab\tx7308\lin7308 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\leveltemplateid67436547
-\'01o;}{\levelnumbers;}\f2\fbias0\hres0\chhres0 \fi-360\li8028\jclisttab\tx8028\lin8028 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\leveltemplateid67436549
-\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0\hres0\chhres0 \fi-360\li8748\jclisttab\tx8748\lin8748 }{\listname ;}\listid380901966}{\list\listtemplateid-2075480342{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360
-\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0\hres0\chhres0 \fi-360\li2988\jclisttab\tx2988\lin2988 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext
-\'01o;}{\levelnumbers;}\f2\fbias0\hres0\chhres0 \fi-360\li3708\jclisttab\tx3708\lin3708 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}
-\f10\fbias0\hres0\chhres0 \fi-360\li4428\jclisttab\tx4428\lin4428 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0\hres0\chhres0 \fi-360\li5148
-\jclisttab\tx5148\lin5148 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fbias0\hres0\chhres0 \fi-360\li5868\jclisttab\tx5868\lin5868 }{\listlevel
-\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0\hres0\chhres0 \fi-360\li6588\jclisttab\tx6588\lin6588 }{\listlevel\levelnfc23\levelnfcn23\leveljc0
-\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0\hres0\chhres0 \fi-360\li7308\jclisttab\tx7308\lin7308 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1
-\levelspace360\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fbias0\hres0\chhres0 \fi-360\li8028\jclisttab\tx8028\lin8028 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext
-\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0\hres0\chhres0 \fi-360\li8748\jclisttab\tx8748\lin8748 }{\listname ;}\listid407309104}{\list\listtemplateid-234069712\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1
-\levelspace454\levelindent0{\leveltext\leveltemplateid-598469796\'01\'96;}{\levelnumbers;}\f0\fbias0\hres0\chhres0 \fi-311\li3033\jclisttab\tx3033\lin3033 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454
-\levelindent0{\leveltext\leveltemplateid67436547\'01o;}{\levelnumbers;}\f2\fbias0\hres0\chhres0 \fi-360\li3708\jclisttab\tx3708\lin3708 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext
-\leveltemplateid67436549\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0\hres0\chhres0 \fi-360\li4428\jclisttab\tx4428\lin4428 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext
-\leveltemplateid67436545\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0\hres0\chhres0 \fi-360\li5148\jclisttab\tx5148\lin5148 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext
-\leveltemplateid67436547\'01o;}{\levelnumbers;}\f2\fbias0\hres0\chhres0 \fi-360\li5868\jclisttab\tx5868\lin5868 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436549
-\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0\hres0\chhres0 \fi-360\li6588\jclisttab\tx6588\lin6588 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436545
-\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0\hres0\chhres0 \fi-360\li7308\jclisttab\tx7308\lin7308 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436547
-\'01o;}{\levelnumbers;}\f2\fbias0\hres0\chhres0 \fi-360\li8028\jclisttab\tx8028\lin8028 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436549
-\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0\hres0\chhres0 \fi-360\li8748\jclisttab\tx8748\lin8748 }{\listname ;}\listid432867918}{\list\listtemplateid-1494471816\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1
-\levelspace454\levelindent0{\leveltext\leveltemplateid-598469796\'01\'96;}{\levelnumbers;}\f0\fbias0\hres0\chhres0 \fi-311\li3033\jclisttab\tx3033\lin3033 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454
-\levelindent0{\leveltext\leveltemplateid67436547\'01o;}{\levelnumbers;}\f2\fbias0\hres0\chhres0 \fi-360\li3708\jclisttab\tx3708\lin3708 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext
-\leveltemplateid67436549\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0\hres0\chhres0 \fi-360\li4428\jclisttab\tx4428\lin4428 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext
-\leveltemplateid67436545\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0\hres0\chhres0 \fi-360\li5148\jclisttab\tx5148\lin5148 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext
-\leveltemplateid67436547\'01o;}{\levelnumbers;}\f2\fbias0\hres0\chhres0 \fi-360\li5868\jclisttab\tx5868\lin5868 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436549
-\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0\hres0\chhres0 \fi-360\li6588\jclisttab\tx6588\lin6588 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436545
-\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0\hres0\chhres0 \fi-360\li7308\jclisttab\tx7308\lin7308 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436547
-\'01o;}{\levelnumbers;}\f2\fbias0\hres0\chhres0 \fi-360\li8028\jclisttab\tx8028\lin8028 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext\leveltemplateid67436549
-\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0\hres0\chhres0 \fi-360\li8748\jclisttab\tx8748\lin8748 }{\listname ;}\listid501548701}{\list\listtemplateid1339591888\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1
-\levelspace454\levelindent0{\leveltext\leveltemplateid-598469796\'01\'96;}{\levelnumbers;}\f0\fbias0\hres0\chhres0 \fi-311\li3033\jclisttab\tx3033\lin3033 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454
-\levelindent0{\leveltext\leveltemplateid67436547\'01o;}{\levelnumbers;}\f2\fbias0\hres0\chhres0 \fi-360\li3708\jclisttab\tx3708\lin3708 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext
-\leveltemplateid67436549\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0\hres0\chhres0 \fi-360\li4428\jclisttab\tx4428\lin4428 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace454\levelindent0{\leveltext
-\leveltemplateid67436545...
[truncated message content] |
|
From: <xf...@us...> - 2014-01-22 10:26:20
|
Revision: 1890
http://sourceforge.net/p/scstudio/code/1890
Author: xfarmad
Date: 2014-01-22 10:26:17 +0000 (Wed, 22 Jan 2014)
Log Message:
-----------
Hmsc condition repaint fix + new doxygen configuration
Modified Paths:
--------------
trunk/doc/doxygen/doxygen.config
trunk/src/view/visio/addon/visualize.cpp
Modified: trunk/doc/doxygen/doxygen.config
===================================================================
--- trunk/doc/doxygen/doxygen.config 2014-01-20 18:35:07 UTC (rev 1889)
+++ trunk/doc/doxygen/doxygen.config 2014-01-22 10:26:17 UTC (rev 1890)
@@ -612,7 +612,11 @@
# against the file with absolute path, so to exclude all test directories
# for example use the pattern */test/*
-EXCLUDE_PATTERNS =
+EXCLUDE_PATTERNS = */doc/*
+EXCLUDE_PATTERNS += */tests/*
+EXCLUDE_PATTERNS += */third-party-sw/*
+EXCLUDE_PATTERNS += */tools/*
+EXCLUDE_PATTERNS += */.svn/*
# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names
# (namespaces, classes, functions, etc.) that should be excluded from the
Modified: trunk/src/view/visio/addon/visualize.cpp
===================================================================
--- trunk/src/view/visio/addon/visualize.cpp 2014-01-20 18:35:07 UTC (rev 1889)
+++ trunk/src/view/visio/addon/visualize.cpp 2014-01-22 10:26:17 UTC (rev 1890)
@@ -683,16 +683,7 @@
ConditionNodePtr condition_node = boost::dynamic_pointer_cast<ConditionNode>(node);
if(condition_node != NULL)
{
- //to support same master for HMSC and BMSC, condition muss have special drop
- double page_height = get_page_height(vsoPage);
- // drop the master to bottom-left corner
- // note: drop coordinates are in Visio internal units
- shape = vsoPage->Drop(find_master(ST_MSC_CONDITION), 0, 0);
- // move shape to the right position
- shape->CellsSRC[visSectionObject][visRowXForm1D][vis1DBeginX]->Result[visMillimeters] = condition_node->get_position().get_x();
- shape->CellsSRC[visSectionObject][visRowXForm1D][vis1DBeginY]->Result[visMillimeters] = page_height - condition_node->get_position().get_y() + 5;
- shape->CellsSRC[visSectionObject][visRowXForm1D][vis1DEndX]->Result[visMillimeters] = condition_node->get_position().get_x();
- shape->CellsSRC[visSectionObject][visRowXForm1D][vis1DEndY]->Result[visMillimeters] = page_height - condition_node->get_position().get_y() - 5;
+ shape = DropMaster(vsoPage, find_master(ST_MSC_CONDITION), condition_node->get_position());
shape->Text = condition_node->get_label().c_str();
}
@@ -836,24 +827,12 @@
CShapeUtils::ChangeShapeColor(connector, (*spos)->get_color());
}
Visio::IVCellPtr from_cell = connector->CellsSRC[visSectionObject][visRowXForm1D][vis1DBeginX];
- if(get_shape_type(shape) == ST_MSC_CONDITION)
- {
- from_cell->GlueToPos(shape, 1.0, 0.5);
- }
- else
- {
- from_cell->GlueToPos(shape, 0.5, 0.0);
- }
+ from_cell->GlueToPos(shape, 0.5, 0.0);
+
Visio::IVCellPtr to_cell = connector->CellsSRC[visSectionObject][visRowXForm1D][vis1DEndX];
- if(get_shape_type(successor_shape) == ST_MSC_CONDITION)
- {
- to_cell->GlueToPos(successor_shape, 0.0, 0.5);
- }
- else
- {
- to_cell->GlueToPos(successor_shape, 0.5, 1.0);
- }
+ to_cell->GlueToPos(successor_shape, 0.5, 1.0);
+
// add successors of this node to the stack
// note: std::list<>::push_back doesn't invalidate iterators
push_back_if_unique<HMscNodePtr>(node_stack, successor_node);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <xb...@us...> - 2014-02-23 09:26:37
|
Revision: 1904
http://sourceforge.net/p/scstudio/code/1904
Author: xborza
Date: 2014-02-23 09:26:33 +0000 (Sun, 23 Feb 2014)
Log Message:
-----------
Added NSIS files and debug libraries for easier compilation
Added Paths:
-----------
trunk/src/view/visio/setup-nsis/COPYING_NSIS
trunk/src/view/visio/setup-nsis/README
trunk/src/view/visio/setup-nsis/api.h
trunk/src/view/visio/setup-nsis/pluginapi.c
trunk/src/view/visio/setup-nsis/pluginapi.h
trunk/third-party-sw/redistribute/Microsoft.VC90.DebugCRT.manifest
trunk/third-party-sw/redistribute/msvcm90d.dll
trunk/third-party-sw/redistribute/msvcp90d.dll
trunk/third-party-sw/redistribute/msvcr90d.dll
Added: trunk/src/view/visio/setup-nsis/COPYING_NSIS
===================================================================
--- trunk/src/view/visio/setup-nsis/COPYING_NSIS (rev 0)
+++ trunk/src/view/visio/setup-nsis/COPYING_NSIS 2014-02-23 09:26:33 UTC (rev 1904)
@@ -0,0 +1,144 @@
+COPYRIGHT
+---------
+
+Copyright (C) 1995-2009 Contributors
+
+More detailed copyright information can be found in the individual source code files.
+
+APPLICABLE LICENSES
+-------------------
+
+* All NSIS source code, plug-ins, documentation, examples, header files and graphics, with the exception of the compression modules and where otherwise noted, are licensed under the zlib/libpng license.
+
+* The zlib compression module for NSIS is licensed under the zlib/libpng license.
+
+* The bzip2 compression module for NSIS is licensed under the bzip2 license.
+
+* The LZMA compression module for NSIS is licensed under the Common Public License version 1.0.
+
+ZLIB/LIBPNG LICENSE
+-------------------
+
+This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software.
+
+Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions:
+
+ 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required.
+
+ 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+
+ 3. This notice may not be removed or altered from any source distribution.
+
+BZIP2 LICENSE
+-------------
+
+This program, "bzip2" and associated library "libbzip2", are copyright (C) 1996-2000 Julian R Seward. All rights reserved.
+
+Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+
+ 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
+
+ 2. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required.
+
+ 3. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+
+ 4. The name of the author may not be used to endorse or promote products derived from this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+Julian Seward, Cambridge, UK.
+
+js...@ac...
+
+COMMON PUBLIC LICENSE VERSION 1.0
+---------------------------------
+
+THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS COMMON PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT.
+
+1. DEFINITIONS
+
+"Contribution" means:
+
+ a) in the case of the initial Contributor, the initial code and documentation distributed under this Agreement, and
+ b) in the case of each subsequent Contributor:
+
+ i) changes to the Program, and
+
+ ii) additions to the Program;
+
+ where such changes and/or additions to the Program originate from and are distributed by that particular Contributor. A Contribution 'originates' from a Contributor if it was added to the Program by such Contributor itself or anyone acting on such Contributor's behalf. Contributions do not include additions to the Program which: (i) are separate modules of software distributed in conjunction with the Program under their own license agreement, and (ii) are not derivative works of the Program.
+
+"Contributor" means any person or entity that distributes the Program.
+
+"Licensed Patents " mean patent claims licensable by a Contributor which are necessarily infringed by the use or sale of its Contribution alone or when combined with the Program.
+
+"Program" means the Contributions distributed in accordance with this Agreement.
+
+"Recipient" means anyone who receives the Program under this Agreement, including all Contributors.
+
+2. GRANT OF RIGHTS
+
+ a) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, distribute and sublicense the Contribution of such Contributor, if any, and such derivative works, in source code and object code form.
+
+ b) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free patent license under Licensed Patents to make, use, sell, offer to sell, import and otherwise transfer the Contribution of such Contributor, if any, in source code and object code form. This patent license shall apply to the combination of the Contribution and the Program if, at the time the Contribution is added by the Contributor, such addition of the Contribution causes such combination to be covered by the Licensed Patents. The patent license shall not apply to any other combinations which include the Contribution. No hardware per se is licensed hereunder.
+
+ c) Recipient understands that although each Contributor grants the licenses to its Contributions set forth herein, no assurances are provided by any Contributor that the Program does not infringe the patent or other intellectual property rights of any other entity. Each Contributor disclaims any liability to Recipient for claims brought by any other entity based on infringement of intellectual property rights or otherwise. As a condition to exercising the rights and licenses granted hereunder, each Recipient hereby assumes sole responsibility to secure any other intellectual property rights needed, if any. For example, if a third party patent license is required to allow Recipient to distribute the Program, it is Recipient's responsibility to acquire that license before distributing the Program.
+
+ d) Each Contributor represents that to its knowledge it has sufficient copyright rights in its Contribution, if any, to grant the copyright license set forth in this Agreement.
+
+3. REQUIREMENTS
+
+A Contributor may choose to distribute the Program in object code form under its own license agreement, provided that:
+
+ a) it complies with the terms and conditions of this Agreement; and
+
+ b) its license agreement:
+
+ i) effectively disclaims on behalf of all Contributors all warranties and conditions, express and implied, including warranties or conditions of title and non-infringement, and implied warranties or conditions of merchantability and fitness for a particular purpose;
+
+ ii) effectively excludes on behalf of all Contributors all liability for damages, including direct, indirect, special, incidental and consequential damages, such as lost profits;
+
+ iii) states that any provisions which differ from this Agreement are offered by that Contributor alone and not by any other party; and
+
+ iv) states that source code for the Program is available from such Contributor, and informs licensees how to obtain it in a reasonable manner on or through a medium customarily used for software exchange.
+
+When the Program is made available in source code form:
+
+ a) it must be made available under this Agreement; and
+
+ b) a copy of this Agreement must be included with each copy of the Program.
+
+Contributors may not remove or alter any copyright notices contained within the Program.
+
+Each Contributor must identify itself as the originator of its Contribution, if any, in a manner that reasonably allows subsequent Recipients to identify the originator of the Contribution.
+
+4. COMMERCIAL DISTRIBUTION
+
+Commercial distributors of software may accept certain responsibilities with respect to end users, business partners and the like. While this license is intended to facilitate the commercial use of the Program, the Contributor who includes the Program in a commercial product offering should do so in a manner which does not create potential liability for other Contributors. Therefore, if a Contributor includes the Program in a commercial product offering, such Contributor ("Commercial Contributor") hereby agrees to defend and indemnify every other Contributor ("Indemnified Contributor") against any losses, damages and costs (collectively "Losses") arising from claims, lawsuits and other legal actions brought by a third party against the Indemnified Contributor to the extent caused by the acts or omissions of such Commercial Contributor in connection with its distribution of the Program in a commercial product offering. The obligations in this section do not apply to any claims or Losses relating to any actual or alleged intellectual property infringement. In order to qualify, an Indemnified Contributor must: a) promptly notify the Commercial Contributor in writing of such claim, and b) allow the Commercial Contributor to control, and cooperate with the Commercial Contributor in, the defense and any related settlement negotiations. The Indemnified Contributor may participate in any such claim at its own expense.
+
+For example, a Contributor might include the Program in a commercial product offering, Product X. That Contributor is then a Commercial Contributor. If that Commercial Contributor then makes performance claims, or offers warranties related to Product X, those performance claims and warranties are such Commercial Contributor's responsibility alone. Under this section, the Commercial Contributor would have to defend claims against the other Contributors related to those performance claims and warranties, and if a court requires any other Contributor to pay any damages as a result, the Commercial Contributor must pay those damages.
+
+5. NO WARRANTY
+
+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely responsible for determining the appropriateness of using and distributing the Program and assumes all risks associated with its exercise of rights under this Agreement, including but not limited to the risks and costs of program errors, compliance with applicable laws, damage to or loss of data, programs or equipment, and unavailability or interruption of operations.
+
+6. DISCLAIMER OF LIABILITY
+
+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
+
+7. GENERAL
+
+If any provision of this Agreement is invalid or unenforceable under applicable law, it shall not affect the validity or enforceability of the remainder of the terms of this Agreement, and without further action by the parties hereto, such provision shall be reformed to the minimum extent necessary to make such provision valid and enforceable.
+
+If Recipient institutes patent litigation against a Contributor with respect to a patent applicable to software (including a cross-claim or counterclaim in a lawsuit), then any patent licenses granted by that Contributor to such Recipient under this Agreement shall terminate as of the date such litigation is filed. In addition, if Recipient institutes patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Program itself (excluding combinations of the Program with other software or hardware) infringes such Recipient's patent(s), then such Recipient's rights granted under Section 2(b) shall terminate as of the date such litigation is filed.
+
+All Recipient's rights under this Agreement shall terminate if it fails to comply with any of the material terms or conditions of this Agreement and does not cure such failure in a reasonable period of time after becoming aware of such noncompliance. If all Recipient's rights under this Agreement terminate, Recipient agrees to cease use and distribution of the Program as soon as reasonably practicable. However, Recipient's obligations under this Agreement and any licenses granted by Recipient relating to the Program shall continue and survive.
+
+Everyone is permitted to copy and distribute copies of this Agreement, but in order to avoid inconsistency the Agreement is copyrighted and may only be modified in the following manner. The Agreement Steward reserves the right to publish new versions (including revisions) of this Agreement from time to time. No one other than the Agreement Steward has the right to modify this Agreement. IBM is the initial Agreement Steward. IBM may assign the responsibility to serve as the Agreement Steward to a suitable separate entity. Each new version of the Agreement will be given a distinguishing version number. The Program (including Contributions) may always be distributed subject to the version of the Agreement under which it was received. In addition, after a new version of the Agreement is published, Contributor may elect to distribute the Program (including its Contributions) under the new version. Except as expressly stated in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to the intellectual property of any Contributor under this Agreement, whether expressly, by implication, estoppel or otherwise. All rights in the Program not expressly granted under this Agreement are reserved.
+
+This Agreement is governed by the laws of the State of New York and the intellectual property laws of the United States of America. No party to this Agreement will bring a legal action under this Agreement more than one year after the cause of action arose. Each party waives its rights to a jury trial in any resulting litigation.
+
+SPECIAL EXCEPTION FOR LZMA COMPRESSION MODULE
+---------------------------------------------
+
+Igor Pavlov and Amir Szekely, the authors of the LZMA compression module for NSIS, expressly permit you to statically or dynamically link your code (or bind by name) to the files from the LZMA compression module for NSIS without subjecting your linked code to the terms of the Common Public license version 1.0. Any modifications or additions to files from the LZMA compression module for NSIS, however, are subject to the terms of the Common Public License version 1.0.
Added: trunk/src/view/visio/setup-nsis/README
===================================================================
--- trunk/src/view/visio/setup-nsis/README (rev 0)
+++ trunk/src/view/visio/setup-nsis/README 2014-02-23 09:26:33 UTC (rev 1904)
@@ -0,0 +1,4 @@
+
+Files "api.h", "pluginapi.h" and "pluginapi.c" are parts of
+NSIS 2.46 distribution downloaded from
+http://nsis.sourceforge.net/Download
\ No newline at end of file
Added: trunk/src/view/visio/setup-nsis/api.h
===================================================================
--- trunk/src/view/visio/setup-nsis/api.h (rev 0)
+++ trunk/src/view/visio/setup-nsis/api.h 2014-02-23 09:26:33 UTC (rev 1904)
@@ -0,0 +1,83 @@
+/*
+ * api.h
+ *
+ * This file is a part of NSIS.
+ *
+ * Copyright (C) 1999-2009 Nullsoft and Contributors
+ *
+ * Licensed under the zlib/libpng license (the "License");
+ * you may not use this file except in compliance with the License.
+ *
+ * Licence details can be found in the file COPYING_NSIS.
+ *
+ * This software is provided 'as-is', without any express or implied
+ * warranty.
+ */
+
+#ifndef _NSIS_EXEHEAD_API_H_
+#define _NSIS_EXEHEAD_API_H_
+
+// Starting with NSIS 2.42, you can check the version of the plugin API in exec_flags->plugin_api_version
+// The format is 0xXXXXYYYY where X is the major version and Y is the minor version (MAKELONG(y,x))
+// When doing version checks, always remember to use >=, ex: if (pX->exec_flags->plugin_api_version >= NSISPIAPIVER_1_0) {}
+
+#define NSISPIAPIVER_1_0 0x00010000
+#define NSISPIAPIVER_CURR NSISPIAPIVER_1_0
+
+// NSIS Plug-In Callback Messages
+enum NSPIM
+{
+ NSPIM_UNLOAD, // This is the last message a plugin gets, do final cleanup
+ NSPIM_GUIUNLOAD, // Called after .onGUIEnd
+};
+
+// Prototype for callbacks registered with extra_parameters->RegisterPluginCallback()
+// Return NULL for unknown messages
+// Should always be __cdecl for future expansion possibilities
+typedef UINT_PTR (*NSISPLUGINCALLBACK)(enum NSPIM);
+
+// extra_parameters data structures containing other interesting stuff
+// but the stack, variables and HWND passed on to plug-ins.
+typedef struct
+{
+ int autoclose;
+ int all_user_var;
+ int exec_error;
+ int abort;
+ int exec_reboot; // NSIS_SUPPORT_REBOOT
+ int reboot_called; // NSIS_SUPPORT_REBOOT
+ int XXX_cur_insttype; // depreacted
+ int plugin_api_version; // see NSISPIAPIVER_CURR
+ // used to be XXX_insttype_changed
+ int silent; // NSIS_CONFIG_SILENT_SUPPORT
+ int instdir_error;
+ int rtl;
+ int errlvl;
+ int alter_reg_view;
+ int status_update;
+} exec_flags_t;
+
+#ifndef NSISCALL
+# define NSISCALL __stdcall
+#endif
+
+typedef struct {
+ exec_flags_t *exec_flags;
+ int (NSISCALL *ExecuteCodeSegment)(int, HWND);
+ void (NSISCALL *validate_filename)(char *);
+ int (NSISCALL *RegisterPluginCallback)(HMODULE, NSISPLUGINCALLBACK); // returns 0 on success, 1 if already registered and < 0 on errors
+} extra_parameters;
+
+// Definitions for page showing plug-ins
+// See Ui.c to understand better how they're used
+
+// sent to the outer window to tell it to go to the next inner window
+#define WM_NOTIFY_OUTER_NEXT (WM_USER+0x8)
+
+// custom pages should send this message to let NSIS know they're ready
+#define WM_NOTIFY_CUSTOM_READY (WM_USER+0xd)
+
+// sent as wParam with WM_NOTIFY_OUTER_NEXT when user cancels - heed its warning
+#define NOTIFY_BYE_BYE 'x'
+
+#endif /* _PLUGIN_H_ */
Added: trunk/src/view/visio/setup-nsis/pluginapi.c
===================================================================
--- trunk/src/view/visio/setup-nsis/pluginapi.c (rev 0)
+++ trunk/src/view/visio/setup-nsis/pluginapi.c 2014-02-23 09:26:33 UTC (rev 1904)
@@ -0,0 +1,207 @@
+/*
+ * pluginapi.c
+ *
+ * This file is a part of NSIS.
+ *
+ * Copyright (C) 1999-2009 Nullsoft and Contributors
+ *
+ * Licensed under the zlib/libpng license (the "License");
+ * you may not use this file except in compliance with the License.
+ *
+ * Licence details can be found in the file COPYING_NSIS.
+ *
+ * This software is provided 'as-is', without any express or implied
+ * warranty.
+ */
+
+#include <windows.h>
+
+#include "pluginapi.h"
+
+unsigned int g_stringsize;
+stack_t **g_stacktop;
+char *g_variables;
+
+// utility functions (not required but often useful)
+
+int NSISCALL popstring(char *str)
+{
+ stack_t *th;
+ if (!g_stacktop || !*g_stacktop) return 1;
+ th=(*g_stacktop);
+ if (str) lstrcpyA(str,th->text);
+ *g_stacktop = th->next;
+ GlobalFree((HGLOBAL)th);
+ return 0;
+}
+
+int NSISCALL popstringn(char *str, int maxlen)
+{
+ stack_t *th;
+ if (!g_stacktop || !*g_stacktop) return 1;
+ th=(*g_stacktop);
+ if (str) lstrcpynA(str,th->text,maxlen?maxlen:g_stringsize);
+ *g_stacktop = th->next;
+ GlobalFree((HGLOBAL)th);
+ return 0;
+}
+
+void NSISCALL pushstring(const char *str)
+{
+ stack_t *th;
+ if (!g_stacktop) return;
+ th=(stack_t*)GlobalAlloc(GPTR,sizeof(stack_t)+g_stringsize);
+ lstrcpynA(th->text,str,g_stringsize);
+ th->next=*g_stacktop;
+ *g_stacktop=th;
+}
+
+char * NSISCALL getuservariable(const int varnum)
+{
+ if (varnum < 0 || varnum >= __INST_LAST) return NULL;
+ return g_variables+varnum*g_stringsize;
+}
+
+void NSISCALL setuservariable(const int varnum, const char *var)
+{
+ if (var != NULL && varnum >= 0 && varnum < __INST_LAST)
+ lstrcpyA(g_variables + varnum*g_stringsize, var);
+}
+
+// playing with integers
+
+int NSISCALL myatoi(const char *s)
+{
+ int v=0;
+ if (*s == '0' && (s[1] == 'x' || s[1] == 'X'))
+ {
+ s++;
+ for (;;)
+ {
+ int c=*(++s);
+ if (c >= '0' && c <= '9') c-='0';
+ else if (c >= 'a' && c <= 'f') c-='a'-10;
+ else if (c >= 'A' && c <= 'F') c-='A'-10;
+ else break;
+ v<<=4;
+ v+=c;
+ }
+ }
+ else if (*s == '0' && s[1] <= '7' && s[1] >= '0')
+ {
+ for (;;)
+ {
+ int c=*(++s);
+ if (c >= '0' && c <= '7') c-='0';
+ else break;
+ v<<=3;
+ v+=c;
+ }
+ }
+ else
+ {
+ int sign=0;
+ if (*s == '-') sign++; else s--;
+ for (;;)
+ {
+ int c=*(++s) - '0';
+ if (c < 0 || c > 9) break;
+ v*=10;
+ v+=c;
+ }
+ if (sign) v = -v;
+ }
+
+ return v;
+}
+
+unsigned NSISCALL myatou(const char *s)
+{
+ unsigned int v=0;
+
+ for (;;)
+ {
+ unsigned int c=*s++;
+ if (c >= '0' && c <= '9') c-='0';
+ else break;
+ v*=10;
+ v+=c;
+ }
+ return v;
+}
+
+int NSISCALL myatoi_or(const char *s)
+{
+ int v=0;
+ if (*s == '0' && (s[1] == 'x' || s[1] == 'X'))
+ {
+ s++;
+ for (;;)
+ {
+ int c=*(++s);
+ if (c >= '0' && c <= '9') c-='0';
+ else if (c >= 'a' && c <= 'f') c-='a'-10;
+ else if (c >= 'A' && c <= 'F') c-='A'-10;
+ else break;
+ v<<=4;
+ v+=c;
+ }
+ }
+ else if (*s == '0' && s[1] <= '7' && s[1] >= '0')
+ {
+ for (;;)
+ {
+ int c=*(++s);
+ if (c >= '0' && c <= '7') c-='0';
+ else break;
+ v<<=3;
+ v+=c;
+ }
+ }
+ else
+ {
+ int sign=0;
+ if (*s == '-') sign++; else s--;
+ for (;;)
+ {
+ int c=*(++s) - '0';
+ if (c < 0 || c > 9) break;
+ v*=10;
+ v+=c;
+ }
+ if (sign) v = -v;
+ }
+
+ // Support for simple ORed expressions
+ if (*s == '|')
+ {
+ v |= myatoi_or(s+1);
+ }
+
+ return v;
+}
+
+int NSISCALL popint()
+{
+ char buf[128];
+ if (popstringn(buf,sizeof(buf)))
+ return 0;
+
+ return myatoi(buf);
+}
+
+int NSISCALL popint_or()
+{
+ char buf[128];
+ if (popstringn(buf,sizeof(buf)))
+ return 0;
+
+ return myatoi_or(buf);
+}
+
+void NSISCALL pushint(int value)
+{
+ char buffer[1024];
+ wsprintf(buffer, "%d", value);
+ pushstring(buffer);
+}
Added: trunk/src/view/visio/setup-nsis/pluginapi.h
===================================================================
--- trunk/src/view/visio/setup-nsis/pluginapi.h (rev 0)
+++ trunk/src/view/visio/setup-nsis/pluginapi.h 2014-02-23 09:26:33 UTC (rev 1904)
@@ -0,0 +1,90 @@
+/*
+ * pluginapi.h
+ *
+ * This file is a part of NSIS.
+ *
+ * Copyright (C) 1999-2009 Nullsoft and Contributors
+ *
+ * Licensed under the zlib/libpng license (the "License");
+ * you may not use this file except in compliance with the License.
+ *
+ * Licence details can be found in the file COPYING_NSIS.
+ *
+ * This software is provided 'as-is', without any express or implied
+ * warranty.
+ */
+
+#ifndef ___NSIS_PLUGIN__H___
+#define ___NSIS_PLUGIN__H___
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#include "api.h"
+
+#ifndef NSISCALL
+# define NSISCALL __stdcall
+#endif
+
+#define EXDLL_INIT() { \
+ g_stringsize=string_size; \
+ g_stacktop=stacktop; \
+ g_variables=variables; }
+
+typedef struct _stack_t {
+ struct _stack_t *next;
+ char text[1]; // this should be the length of string_size
+} stack_t;
+
+enum
+{
+INST_0, // $0
+INST_1, // $1
+INST_2, // $2
+INST_3, // $3
+INST_4, // $4
+INST_5, // $5
+INST_6, // $6
+INST_7, // $7
+INST_8, // $8
+INST_9, // $9
+INST_R0, // $R0
+INST_R1, // $R1
+INST_R2, // $R2
+INST_R3, // $R3
+INST_R4, // $R4
+INST_R5, // $R5
+INST_R6, // $R6
+INST_R7, // $R7
+INST_R8, // $R8
+INST_R9, // $R9
+INST_CMDLINE, // $CMDLINE
+INST_INSTDIR, // $INSTDIR
+INST_OUTDIR, // $OUTDIR
+INST_EXEDIR, // $EXEDIR
+INST_LANG, // $LANGUAGE
+__INST_LAST
+};
+
+extern unsigned int g_stringsize;
+extern stack_t **g_stacktop;
+extern char *g_variables;
+
+int NSISCALL popstring(char *str); // 0 on success, 1 on empty stack
+int NSISCALL popstringn(char *str, int maxlen); // with length limit, pass 0 for g_stringsize
+int NSISCALL popint(); // pops an integer
+int NSISCALL popint_or(); // with support for or'ing (2|4|8)
+int NSISCALL myatoi(const char *s); // converts a string to an integer
+unsigned NSISCALL myatou(const char *s); // converts a string to an unsigned integer, decimal only
+int NSISCALL myatoi_or(const char *s); // with support for or'ing (2|4|8)
+void NSISCALL pushstring(const char *str);
+void NSISCALL pushint(int value);
+char * NSISCALL getuservariable(const int varnum);
+void NSISCALL setuservariable(const int varnum, const char *var);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif//!___NSIS_PLUGIN__H___
Added: trunk/third-party-sw/redistribute/Microsoft.VC90.DebugCRT.manifest
===================================================================
--- trunk/third-party-sw/redistribute/Microsoft.VC90.DebugCRT.manifest (rev 0)
+++ trunk/third-party-sw/redistribute/Microsoft.VC90.DebugCRT.manifest 2014-02-23 09:26:33 UTC (rev 1904)
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<!-- Copyright (c) Microsoft Corporation. All rights reserved. -->
+<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
+ <noInheritable/>
+ <assemblyIdentity
+ type="win32"
+ name="Microsoft.VC90.DebugCRT"
+ version="9.0.21022.8"
+ processorArchitecture="x86"
+ publicKeyToken="1fc8b3b9a1e18e3b"
+ />
+ <file name="msvcr90d.dll" /> <file name="msvcp90d.dll" /> <file name="msvcm90d.dll" />
+</assembly>
Added: trunk/third-party-sw/redistribute/msvcm90d.dll
===================================================================
(Binary files differ)
Index: trunk/third-party-sw/redistribute/msvcm90d.dll
===================================================================
--- trunk/third-party-sw/redistribute/msvcm90d.dll 2014-02-04 20:48:12 UTC (rev 1903)
+++ trunk/third-party-sw/redistribute/msvcm90d.dll 2014-02-23 09:26:33 UTC (rev 1904)
Property changes on: trunk/third-party-sw/redistribute/msvcm90d.dll
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Added: trunk/third-party-sw/redistribute/msvcp90d.dll
===================================================================
(Binary files differ)
Index: trunk/third-party-sw/redistribute/msvcp90d.dll
===================================================================
--- trunk/third-party-sw/redistribute/msvcp90d.dll 2014-02-04 20:48:12 UTC (rev 1903)
+++ trunk/third-party-sw/redistribute/msvcp90d.dll 2014-02-23 09:26:33 UTC (rev 1904)
Property changes on: trunk/third-party-sw/redistribute/msvcp90d.dll
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Added: trunk/third-party-sw/redistribute/msvcr90d.dll
===================================================================
(Binary files differ)
Index: trunk/third-party-sw/redistribute/msvcr90d.dll
===================================================================
--- trunk/third-party-sw/redistribute/msvcr90d.dll 2014-02-04 20:48:12 UTC (rev 1903)
+++ trunk/third-party-sw/redistribute/msvcr90d.dll 2014-02-23 09:26:33 UTC (rev 1904)
Property changes on: trunk/third-party-sw/redistribute/msvcr90d.dll
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <xf...@us...> - 2014-04-03 09:24:43
|
Revision: 1905
http://sourceforge.net/p/scstudio/code/1905
Author: xfarmad
Date: 2014-04-03 09:24:40 +0000 (Thu, 03 Apr 2014)
Log Message:
-----------
FIX: VS2010 dll files redistribute
Modified Paths:
--------------
trunk/src/view/visio/scstudio.nsi
trunk/src/view/visio/setup-nsis/certificates.cpp
Added Paths:
-----------
trunk/third-party-sw/redistribute/atl100.dll
trunk/third-party-sw/redistribute/msvcp100.dll
trunk/third-party-sw/redistribute/msvcr100.dll
Modified: trunk/src/view/visio/scstudio.nsi
===================================================================
--- trunk/src/view/visio/scstudio.nsi 2014-02-23 09:26:33 UTC (rev 1904)
+++ trunk/src/view/visio/scstudio.nsi 2014-04-03 09:24:40 UTC (rev 1905)
@@ -180,15 +180,11 @@
SetOutPath $INSTDIR\bin
DetailPrint "Installing Microsoft libraries"
- File "..\..\..\third-party-sw\redistribute\Microsoft.VC90.ATL.manifest"
- File "..\..\..\third-party-sw\redistribute\Microsoft.VC90.ATL.manifest"
- File "..\..\..\third-party-sw\redistribute\atl90.dll"
- File "..\..\..\third-party-sw\redistribute\Microsoft.VC90.CRT.manifest"
- File "..\..\..\third-party-sw\redistribute\msvcm90.dll"
- File "..\..\..\third-party-sw\redistribute\msvcp90.dll"
- File "..\..\..\third-party-sw\redistribute\msvcr90.dll"
+ File "..\..\..\third-party-sw\redistribute\atl100.dll"
+ File "..\..\..\third-party-sw\redistribute\msvcp100.dll"
+ File "..\..\..\third-party-sw\redistribute\msvcr100.dll"
File "..\..\..\third-party-sw\lpsolve\lib\lpsolve55.dll"
- File "..\..\..\third-party-sw\redistribute\capicom.dll"
+ File "..\..\..\third-party-sw\redistribute\CapiCom.dll"
ExecWait 'regsvr32.exe /s "$INSTDIR\capicom.dll"'
SetOutPath $TEMP
Modified: trunk/src/view/visio/setup-nsis/certificates.cpp
===================================================================
--- trunk/src/view/visio/setup-nsis/certificates.cpp 2014-02-23 09:26:33 UTC (rev 1904)
+++ trunk/src/view/visio/setup-nsis/certificates.cpp 2014-04-03 09:24:40 UTC (rev 1905)
@@ -27,7 +27,7 @@
// include Microsoft CAPICOM 2.0
// http://go.microsoft.com/fwlink/?linkid=84567
-#import "capicom.dll"
+#import "..\..\..\..\third-party-sw\redistribute\capicom.dll"
extern "C" __declspec(dllexport)
void __cdecl InstallPublisherCertificate(HWND hwndParent,
Added: trunk/third-party-sw/redistribute/atl100.dll
===================================================================
(Binary files differ)
Index: trunk/third-party-sw/redistribute/atl100.dll
===================================================================
--- trunk/third-party-sw/redistribute/atl100.dll 2014-02-23 09:26:33 UTC (rev 1904)
+++ trunk/third-party-sw/redistribute/atl100.dll 2014-04-03 09:24:40 UTC (rev 1905)
Property changes on: trunk/third-party-sw/redistribute/atl100.dll
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Added: trunk/third-party-sw/redistribute/msvcp100.dll
===================================================================
(Binary files differ)
Index: trunk/third-party-sw/redistribute/msvcp100.dll
===================================================================
--- trunk/third-party-sw/redistribute/msvcp100.dll 2014-02-23 09:26:33 UTC (rev 1904)
+++ trunk/third-party-sw/redistribute/msvcp100.dll 2014-04-03 09:24:40 UTC (rev 1905)
Property changes on: trunk/third-party-sw/redistribute/msvcp100.dll
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Added: trunk/third-party-sw/redistribute/msvcr100.dll
===================================================================
(Binary files differ)
Index: trunk/third-party-sw/redistribute/msvcr100.dll
===================================================================
--- trunk/third-party-sw/redistribute/msvcr100.dll 2014-02-23 09:26:33 UTC (rev 1904)
+++ trunk/third-party-sw/redistribute/msvcr100.dll 2014-04-03 09:24:40 UTC (rev 1905)
Property changes on: trunk/third-party-sw/redistribute/msvcr100.dll
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|