Commit 2ef15461 authored by Pavel Vainerman's avatar Pavel Vainerman

(Unet2): добавил возможность задать датчики для связи количества потерянных…

(Unet2): добавил возможность задать датчики для связи количества потерянных пакетов не только для каждого канала отдельно, но и для узла в целом (обобщённые датчики).
parent b963e5f7
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
Name: libuniset Name: libuniset
Version: 1.3 Version: 1.3
Release: alt3 Release: alt4
Summary: UniSet - library for building distributed industrial control systems Summary: UniSet - library for building distributed industrial control systems
License: GPL License: GPL
Group: Development/C++ Group: Development/C++
...@@ -213,6 +213,9 @@ rm -f %buildroot%_libdir/*.la ...@@ -213,6 +213,9 @@ rm -f %buildroot%_libdir/*.la
%changelog %changelog
* Fri Feb 03 2012 Pavel Vainerman <pv@altlinux.ru> 1.3-alt4
- add commmon (respond and lostpackets) sensors for UNet2
* Tue Jan 31 2012 Pavel Vainerman <pv@altlinux.ru> 1.3-alt3 * Tue Jan 31 2012 Pavel Vainerman <pv@altlinux.ru> 1.3-alt3
- minor fixes in simitator - minor fixes in simitator
......
# Doxyfile 1.7.6.1 # Doxyfile 1.7.6.1
# This file describes the settings to be used by the documentation system # This file describes the settings to be used by the documentation system
# doxygen (www.doxygen.org) for a project # doxygen (www.doxygen.org) for a project.
# #
# All text after a hash (#) is considered a comment and will be ignored # All text after a hash (#) is considered a comment and will be ignored.
# The format is: # The format is:
# TAG = value [value, ...] # TAG = value [value, ...]
# For lists items can also be appended using: # For lists items can also be appended using:
# TAG += value [value, ...] # TAG += value [value, ...]
# Values that contain spaces should be placed between quotes (" ") # Values that contain spaces should be placed between quotes (" ").
#--------------------------------------------------------------------------- #---------------------------------------------------------------------------
# Project related configuration options # Project related configuration options
...@@ -553,7 +553,8 @@ SHOW_DIRECTORIES = YES ...@@ -553,7 +553,8 @@ SHOW_DIRECTORIES = YES
SHOW_FILES = YES SHOW_FILES = YES
# Set the SHOW_NAMESPACES tag to NO to disable the generation of the # Set the SHOW_NAMESPACES tag to NO to disable the generation of the
# Namespaces page. This will remove the Namespaces entry from the Quick Index # Namespaces page.
# This will remove the Namespaces entry from the Quick Index
# and from the Folder Tree View (if specified). The default is YES. # and from the Folder Tree View (if specified). The default is YES.
SHOW_NAMESPACES = YES SHOW_NAMESPACES = YES
...@@ -630,7 +631,7 @@ WARN_NO_PARAMDOC = NO ...@@ -630,7 +631,7 @@ WARN_NO_PARAMDOC = NO
# $version, which will be replaced by the version of the file (if it could # $version, which will be replaced by the version of the file (if it could
# be obtained via FILE_VERSION_FILTER) # be obtained via FILE_VERSION_FILTER)
WARN_FORMAT = "$file:$line: $text" WARN_FORMAT =
# The WARN_LOGFILE tag can be used to specify a file to which warning # The WARN_LOGFILE tag can be used to specify a file to which warning
# and error messages should be written. If left blank the output is written # and error messages should be written. If left blank the output is written
...@@ -653,8 +654,7 @@ INPUT = DocPages/ \ ...@@ -653,8 +654,7 @@ INPUT = DocPages/ \
../src/ \ ../src/ \
../conf \ ../conf \
../Utilities \ ../Utilities \
../extensions \ ../extensions
../python
# This tag can be used to specify the character encoding of the source files # This tag can be used to specify the character encoding of the source files
# that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is # that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is
...@@ -675,8 +675,7 @@ INPUT_ENCODING = UTF-8 ...@@ -675,8 +675,7 @@ INPUT_ENCODING = UTF-8
FILE_PATTERNS = *.dox \ FILE_PATTERNS = *.dox \
*.cc \ *.cc \
*.h \ *.h \
*.idl \ *.idl
*.py
# The RECURSIVE tag can be used to turn specify whether or not subdirectories # The RECURSIVE tag can be used to turn specify whether or not subdirectories
# should be searched for input files as well. Possible values are YES and NO. # should be searched for input files as well. Possible values are YES and NO.
...@@ -726,7 +725,7 @@ EXAMPLE_PATH = ...@@ -726,7 +725,7 @@ EXAMPLE_PATH =
# and *.h) to filter out the source-files in the directories. If left # and *.h) to filter out the source-files in the directories. If left
# blank all files are included. # blank all files are included.
EXAMPLE_PATTERNS = EXAMPLE_PATTERNS = DocPages/exmaples
# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be # If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be
# searched for input files to be used with the \include or \dontinclude # searched for input files to be used with the \include or \dontinclude
...@@ -746,14 +745,17 @@ IMAGE_PATH = DocPages/Images ...@@ -746,14 +745,17 @@ IMAGE_PATH = DocPages/Images
# by executing (via popen()) the command <filter> <input-file>, where <filter> # by executing (via popen()) the command <filter> <input-file>, where <filter>
# is the value of the INPUT_FILTER tag, and <input-file> is the name of an # is the value of the INPUT_FILTER tag, and <input-file> is the name of an
# input file. Doxygen will then use the output that the filter program writes # input file. Doxygen will then use the output that the filter program writes
# to standard output. If FILTER_PATTERNS is specified, this tag will be # to standard output.
# If FILTER_PATTERNS is specified, this tag will be
# ignored. # ignored.
INPUT_FILTER = INPUT_FILTER =
# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern # The FILTER_PATTERNS tag can be used to specify filters on a per file pattern
# basis. Doxygen will compare the file name with each pattern and apply the # basis.
# filter if there is a match. The filters are a list of the form: # Doxygen will compare the file name with each pattern and apply the
# filter if there is a match.
# The filters are a list of the form:
# pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further # pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further
# info on how filters are used. If FILTER_PATTERNS is empty or if # info on how filters are used. If FILTER_PATTERNS is empty or if
# non of the patterns match the file name, INPUT_FILTER is applied. # non of the patterns match the file name, INPUT_FILTER is applied.
...@@ -811,7 +813,8 @@ REFERENCES_RELATION = YES ...@@ -811,7 +813,8 @@ REFERENCES_RELATION = YES
# If the REFERENCES_LINK_SOURCE tag is set to YES (the default) # If the REFERENCES_LINK_SOURCE tag is set to YES (the default)
# and SOURCE_BROWSER tag is set to YES, then the hyperlinks from # and SOURCE_BROWSER tag is set to YES, then the hyperlinks from
# functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will # functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will
# link to the source code. Otherwise they will link to the documentation. # link to the source code.
# Otherwise they will link to the documentation.
REFERENCES_LINK_SOURCE = YES REFERENCES_LINK_SOURCE = YES
...@@ -865,7 +868,7 @@ GENERATE_HTML = YES ...@@ -865,7 +868,7 @@ GENERATE_HTML = YES
# If a relative path is entered the value of OUTPUT_DIRECTORY will be # If a relative path is entered the value of OUTPUT_DIRECTORY will be
# put in front of it. If left blank `html' will be used as the default path. # put in front of it. If left blank `html' will be used as the default path.
HTML_OUTPUT = html HTML_OUTPUT =
# The HTML_FILE_EXTENSION tag can be used to specify the file extension for # The HTML_FILE_EXTENSION tag can be used to specify the file extension for
# each generated HTML page (for example: .htm,.php,.asp). If it is left blank # each generated HTML page (for example: .htm,.php,.asp). If it is left blank
...@@ -895,7 +898,7 @@ HTML_FOOTER = ...@@ -895,7 +898,7 @@ HTML_FOOTER =
# If the HTML_TIMESTAMP tag is set to YES then the generated HTML # If the HTML_TIMESTAMP tag is set to YES then the generated HTML
# documentation will contain the timesstamp. # documentation will contain the timesstamp.
HTML_TIMESTAMP = YES HTML_TIMESTAMP = NO
# The HTML_STYLESHEET tag can be used to specify a user-defined cascading # The HTML_STYLESHEET tag can be used to specify a user-defined cascading
# style sheet that is used by each HTML page. It can be used to # style sheet that is used by each HTML page. It can be used to
...@@ -1228,7 +1231,7 @@ GENERATE_LATEX = NO ...@@ -1228,7 +1231,7 @@ GENERATE_LATEX = NO
# If a relative path is entered the value of OUTPUT_DIRECTORY will be # If a relative path is entered the value of OUTPUT_DIRECTORY will be
# put in front of it. If left blank `latex' will be used as the default path. # put in front of it. If left blank `latex' will be used as the default path.
LATEX_OUTPUT = latex LATEX_OUTPUT =
# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be # The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be
# invoked. If left blank `latex' will be used as the default command name. # invoked. If left blank `latex' will be used as the default command name.
...@@ -1328,7 +1331,7 @@ GENERATE_RTF = NO ...@@ -1328,7 +1331,7 @@ GENERATE_RTF = NO
# If a relative path is entered the value of OUTPUT_DIRECTORY will be # If a relative path is entered the value of OUTPUT_DIRECTORY will be
# put in front of it. If left blank `rtf' will be used as the default path. # put in front of it. If left blank `rtf' will be used as the default path.
RTF_OUTPUT = rtf RTF_OUTPUT =
# If the COMPACT_RTF tag is set to YES Doxygen generates more compact # If the COMPACT_RTF tag is set to YES Doxygen generates more compact
# RTF documents. This may be useful for small projects and may help to # RTF documents. This may be useful for small projects and may help to
...@@ -1369,12 +1372,12 @@ GENERATE_MAN = NO ...@@ -1369,12 +1372,12 @@ GENERATE_MAN = NO
# If a relative path is entered the value of OUTPUT_DIRECTORY will be # If a relative path is entered the value of OUTPUT_DIRECTORY will be
# put in front of it. If left blank `man' will be used as the default path. # put in front of it. If left blank `man' will be used as the default path.
MAN_OUTPUT = man MAN_OUTPUT =
# The MAN_EXTENSION tag determines the extension that is added to # The MAN_EXTENSION tag determines the extension that is added to
# the generated man pages (default is the subroutine's section .3) # the generated man pages (default is the subroutine's section .3)
MAN_EXTENSION = .3 MAN_EXTENSION =
# If the MAN_LINKS tag is set to YES and Doxygen generates man output, # If the MAN_LINKS tag is set to YES and Doxygen generates man output,
# then it will generate one additional man file for each entity # then it will generate one additional man file for each entity
...@@ -1450,8 +1453,10 @@ GENERATE_PERLMOD = NO ...@@ -1450,8 +1453,10 @@ GENERATE_PERLMOD = NO
PERLMOD_LATEX = NO PERLMOD_LATEX = NO
# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be # If the PERLMOD_PRETTY tag is set to YES the Perl module output will be
# nicely formatted so it can be parsed by a human reader. This is useful # nicely formatted so it can be parsed by a human reader.
# if you want to understand what is going on. On the other hand, if this # This is useful
# if you want to understand what is going on.
# On the other hand, if this
# tag is set to NO the size of the Perl module output will be much smaller # tag is set to NO the size of the Perl module output will be much smaller
# and Perl will parse it just the same. # and Perl will parse it just the same.
...@@ -1541,8 +1546,10 @@ SKIP_FUNCTION_MACROS = YES ...@@ -1541,8 +1546,10 @@ SKIP_FUNCTION_MACROS = YES
# Optionally an initial location of the external documentation # Optionally an initial location of the external documentation
# can be added for each tagfile. The format of a tag file without # can be added for each tagfile. The format of a tag file without
# this location is as follows: # this location is as follows:
#
# TAGFILES = file1 file2 ... # TAGFILES = file1 file2 ...
# Adding location for the tag files is done as follows: # Adding location for the tag files is done as follows:
#
# TAGFILES = file1=loc1 "file2 = loc2" ... # TAGFILES = file1=loc1 "file2 = loc2" ...
# where "loc1" and "loc2" can be relative or absolute paths or # where "loc1" and "loc2" can be relative or absolute paths or
# URLs. If a location is present for each tag, the installdox tool # URLs. If a location is present for each tag, the installdox tool
...@@ -1574,7 +1581,7 @@ EXTERNAL_GROUPS = YES ...@@ -1574,7 +1581,7 @@ EXTERNAL_GROUPS = YES
# The PERL_PATH should be the absolute path and name of the perl script # The PERL_PATH should be the absolute path and name of the perl script
# interpreter (i.e. the result of `which perl'). # interpreter (i.e. the result of `which perl').
PERL_PATH = /usr/bin/perl PERL_PATH =
#--------------------------------------------------------------------------- #---------------------------------------------------------------------------
# Configuration options related to the dot tool # Configuration options related to the dot tool
......
# Doxyfile 1.7.6.1 # Doxyfile 1.7.6.1
# This file describes the settings to be used by the documentation system # This file describes the settings to be used by the documentation system
# doxygen (www.doxygen.org) for a project # doxygen (www.doxygen.org) for a project.
# #
# All text after a hash (#) is considered a comment and will be ignored # All text after a hash (#) is considered a comment and will be ignored.
# The format is: # The format is:
# TAG = value [value, ...] # TAG = value [value, ...]
# For lists items can also be appended using: # For lists items can also be appended using:
# TAG += value [value, ...] # TAG += value [value, ...]
# Values that contain spaces should be placed between quotes (" ") # Values that contain spaces should be placed between quotes (" ").
#--------------------------------------------------------------------------- #---------------------------------------------------------------------------
# Project related configuration options # Project related configuration options
...@@ -553,7 +553,8 @@ SHOW_DIRECTORIES = NO ...@@ -553,7 +553,8 @@ SHOW_DIRECTORIES = NO
SHOW_FILES = YES SHOW_FILES = YES
# Set the SHOW_NAMESPACES tag to NO to disable the generation of the # Set the SHOW_NAMESPACES tag to NO to disable the generation of the
# Namespaces page. This will remove the Namespaces entry from the Quick Index # Namespaces page.
# This will remove the Namespaces entry from the Quick Index
# and from the Folder Tree View (if specified). The default is YES. # and from the Folder Tree View (if specified). The default is YES.
SHOW_NAMESPACES = YES SHOW_NAMESPACES = YES
...@@ -630,7 +631,7 @@ WARN_NO_PARAMDOC = NO ...@@ -630,7 +631,7 @@ WARN_NO_PARAMDOC = NO
# $version, which will be replaced by the version of the file (if it could # $version, which will be replaced by the version of the file (if it could
# be obtained via FILE_VERSION_FILTER) # be obtained via FILE_VERSION_FILTER)
WARN_FORMAT = "$file:$line: $text" WARN_FORMAT =
# The WARN_LOGFILE tag can be used to specify a file to which warning # The WARN_LOGFILE tag can be used to specify a file to which warning
# and error messages should be written. If left blank the output is written # and error messages should be written. If left blank the output is written
...@@ -647,14 +648,13 @@ WARN_LOGFILE = ...@@ -647,14 +648,13 @@ WARN_LOGFILE =
# directories like "/usr/src/myproject". Separate the files or directories # directories like "/usr/src/myproject". Separate the files or directories
# with spaces. # with spaces.
INPUT = DocPages/ \ INPUT = ../include/ \
../include/ \
../IDL/ \ ../IDL/ \
../src/ \ ../src/ \
DocPages/ \
../conf \ ../conf \
../Utilities \ ../Utilities \
../extensions \ ../extensions
../python
# This tag can be used to specify the character encoding of the source files # This tag can be used to specify the character encoding of the source files
# that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is # that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is
...@@ -672,11 +672,11 @@ INPUT_ENCODING = UTF-8 ...@@ -672,11 +672,11 @@ INPUT_ENCODING = UTF-8
# *.hxx *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.dox *.py # *.hxx *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.dox *.py
# *.f90 *.f *.for *.vhd *.vhdl # *.f90 *.f *.for *.vhd *.vhdl
FILE_PATTERNS = *.dox \ FILE_PATTERNS = *.cc \
*.cc \
*.h \ *.h \
*.idl \ *.idl \
*.py *.dox \
*.hh
# The RECURSIVE tag can be used to turn specify whether or not subdirectories # The RECURSIVE tag can be used to turn specify whether or not subdirectories
# should be searched for input files as well. Possible values are YES and NO. # should be searched for input files as well. Possible values are YES and NO.
...@@ -690,7 +690,7 @@ RECURSIVE = YES ...@@ -690,7 +690,7 @@ RECURSIVE = YES
# Note that relative paths are relative to the directory from which doxygen is # Note that relative paths are relative to the directory from which doxygen is
# run. # run.
EXCLUDE = EXCLUDE = ../include/gtkmm
# The EXCLUDE_SYMLINKS tag can be used to select whether or not files or # The EXCLUDE_SYMLINKS tag can be used to select whether or not files or
# directories that are symbolic links (a Unix file system feature) are excluded # directories that are symbolic links (a Unix file system feature) are excluded
...@@ -725,7 +725,7 @@ EXAMPLE_PATH = ...@@ -725,7 +725,7 @@ EXAMPLE_PATH =
# and *.h) to filter out the source-files in the directories. If left # and *.h) to filter out the source-files in the directories. If left
# blank all files are included. # blank all files are included.
EXAMPLE_PATTERNS = EXAMPLE_PATTERNS = DocPages/Exmaples
# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be # If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be
# searched for input files to be used with the \include or \dontinclude # searched for input files to be used with the \include or \dontinclude
...@@ -745,14 +745,17 @@ IMAGE_PATH = DocPages/Images ...@@ -745,14 +745,17 @@ IMAGE_PATH = DocPages/Images
# by executing (via popen()) the command <filter> <input-file>, where <filter> # by executing (via popen()) the command <filter> <input-file>, where <filter>
# is the value of the INPUT_FILTER tag, and <input-file> is the name of an # is the value of the INPUT_FILTER tag, and <input-file> is the name of an
# input file. Doxygen will then use the output that the filter program writes # input file. Doxygen will then use the output that the filter program writes
# to standard output. If FILTER_PATTERNS is specified, this tag will be # to standard output.
# If FILTER_PATTERNS is specified, this tag will be
# ignored. # ignored.
INPUT_FILTER = INPUT_FILTER =
# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern # The FILTER_PATTERNS tag can be used to specify filters on a per file pattern
# basis. Doxygen will compare the file name with each pattern and apply the # basis.
# filter if there is a match. The filters are a list of the form: # Doxygen will compare the file name with each pattern and apply the
# filter if there is a match.
# The filters are a list of the form:
# pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further # pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further
# info on how filters are used. If FILTER_PATTERNS is empty or if # info on how filters are used. If FILTER_PATTERNS is empty or if
# non of the patterns match the file name, INPUT_FILTER is applied. # non of the patterns match the file name, INPUT_FILTER is applied.
...@@ -810,7 +813,8 @@ REFERENCES_RELATION = YES ...@@ -810,7 +813,8 @@ REFERENCES_RELATION = YES
# If the REFERENCES_LINK_SOURCE tag is set to YES (the default) # If the REFERENCES_LINK_SOURCE tag is set to YES (the default)
# and SOURCE_BROWSER tag is set to YES, then the hyperlinks from # and SOURCE_BROWSER tag is set to YES, then the hyperlinks from
# functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will # functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will
# link to the source code. Otherwise they will link to the documentation. # link to the source code.
# Otherwise they will link to the documentation.
REFERENCES_LINK_SOURCE = YES REFERENCES_LINK_SOURCE = YES
...@@ -864,7 +868,7 @@ GENERATE_HTML = YES ...@@ -864,7 +868,7 @@ GENERATE_HTML = YES
# If a relative path is entered the value of OUTPUT_DIRECTORY will be # If a relative path is entered the value of OUTPUT_DIRECTORY will be
# put in front of it. If left blank `html' will be used as the default path. # put in front of it. If left blank `html' will be used as the default path.
HTML_OUTPUT = html HTML_OUTPUT =
# The HTML_FILE_EXTENSION tag can be used to specify the file extension for # The HTML_FILE_EXTENSION tag can be used to specify the file extension for
# each generated HTML page (for example: .htm,.php,.asp). If it is left blank # each generated HTML page (for example: .htm,.php,.asp). If it is left blank
...@@ -894,7 +898,7 @@ HTML_FOOTER = ...@@ -894,7 +898,7 @@ HTML_FOOTER =
# If the HTML_TIMESTAMP tag is set to YES then the generated HTML # If the HTML_TIMESTAMP tag is set to YES then the generated HTML
# documentation will contain the timesstamp. # documentation will contain the timesstamp.
HTML_TIMESTAMP = YES HTML_TIMESTAMP = NO
# The HTML_STYLESHEET tag can be used to specify a user-defined cascading # The HTML_STYLESHEET tag can be used to specify a user-defined cascading
# style sheet that is used by each HTML page. It can be used to # style sheet that is used by each HTML page. It can be used to
...@@ -1227,7 +1231,7 @@ GENERATE_LATEX = NO ...@@ -1227,7 +1231,7 @@ GENERATE_LATEX = NO
# If a relative path is entered the value of OUTPUT_DIRECTORY will be # If a relative path is entered the value of OUTPUT_DIRECTORY will be
# put in front of it. If left blank `latex' will be used as the default path. # put in front of it. If left blank `latex' will be used as the default path.
LATEX_OUTPUT = latex LATEX_OUTPUT =
# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be # The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be
# invoked. If left blank `latex' will be used as the default command name. # invoked. If left blank `latex' will be used as the default command name.
...@@ -1327,7 +1331,7 @@ GENERATE_RTF = NO ...@@ -1327,7 +1331,7 @@ GENERATE_RTF = NO
# If a relative path is entered the value of OUTPUT_DIRECTORY will be # If a relative path is entered the value of OUTPUT_DIRECTORY will be
# put in front of it. If left blank `rtf' will be used as the default path. # put in front of it. If left blank `rtf' will be used as the default path.
RTF_OUTPUT = rtf RTF_OUTPUT =
# If the COMPACT_RTF tag is set to YES Doxygen generates more compact # If the COMPACT_RTF tag is set to YES Doxygen generates more compact
# RTF documents. This may be useful for small projects and may help to # RTF documents. This may be useful for small projects and may help to
...@@ -1368,12 +1372,12 @@ GENERATE_MAN = NO ...@@ -1368,12 +1372,12 @@ GENERATE_MAN = NO
# If a relative path is entered the value of OUTPUT_DIRECTORY will be # If a relative path is entered the value of OUTPUT_DIRECTORY will be
# put in front of it. If left blank `man' will be used as the default path. # put in front of it. If left blank `man' will be used as the default path.
MAN_OUTPUT = man MAN_OUTPUT =
# The MAN_EXTENSION tag determines the extension that is added to # The MAN_EXTENSION tag determines the extension that is added to
# the generated man pages (default is the subroutine's section .3) # the generated man pages (default is the subroutine's section .3)
MAN_EXTENSION = .3 MAN_EXTENSION =
# If the MAN_LINKS tag is set to YES and Doxygen generates man output, # If the MAN_LINKS tag is set to YES and Doxygen generates man output,
# then it will generate one additional man file for each entity # then it will generate one additional man file for each entity
...@@ -1449,8 +1453,10 @@ GENERATE_PERLMOD = NO ...@@ -1449,8 +1453,10 @@ GENERATE_PERLMOD = NO
PERLMOD_LATEX = NO PERLMOD_LATEX = NO
# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be # If the PERLMOD_PRETTY tag is set to YES the Perl module output will be
# nicely formatted so it can be parsed by a human reader. This is useful # nicely formatted so it can be parsed by a human reader.
# if you want to understand what is going on. On the other hand, if this # This is useful
# if you want to understand what is going on.
# On the other hand, if this
# tag is set to NO the size of the Perl module output will be much smaller # tag is set to NO the size of the Perl module output will be much smaller
# and Perl will parse it just the same. # and Perl will parse it just the same.
...@@ -1540,8 +1546,10 @@ SKIP_FUNCTION_MACROS = YES ...@@ -1540,8 +1546,10 @@ SKIP_FUNCTION_MACROS = YES
# Optionally an initial location of the external documentation # Optionally an initial location of the external documentation
# can be added for each tagfile. The format of a tag file without # can be added for each tagfile. The format of a tag file without
# this location is as follows: # this location is as follows:
#
# TAGFILES = file1 file2 ... # TAGFILES = file1 file2 ...
# Adding location for the tag files is done as follows: # Adding location for the tag files is done as follows:
#
# TAGFILES = file1=loc1 "file2 = loc2" ... # TAGFILES = file1=loc1 "file2 = loc2" ...
# where "loc1" and "loc2" can be relative or absolute paths or # where "loc1" and "loc2" can be relative or absolute paths or
# URLs. If a location is present for each tag, the installdox tool # URLs. If a location is present for each tag, the installdox tool
...@@ -1573,7 +1581,7 @@ EXTERNAL_GROUPS = YES ...@@ -1573,7 +1581,7 @@ EXTERNAL_GROUPS = YES
# The PERL_PATH should be the absolute path and name of the perl script # The PERL_PATH should be the absolute path and name of the perl script
# interpreter (i.e. the result of `which perl'). # interpreter (i.e. the result of `which perl').
PERL_PATH = /usr/bin/perl PERL_PATH =
#--------------------------------------------------------------------------- #---------------------------------------------------------------------------
# Configuration options related to the dot tool # Configuration options related to the dot tool
......
...@@ -151,7 +151,7 @@ sender2(0) ...@@ -151,7 +151,7 @@ sender2(0)
continue; continue;
} }
string s_resp_id(n_it.getProp("unet_respond_id")); string s_resp_id(n_it.getProp("unet_respond1_id"));
UniSetTypes::ObjectId resp_id = UniSetTypes::DefaultObjectId; UniSetTypes::ObjectId resp_id = UniSetTypes::DefaultObjectId;
if( !s_resp_id.empty() ) if( !s_resp_id.empty() )
{ {
...@@ -179,7 +179,7 @@ sender2(0) ...@@ -179,7 +179,7 @@ sender2(0)
} }
} }
string s_lp_id(n_it.getProp("unet_lostpackets_id")); string s_lp_id(n_it.getProp("unet_lostpackets1_id"));
UniSetTypes::ObjectId lp_id = UniSetTypes::DefaultObjectId; UniSetTypes::ObjectId lp_id = UniSetTypes::DefaultObjectId;
if( !s_lp_id.empty() ) if( !s_lp_id.empty() )
{ {
...@@ -207,6 +207,35 @@ sender2(0) ...@@ -207,6 +207,35 @@ sender2(0)
} }
} }
string s_lp_comm_id(n_it.getProp("unet_lostpackets_id"));
UniSetTypes::ObjectId lp_comm_id = UniSetTypes::DefaultObjectId;
if( !s_lp_comm_id.empty() )
{
lp_comm_id = conf->getSensorID(s_lp_comm_id);
if( lp_comm_id == UniSetTypes::DefaultObjectId )
{
ostringstream err;
err << myname << ": Unknown LostPacketsID(comm).. Not found id for '" << s_lp_comm_id << "'" << endl;
dlog[Debug::CRIT] << myname << "(init): " << err.str() << endl;
throw SystemError(err.str());
}
}
string s_resp_comm_id(n_it.getProp("unet_respond2_id"));
UniSetTypes::ObjectId resp_comm_id = UniSetTypes::DefaultObjectId;
if( !s_resp_comm_id.empty() )
{
resp_comm_id = conf->getSensorID(s_resp_comm_id);
if( resp_comm_id == UniSetTypes::DefaultObjectId )
{
ostringstream err;
err << myname << ": Unknown RespondID(2).. Not found id for '" << s_resp_comm_id << "'" << endl;
dlog[Debug::CRIT] << myname << "(init): " << err.str() << endl;
throw SystemError(err.str());
}
}
dlog[Debug::INFO] << myname << "(init): (node='" << n << "') add receiver " dlog[Debug::INFO] << myname << "(init): (node='" << n << "') add receiver "
<< h2 << ":" << p2 << endl; << h2 << ":" << p2 << endl;
UNetReceiver* r = new UNetReceiver(h,p,shm); UNetReceiver* r = new UNetReceiver(h,p,shm);
...@@ -258,6 +287,8 @@ sender2(0) ...@@ -258,6 +287,8 @@ sender2(0)
} }
ReceiverInfo ri(r,r2); ReceiverInfo ri(r,r2);
ri.setRespondID(resp_comm_id);
ri.setLostPacketsID(lp_comm_id);
recvlist.push_back(ri); recvlist.push_back(ri);
} }
...@@ -383,9 +414,46 @@ void UNetExchange::step() ...@@ -383,9 +414,46 @@ void UNetExchange::step()
dlog[Debug::CRIT] << myname << "(step): (hb) " << ex << std::endl; dlog[Debug::CRIT] << myname << "(step): (hb) " << ex << std::endl;
} }
} }
for( ReceiverList::iterator it=recvlist.begin(); it!=recvlist.end(); ++it )
it->step(shm, myname);
} }
// ----------------------------------------------------------------------------- // -----------------------------------------------------------------------------
void UNetExchange::ReceiverInfo::step( SMInterface* shm, const std::string myname )
{
try
{
if( sidRespond != DefaultObjectId )
{
bool resp = ( (r1 && r1->isRecvOK()) || (r2 && r2->isRecvOK()) );
shm->localSaveState(ditRespond,sidRespond,resp,shm->ID());
}
}
catch( Exception& ex )
{
dlog[Debug::CRIT] << myname << "(ReceiverInfo::step): (respond): " << ex << std::endl;
}
try
{
if( sidLostPackets != DefaultObjectId )
{
long l = 0;
if( r1 )
l += r1->getLostPacketsNum();
if( r2 )
l += r2->getLostPacketsNum();
shm->localSaveValue(aitLostPackets,sidLostPackets,l,shm->ID());
}
}
catch( Exception& ex )
{
dlog[Debug::CRIT] << myname << "(ReceiverInfo::step): (lostpackets): " << ex << std::endl;
}
}
// -----------------------------------------------------------------------------
void UNetExchange::processingMessage( UniSetTypes::VoidMessage *msg ) void UNetExchange::processingMessage( UniSetTypes::VoidMessage *msg )
{ {
try try
...@@ -602,6 +670,9 @@ void UNetExchange::initIterators() ...@@ -602,6 +670,9 @@ void UNetExchange::initIterators()
sender->initIterators(); sender->initIterators();
if( sender2 ) if( sender2 )
sender2->initIterators(); sender2->initIterators();
for( ReceiverList::iterator it=recvlist.begin(); it!=recvlist.end(); it++ )
it->initIterators(shm);
} }
// ----------------------------------------------------------------------------- // -----------------------------------------------------------------------------
void UNetExchange::help_print( int argc, const char* argv[] ) void UNetExchange::help_print( int argc, const char* argv[] )
......
...@@ -140,11 +140,38 @@ class UNetExchange: ...@@ -140,11 +140,38 @@ class UNetExchange:
struct ReceiverInfo struct ReceiverInfo
{ {
ReceiverInfo():r1(0),r2(0){} ReceiverInfo():r1(0),r2(0),
ReceiverInfo(UNetReceiver* _r1, UNetReceiver* _r2 ):r1(_r1),r2(_r2){} sidRespond(UniSetTypes::DefaultObjectId),
sidLostPackets(UniSetTypes::DefaultObjectId)
{}
ReceiverInfo(UNetReceiver* _r1, UNetReceiver* _r2 ):
r1(_r1),r2(_r2),
sidRespond(UniSetTypes::DefaultObjectId),
sidLostPackets(UniSetTypes::DefaultObjectId)
{}
UNetReceiver* r1; /*!< приём по первому каналу */ UNetReceiver* r1; /*!< приём по первому каналу */
UNetReceiver* r2; /*!< приём по второму каналу */ UNetReceiver* r2; /*!< приём по второму каналу */
void step( SMInterface* shm, const std::string myname );
inline void setRespondID( UniSetTypes::ObjectId id ){ sidRespond = id; }
inline void setLostPacketsID( UniSetTypes::ObjectId id ){ sidLostPackets = id; }
inline void initIterators( SMInterface* shm )
{
shm->initAIterator(aitLostPackets);
shm->initDIterator(ditRespond);
}
// Сводная информация по двум каналам
// сумма потерянных пакетов и наличие связи
// хотя бы по одному каналу
// ( реализацию см. ReceiverInfo::step() )
UniSetTypes::ObjectId sidRespond;
IOController::DIOStateList::iterator ditRespond;
UniSetTypes::ObjectId sidLostPackets;
IOController::AIOStateList::iterator aitLostPackets;
}; };
typedef std::list<ReceiverInfo> ReceiverList; typedef std::list<ReceiverInfo> ReceiverList;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment