doxygen docu support
replaced std::cout with Logger class
This commit is contained in:
		@@ -4,14 +4,14 @@ project(iprefresher DESCRIPTION "Dynu ip refresher")
 | 
				
			|||||||
set(CMAKE_CXX_STANDARD 17)
 | 
					set(CMAKE_CXX_STANDARD 17)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
set(CMAKE_BUILD_TYPE Release) # manually set build type (Release / Debug)
 | 
					set(CMAKE_BUILD_TYPE Release) # manually set build type (Release / Debug)
 | 
				
			||||||
set(libmethod STATIC) #SHARED / STATIC
 | 
					set(LIB_METHOD STATIC) #SHARED / STATIC
 | 
				
			||||||
set(WinBuild false)
 | 
					set(WinBuild false)
 | 
				
			||||||
set(PROJECT_VERSION 1.2.1)
 | 
					set(PROJECT_VERSION 1.2.1)
 | 
				
			||||||
 | 
					option(BUILD_DOC "Build documentation" ON)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
 | 
					set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
 | 
				
			||||||
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
 | 
					set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
 | 
				
			||||||
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
 | 
					set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
 | 
				
			||||||
 | 
					 | 
				
			||||||
#set up toolchain
 | 
					#set up toolchain
 | 
				
			||||||
 | 
					
 | 
				
			||||||
if (${WinBuild})
 | 
					if (${WinBuild})
 | 
				
			||||||
@@ -66,7 +66,7 @@ FILE(WRITE ${CMAKE_SOURCE_DIR}/inc/Version.h
 | 
				
			|||||||
        "\#pragma once\nclass Version {\npublic:\n  static const std::string VERSION;\n};\n\n std::string const Version::VERSION = \"${PROJECT_VERSION}\";"
 | 
					        "\#pragma once\nclass Version {\npublic:\n  static const std::string VERSION;\n};\n\n std::string const Version::VERSION = \"${PROJECT_VERSION}\";"
 | 
				
			||||||
        )
 | 
					        )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
add_library(api ${libmethod}
 | 
					add_library(api ${LIB_METHOD}
 | 
				
			||||||
        src/api/API.cpp
 | 
					        src/api/API.cpp
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        src/api/TelegramAPI.cpp
 | 
					        src/api/TelegramAPI.cpp
 | 
				
			||||||
@@ -76,7 +76,7 @@ add_library(api ${libmethod}
 | 
				
			|||||||
        src/api/IPAPI.cpp
 | 
					        src/api/IPAPI.cpp
 | 
				
			||||||
        )
 | 
					        )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
add_library(logger ${libmethod}
 | 
					add_library(logger ${LIB_METHOD}
 | 
				
			||||||
        src/FileLogger.cpp
 | 
					        src/FileLogger.cpp
 | 
				
			||||||
        src/Logger.cpp
 | 
					        src/Logger.cpp
 | 
				
			||||||
        )
 | 
					        )
 | 
				
			||||||
@@ -147,3 +147,29 @@ IF (UNIX)
 | 
				
			|||||||
            COMMENT "Installing ${PROJECT_NAME}")
 | 
					            COMMENT "Installing ${PROJECT_NAME}")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
ENDIF (UNIX)
 | 
					ENDIF (UNIX)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# check if Doxygen is installed
 | 
				
			||||||
 | 
					find_package(Doxygen)
 | 
				
			||||||
 | 
					if (DOXYGEN_FOUND)
 | 
				
			||||||
 | 
					    if (BUILD_DOC)
 | 
				
			||||||
 | 
					        # set input and output files
 | 
				
			||||||
 | 
					        set(DOXYGEN_IN ${CMAKE_CURRENT_SOURCE_DIR}/docs/Doxyfile.in)
 | 
				
			||||||
 | 
					        set(DOXYGEN_OUT ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        # request to configure the file
 | 
				
			||||||
 | 
					        configure_file(${DOXYGEN_IN} ${DOXYGEN_OUT} @ONLY)
 | 
				
			||||||
 | 
					        message(STATUS "Doxygen build started")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        # note the option ALL which allows to build the docs together with the application
 | 
				
			||||||
 | 
					        add_custom_target(doc_doxygen ALL
 | 
				
			||||||
 | 
					                COMMAND ${DOXYGEN_EXECUTABLE} ${DOXYGEN_OUT}
 | 
				
			||||||
 | 
					                WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
 | 
				
			||||||
 | 
					                COMMENT "Generating API documentation with Doxygen"
 | 
				
			||||||
 | 
					                VERBATIM)
 | 
				
			||||||
 | 
					    else (BUILD_DOC)
 | 
				
			||||||
 | 
					        message(STATUS "do not build docu")
 | 
				
			||||||
 | 
					    endif (BUILD_DOC)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					else (DOXYGEN_FOUND)
 | 
				
			||||||
 | 
					    message(STATUS "Doxygen need to be installed to generate the doxygen documentation")
 | 
				
			||||||
 | 
					endif (DOXYGEN_FOUND)
 | 
				
			||||||
							
								
								
									
										383
									
								
								docs/Doxyfile.in
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										383
									
								
								docs/Doxyfile.in
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,383 @@
 | 
				
			|||||||
 | 
					#OUTPUT_DIRECTORY       = @CMAKE_CURRENT_BINARY_DIR@/doc_doxygen/
 | 
				
			||||||
 | 
					#INPUT                  = @CMAKE_CURRENT_SOURCE_DIR@/inc/ @CMAKE_CURRENT_SOURCE_DIR@/../docs
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Doxyfile 1.8.15
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#---------------------------------------------------------------------------
 | 
				
			||||||
 | 
					# Project related configuration options
 | 
				
			||||||
 | 
					#---------------------------------------------------------------------------
 | 
				
			||||||
 | 
					DOXYFILE_ENCODING      = UTF-8
 | 
				
			||||||
 | 
					PROJECT_NAME           = "My Project"
 | 
				
			||||||
 | 
					PROJECT_NUMBER         =
 | 
				
			||||||
 | 
					PROJECT_BRIEF          =
 | 
				
			||||||
 | 
					PROJECT_LOGO           =
 | 
				
			||||||
 | 
					OUTPUT_DIRECTORY       = @CMAKE_CURRENT_BINARY_DIR@/doc_doxygen/
 | 
				
			||||||
 | 
					CREATE_SUBDIRS         = NO
 | 
				
			||||||
 | 
					ALLOW_UNICODE_NAMES    = NO
 | 
				
			||||||
 | 
					OUTPUT_LANGUAGE        = English
 | 
				
			||||||
 | 
					OUTPUT_TEXT_DIRECTION  = None
 | 
				
			||||||
 | 
					BRIEF_MEMBER_DESC      = YES
 | 
				
			||||||
 | 
					REPEAT_BRIEF           = YES
 | 
				
			||||||
 | 
					ABBREVIATE_BRIEF       = "The $name class" \
 | 
				
			||||||
 | 
					                         "The $name widget" \
 | 
				
			||||||
 | 
					                         "The $name file" \
 | 
				
			||||||
 | 
					                         is \
 | 
				
			||||||
 | 
					                         provides \
 | 
				
			||||||
 | 
					                         specifies \
 | 
				
			||||||
 | 
					                         contains \
 | 
				
			||||||
 | 
					                         represents \
 | 
				
			||||||
 | 
					                         a \
 | 
				
			||||||
 | 
					                         an \
 | 
				
			||||||
 | 
					                         the
 | 
				
			||||||
 | 
					ALWAYS_DETAILED_SEC    = NO
 | 
				
			||||||
 | 
					INLINE_INHERITED_MEMB  = NO
 | 
				
			||||||
 | 
					FULL_PATH_NAMES        = YES
 | 
				
			||||||
 | 
					STRIP_FROM_PATH        =
 | 
				
			||||||
 | 
					STRIP_FROM_INC_PATH    =
 | 
				
			||||||
 | 
					SHORT_NAMES            = NO
 | 
				
			||||||
 | 
					JAVADOC_AUTOBRIEF      = NO
 | 
				
			||||||
 | 
					QT_AUTOBRIEF           = NO
 | 
				
			||||||
 | 
					MULTILINE_CPP_IS_BRIEF = NO
 | 
				
			||||||
 | 
					INHERIT_DOCS           = YES
 | 
				
			||||||
 | 
					SEPARATE_MEMBER_PAGES  = NO
 | 
				
			||||||
 | 
					TAB_SIZE               = 4
 | 
				
			||||||
 | 
					ALIASES                =
 | 
				
			||||||
 | 
					TCL_SUBST              =
 | 
				
			||||||
 | 
					OPTIMIZE_OUTPUT_FOR_C  = NO
 | 
				
			||||||
 | 
					OPTIMIZE_OUTPUT_JAVA   = NO
 | 
				
			||||||
 | 
					OPTIMIZE_FOR_FORTRAN   = NO
 | 
				
			||||||
 | 
					OPTIMIZE_OUTPUT_VHDL   = NO
 | 
				
			||||||
 | 
					OPTIMIZE_OUTPUT_SLICE  = NO
 | 
				
			||||||
 | 
					EXTENSION_MAPPING      =
 | 
				
			||||||
 | 
					MARKDOWN_SUPPORT       = YES
 | 
				
			||||||
 | 
					TOC_INCLUDE_HEADINGS   = 0
 | 
				
			||||||
 | 
					AUTOLINK_SUPPORT       = YES
 | 
				
			||||||
 | 
					BUILTIN_STL_SUPPORT    = NO
 | 
				
			||||||
 | 
					CPP_CLI_SUPPORT        = NO
 | 
				
			||||||
 | 
					SIP_SUPPORT            = NO
 | 
				
			||||||
 | 
					IDL_PROPERTY_SUPPORT   = YES
 | 
				
			||||||
 | 
					DISTRIBUTE_GROUP_DOC   = NO
 | 
				
			||||||
 | 
					GROUP_NESTED_COMPOUNDS = NO
 | 
				
			||||||
 | 
					SUBGROUPING            = YES
 | 
				
			||||||
 | 
					INLINE_GROUPED_CLASSES = NO
 | 
				
			||||||
 | 
					INLINE_SIMPLE_STRUCTS  = NO
 | 
				
			||||||
 | 
					TYPEDEF_HIDES_STRUCT   = NO
 | 
				
			||||||
 | 
					LOOKUP_CACHE_SIZE      = 0
 | 
				
			||||||
 | 
					#---------------------------------------------------------------------------
 | 
				
			||||||
 | 
					# Build related configuration options
 | 
				
			||||||
 | 
					#---------------------------------------------------------------------------
 | 
				
			||||||
 | 
					EXTRACT_ALL            = YES
 | 
				
			||||||
 | 
					EXTRACT_PRIVATE        = NO
 | 
				
			||||||
 | 
					EXTRACT_PACKAGE        = NO
 | 
				
			||||||
 | 
					EXTRACT_STATIC         = NO
 | 
				
			||||||
 | 
					EXTRACT_LOCAL_CLASSES  = YES
 | 
				
			||||||
 | 
					EXTRACT_LOCAL_METHODS  = NO
 | 
				
			||||||
 | 
					EXTRACT_ANON_NSPACES   = NO
 | 
				
			||||||
 | 
					HIDE_UNDOC_MEMBERS     = NO
 | 
				
			||||||
 | 
					HIDE_UNDOC_CLASSES     = NO
 | 
				
			||||||
 | 
					HIDE_FRIEND_COMPOUNDS  = NO
 | 
				
			||||||
 | 
					HIDE_IN_BODY_DOCS      = NO
 | 
				
			||||||
 | 
					INTERNAL_DOCS          = NO
 | 
				
			||||||
 | 
					CASE_SENSE_NAMES       = NO
 | 
				
			||||||
 | 
					HIDE_SCOPE_NAMES       = NO
 | 
				
			||||||
 | 
					HIDE_COMPOUND_REFERENCE= NO
 | 
				
			||||||
 | 
					SHOW_INCLUDE_FILES     = YES
 | 
				
			||||||
 | 
					SHOW_GROUPED_MEMB_INC  = NO
 | 
				
			||||||
 | 
					FORCE_LOCAL_INCLUDES   = NO
 | 
				
			||||||
 | 
					INLINE_INFO            = YES
 | 
				
			||||||
 | 
					SORT_MEMBER_DOCS       = YES
 | 
				
			||||||
 | 
					SORT_BRIEF_DOCS        = NO
 | 
				
			||||||
 | 
					SORT_MEMBERS_CTORS_1ST = NO
 | 
				
			||||||
 | 
					SORT_GROUP_NAMES       = NO
 | 
				
			||||||
 | 
					SORT_BY_SCOPE_NAME     = NO
 | 
				
			||||||
 | 
					STRICT_PROTO_MATCHING  = NO
 | 
				
			||||||
 | 
					GENERATE_TODOLIST      = YES
 | 
				
			||||||
 | 
					GENERATE_TESTLIST      = YES
 | 
				
			||||||
 | 
					GENERATE_BUGLIST       = YES
 | 
				
			||||||
 | 
					GENERATE_DEPRECATEDLIST= YES
 | 
				
			||||||
 | 
					ENABLED_SECTIONS       =
 | 
				
			||||||
 | 
					MAX_INITIALIZER_LINES  = 30
 | 
				
			||||||
 | 
					SHOW_USED_FILES        = YES
 | 
				
			||||||
 | 
					SHOW_FILES             = YES
 | 
				
			||||||
 | 
					SHOW_NAMESPACES        = YES
 | 
				
			||||||
 | 
					FILE_VERSION_FILTER    =
 | 
				
			||||||
 | 
					LAYOUT_FILE            =
 | 
				
			||||||
 | 
					CITE_BIB_FILES         =
 | 
				
			||||||
 | 
					#---------------------------------------------------------------------------
 | 
				
			||||||
 | 
					# Configuration options related to warning and progress messages
 | 
				
			||||||
 | 
					#---------------------------------------------------------------------------
 | 
				
			||||||
 | 
					QUIET                  = NO
 | 
				
			||||||
 | 
					WARNINGS               = YES
 | 
				
			||||||
 | 
					WARN_IF_UNDOCUMENTED   = YES
 | 
				
			||||||
 | 
					WARN_IF_DOC_ERROR      = YES
 | 
				
			||||||
 | 
					WARN_NO_PARAMDOC       = NO
 | 
				
			||||||
 | 
					WARN_AS_ERROR          = NO
 | 
				
			||||||
 | 
					WARN_FORMAT            = "$file:$line: $text"
 | 
				
			||||||
 | 
					WARN_LOGFILE           =
 | 
				
			||||||
 | 
					#---------------------------------------------------------------------------
 | 
				
			||||||
 | 
					# Configuration options related to the input files
 | 
				
			||||||
 | 
					#---------------------------------------------------------------------------
 | 
				
			||||||
 | 
					INPUT                  = @CMAKE_CURRENT_SOURCE_DIR@/inc/
 | 
				
			||||||
 | 
					INPUT_ENCODING         = UTF-8
 | 
				
			||||||
 | 
					FILE_PATTERNS          = *.c \
 | 
				
			||||||
 | 
					                         *.cc \
 | 
				
			||||||
 | 
					                         *.cxx \
 | 
				
			||||||
 | 
					                         *.cpp \
 | 
				
			||||||
 | 
					                         *.c++ \
 | 
				
			||||||
 | 
					                         *.java \
 | 
				
			||||||
 | 
					                         *.ii \
 | 
				
			||||||
 | 
					                         *.ixx \
 | 
				
			||||||
 | 
					                         *.ipp \
 | 
				
			||||||
 | 
					                         *.i++ \
 | 
				
			||||||
 | 
					                         *.inl \
 | 
				
			||||||
 | 
					                         *.idl \
 | 
				
			||||||
 | 
					                         *.ddl \
 | 
				
			||||||
 | 
					                         *.odl \
 | 
				
			||||||
 | 
					                         *.h \
 | 
				
			||||||
 | 
					                         *.hh \
 | 
				
			||||||
 | 
					                         *.hxx \
 | 
				
			||||||
 | 
					                         *.hpp \
 | 
				
			||||||
 | 
					                         *.h++ \
 | 
				
			||||||
 | 
					                         *.cs \
 | 
				
			||||||
 | 
					                         *.d \
 | 
				
			||||||
 | 
					                         *.php \
 | 
				
			||||||
 | 
					                         *.php4 \
 | 
				
			||||||
 | 
					                         *.php5 \
 | 
				
			||||||
 | 
					                         *.phtml \
 | 
				
			||||||
 | 
					                         *.inc \
 | 
				
			||||||
 | 
					                         *.m \
 | 
				
			||||||
 | 
					                         *.markdown \
 | 
				
			||||||
 | 
					                         *.md \
 | 
				
			||||||
 | 
					                         *.mm \
 | 
				
			||||||
 | 
					                         *.dox \
 | 
				
			||||||
 | 
					                         *.py \
 | 
				
			||||||
 | 
					                         *.pyw \
 | 
				
			||||||
 | 
					                         *.f90 \
 | 
				
			||||||
 | 
					                         *.f95 \
 | 
				
			||||||
 | 
					                         *.f03 \
 | 
				
			||||||
 | 
					                         *.f08 \
 | 
				
			||||||
 | 
					                         *.f \
 | 
				
			||||||
 | 
					                         *.for \
 | 
				
			||||||
 | 
					                         *.tcl \
 | 
				
			||||||
 | 
					                         *.vhd \
 | 
				
			||||||
 | 
					                         *.vhdl \
 | 
				
			||||||
 | 
					                         *.ucf \
 | 
				
			||||||
 | 
					                         *.qsf \
 | 
				
			||||||
 | 
					                         *.ice
 | 
				
			||||||
 | 
					RECURSIVE              = YES
 | 
				
			||||||
 | 
					EXCLUDE                =
 | 
				
			||||||
 | 
					EXCLUDE_SYMLINKS       = NO
 | 
				
			||||||
 | 
					EXCLUDE_PATTERNS       =
 | 
				
			||||||
 | 
					EXCLUDE_SYMBOLS        =
 | 
				
			||||||
 | 
					EXAMPLE_PATH           =
 | 
				
			||||||
 | 
					EXAMPLE_PATTERNS       = *
 | 
				
			||||||
 | 
					EXAMPLE_RECURSIVE      = NO
 | 
				
			||||||
 | 
					IMAGE_PATH             =
 | 
				
			||||||
 | 
					INPUT_FILTER           =
 | 
				
			||||||
 | 
					FILTER_PATTERNS        =
 | 
				
			||||||
 | 
					FILTER_SOURCE_FILES    = NO
 | 
				
			||||||
 | 
					FILTER_SOURCE_PATTERNS =
 | 
				
			||||||
 | 
					USE_MDFILE_AS_MAINPAGE =
 | 
				
			||||||
 | 
					#---------------------------------------------------------------------------
 | 
				
			||||||
 | 
					# Configuration options related to source browsing
 | 
				
			||||||
 | 
					#---------------------------------------------------------------------------
 | 
				
			||||||
 | 
					SOURCE_BROWSER         = YES
 | 
				
			||||||
 | 
					INLINE_SOURCES         = NO
 | 
				
			||||||
 | 
					STRIP_CODE_COMMENTS    = YES
 | 
				
			||||||
 | 
					REFERENCED_BY_RELATION = NO
 | 
				
			||||||
 | 
					REFERENCES_RELATION    = NO
 | 
				
			||||||
 | 
					REFERENCES_LINK_SOURCE = YES
 | 
				
			||||||
 | 
					SOURCE_TOOLTIPS        = YES
 | 
				
			||||||
 | 
					USE_HTAGS              = NO
 | 
				
			||||||
 | 
					VERBATIM_HEADERS       = YES
 | 
				
			||||||
 | 
					#---------------------------------------------------------------------------
 | 
				
			||||||
 | 
					# Configuration options related to the alphabetical class index
 | 
				
			||||||
 | 
					#---------------------------------------------------------------------------
 | 
				
			||||||
 | 
					ALPHABETICAL_INDEX     = YES
 | 
				
			||||||
 | 
					COLS_IN_ALPHA_INDEX    = 5
 | 
				
			||||||
 | 
					IGNORE_PREFIX          =
 | 
				
			||||||
 | 
					#---------------------------------------------------------------------------
 | 
				
			||||||
 | 
					# Configuration options related to the HTML output
 | 
				
			||||||
 | 
					#---------------------------------------------------------------------------
 | 
				
			||||||
 | 
					GENERATE_HTML          = YES
 | 
				
			||||||
 | 
					HTML_OUTPUT            = html
 | 
				
			||||||
 | 
					HTML_FILE_EXTENSION    = .html
 | 
				
			||||||
 | 
					HTML_HEADER            =
 | 
				
			||||||
 | 
					HTML_FOOTER            =
 | 
				
			||||||
 | 
					HTML_STYLESHEET        =
 | 
				
			||||||
 | 
					HTML_EXTRA_STYLESHEET  =
 | 
				
			||||||
 | 
					HTML_EXTRA_FILES       =
 | 
				
			||||||
 | 
					HTML_COLORSTYLE_HUE    = 126
 | 
				
			||||||
 | 
					HTML_COLORSTYLE_SAT    = 0
 | 
				
			||||||
 | 
					HTML_COLORSTYLE_GAMMA  = 240
 | 
				
			||||||
 | 
					HTML_TIMESTAMP         = NO
 | 
				
			||||||
 | 
					HTML_DYNAMIC_MENUS     = YES
 | 
				
			||||||
 | 
					HTML_DYNAMIC_SECTIONS  = NO
 | 
				
			||||||
 | 
					HTML_INDEX_NUM_ENTRIES = 100
 | 
				
			||||||
 | 
					GENERATE_DOCSET        = NO
 | 
				
			||||||
 | 
					DOCSET_FEEDNAME        = "Doxygen generated docs"
 | 
				
			||||||
 | 
					DOCSET_BUNDLE_ID       = org.doxygen.Project
 | 
				
			||||||
 | 
					DOCSET_PUBLISHER_ID    = org.doxygen.Publisher
 | 
				
			||||||
 | 
					DOCSET_PUBLISHER_NAME  = Publisher
 | 
				
			||||||
 | 
					GENERATE_HTMLHELP      = NO
 | 
				
			||||||
 | 
					CHM_FILE               =
 | 
				
			||||||
 | 
					HHC_LOCATION           =
 | 
				
			||||||
 | 
					GENERATE_CHI           = NO
 | 
				
			||||||
 | 
					CHM_INDEX_ENCODING     =
 | 
				
			||||||
 | 
					BINARY_TOC             = NO
 | 
				
			||||||
 | 
					TOC_EXPAND             = NO
 | 
				
			||||||
 | 
					GENERATE_QHP           = NO
 | 
				
			||||||
 | 
					QCH_FILE               =
 | 
				
			||||||
 | 
					QHP_NAMESPACE          = org.doxygen.Project
 | 
				
			||||||
 | 
					QHP_VIRTUAL_FOLDER     = doc
 | 
				
			||||||
 | 
					QHP_CUST_FILTER_NAME   =
 | 
				
			||||||
 | 
					QHP_CUST_FILTER_ATTRS  =
 | 
				
			||||||
 | 
					QHP_SECT_FILTER_ATTRS  =
 | 
				
			||||||
 | 
					QHG_LOCATION           =
 | 
				
			||||||
 | 
					GENERATE_ECLIPSEHELP   = NO
 | 
				
			||||||
 | 
					ECLIPSE_DOC_ID         = org.doxygen.Project
 | 
				
			||||||
 | 
					DISABLE_INDEX          = NO
 | 
				
			||||||
 | 
					GENERATE_TREEVIEW      = YES
 | 
				
			||||||
 | 
					ENUM_VALUES_PER_LINE   = 4
 | 
				
			||||||
 | 
					TREEVIEW_WIDTH         = 250
 | 
				
			||||||
 | 
					EXT_LINKS_IN_WINDOW    = NO
 | 
				
			||||||
 | 
					FORMULA_FONTSIZE       = 10
 | 
				
			||||||
 | 
					FORMULA_TRANSPARENT    = YES
 | 
				
			||||||
 | 
					USE_MATHJAX            = NO
 | 
				
			||||||
 | 
					MATHJAX_FORMAT         = HTML-CSS
 | 
				
			||||||
 | 
					MATHJAX_RELPATH        = https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/
 | 
				
			||||||
 | 
					MATHJAX_EXTENSIONS     =
 | 
				
			||||||
 | 
					MATHJAX_CODEFILE       =
 | 
				
			||||||
 | 
					SEARCHENGINE           = YES
 | 
				
			||||||
 | 
					SERVER_BASED_SEARCH    = NO
 | 
				
			||||||
 | 
					EXTERNAL_SEARCH        = NO
 | 
				
			||||||
 | 
					SEARCHENGINE_URL       =
 | 
				
			||||||
 | 
					SEARCHDATA_FILE        = searchdata.xml
 | 
				
			||||||
 | 
					EXTERNAL_SEARCH_ID     =
 | 
				
			||||||
 | 
					EXTRA_SEARCH_MAPPINGS  =
 | 
				
			||||||
 | 
					#---------------------------------------------------------------------------
 | 
				
			||||||
 | 
					# Configuration options related to the LaTeX output
 | 
				
			||||||
 | 
					#---------------------------------------------------------------------------
 | 
				
			||||||
 | 
					GENERATE_LATEX         = YES
 | 
				
			||||||
 | 
					LATEX_OUTPUT           = latex
 | 
				
			||||||
 | 
					LATEX_CMD_NAME         =
 | 
				
			||||||
 | 
					MAKEINDEX_CMD_NAME     = makeindex
 | 
				
			||||||
 | 
					LATEX_MAKEINDEX_CMD    = \makeindex
 | 
				
			||||||
 | 
					COMPACT_LATEX          = NO
 | 
				
			||||||
 | 
					PAPER_TYPE             = a4
 | 
				
			||||||
 | 
					EXTRA_PACKAGES         =
 | 
				
			||||||
 | 
					LATEX_HEADER           =
 | 
				
			||||||
 | 
					LATEX_FOOTER           =
 | 
				
			||||||
 | 
					LATEX_EXTRA_STYLESHEET =
 | 
				
			||||||
 | 
					LATEX_EXTRA_FILES      =
 | 
				
			||||||
 | 
					PDF_HYPERLINKS         = YES
 | 
				
			||||||
 | 
					USE_PDFLATEX           = YES
 | 
				
			||||||
 | 
					LATEX_BATCHMODE        = NO
 | 
				
			||||||
 | 
					LATEX_HIDE_INDICES     = NO
 | 
				
			||||||
 | 
					LATEX_SOURCE_CODE      = NO
 | 
				
			||||||
 | 
					LATEX_BIB_STYLE        = plain
 | 
				
			||||||
 | 
					LATEX_TIMESTAMP        = NO
 | 
				
			||||||
 | 
					LATEX_EMOJI_DIRECTORY  =
 | 
				
			||||||
 | 
					#---------------------------------------------------------------------------
 | 
				
			||||||
 | 
					# Configuration options related to the RTF output
 | 
				
			||||||
 | 
					#---------------------------------------------------------------------------
 | 
				
			||||||
 | 
					GENERATE_RTF           = NO
 | 
				
			||||||
 | 
					RTF_OUTPUT             = rtf
 | 
				
			||||||
 | 
					COMPACT_RTF            = NO
 | 
				
			||||||
 | 
					RTF_HYPERLINKS         = NO
 | 
				
			||||||
 | 
					RTF_STYLESHEET_FILE    =
 | 
				
			||||||
 | 
					RTF_EXTENSIONS_FILE    =
 | 
				
			||||||
 | 
					RTF_SOURCE_CODE        = NO
 | 
				
			||||||
 | 
					#---------------------------------------------------------------------------
 | 
				
			||||||
 | 
					# Configuration options related to the man page output
 | 
				
			||||||
 | 
					#---------------------------------------------------------------------------
 | 
				
			||||||
 | 
					GENERATE_MAN           = NO
 | 
				
			||||||
 | 
					MAN_OUTPUT             = man
 | 
				
			||||||
 | 
					MAN_EXTENSION          = .3
 | 
				
			||||||
 | 
					MAN_SUBDIR             =
 | 
				
			||||||
 | 
					MAN_LINKS              = NO
 | 
				
			||||||
 | 
					#---------------------------------------------------------------------------
 | 
				
			||||||
 | 
					# Configuration options related to the XML output
 | 
				
			||||||
 | 
					#---------------------------------------------------------------------------
 | 
				
			||||||
 | 
					GENERATE_XML           = NO
 | 
				
			||||||
 | 
					XML_OUTPUT             = xml
 | 
				
			||||||
 | 
					XML_PROGRAMLISTING     = YES
 | 
				
			||||||
 | 
					XML_NS_MEMB_FILE_SCOPE = NO
 | 
				
			||||||
 | 
					#---------------------------------------------------------------------------
 | 
				
			||||||
 | 
					# Configuration options related to the DOCBOOK output
 | 
				
			||||||
 | 
					#---------------------------------------------------------------------------
 | 
				
			||||||
 | 
					GENERATE_DOCBOOK       = NO
 | 
				
			||||||
 | 
					DOCBOOK_OUTPUT         = docbook
 | 
				
			||||||
 | 
					DOCBOOK_PROGRAMLISTING = NO
 | 
				
			||||||
 | 
					#---------------------------------------------------------------------------
 | 
				
			||||||
 | 
					# Configuration options for the AutoGen Definitions output
 | 
				
			||||||
 | 
					#---------------------------------------------------------------------------
 | 
				
			||||||
 | 
					GENERATE_AUTOGEN_DEF   = NO
 | 
				
			||||||
 | 
					#---------------------------------------------------------------------------
 | 
				
			||||||
 | 
					# Configuration options related to the Perl module output
 | 
				
			||||||
 | 
					#---------------------------------------------------------------------------
 | 
				
			||||||
 | 
					GENERATE_PERLMOD       = NO
 | 
				
			||||||
 | 
					PERLMOD_LATEX          = NO
 | 
				
			||||||
 | 
					PERLMOD_PRETTY         = YES
 | 
				
			||||||
 | 
					PERLMOD_MAKEVAR_PREFIX =
 | 
				
			||||||
 | 
					#---------------------------------------------------------------------------
 | 
				
			||||||
 | 
					# Configuration options related to the preprocessor
 | 
				
			||||||
 | 
					#---------------------------------------------------------------------------
 | 
				
			||||||
 | 
					ENABLE_PREPROCESSING   = YES
 | 
				
			||||||
 | 
					MACRO_EXPANSION        = NO
 | 
				
			||||||
 | 
					EXPAND_ONLY_PREDEF     = NO
 | 
				
			||||||
 | 
					SEARCH_INCLUDES        = YES
 | 
				
			||||||
 | 
					INCLUDE_PATH           =
 | 
				
			||||||
 | 
					INCLUDE_FILE_PATTERNS  =
 | 
				
			||||||
 | 
					PREDEFINED             =
 | 
				
			||||||
 | 
					EXPAND_AS_DEFINED      =
 | 
				
			||||||
 | 
					SKIP_FUNCTION_MACROS   = YES
 | 
				
			||||||
 | 
					#---------------------------------------------------------------------------
 | 
				
			||||||
 | 
					# Configuration options related to external references
 | 
				
			||||||
 | 
					#---------------------------------------------------------------------------
 | 
				
			||||||
 | 
					TAGFILES               =
 | 
				
			||||||
 | 
					GENERATE_TAGFILE       =
 | 
				
			||||||
 | 
					ALLEXTERNALS           = NO
 | 
				
			||||||
 | 
					EXTERNAL_GROUPS        = YES
 | 
				
			||||||
 | 
					EXTERNAL_PAGES         = YES
 | 
				
			||||||
 | 
					PERL_PATH              = /usr/bin/perl
 | 
				
			||||||
 | 
					#---------------------------------------------------------------------------
 | 
				
			||||||
 | 
					# Configuration options related to the dot tool
 | 
				
			||||||
 | 
					#---------------------------------------------------------------------------
 | 
				
			||||||
 | 
					CLASS_DIAGRAMS         = YES
 | 
				
			||||||
 | 
					MSCGEN_PATH            =
 | 
				
			||||||
 | 
					DIA_PATH               =
 | 
				
			||||||
 | 
					HIDE_UNDOC_RELATIONS   = YES
 | 
				
			||||||
 | 
					HAVE_DOT               = NO
 | 
				
			||||||
 | 
					DOT_NUM_THREADS        = 0
 | 
				
			||||||
 | 
					DOT_FONTNAME           = Helvetica
 | 
				
			||||||
 | 
					DOT_FONTSIZE           = 10
 | 
				
			||||||
 | 
					DOT_FONTPATH           =
 | 
				
			||||||
 | 
					CLASS_GRAPH            = YES
 | 
				
			||||||
 | 
					COLLABORATION_GRAPH    = YES
 | 
				
			||||||
 | 
					GROUP_GRAPHS           = YES
 | 
				
			||||||
 | 
					UML_LOOK               = NO
 | 
				
			||||||
 | 
					UML_LIMIT_NUM_FIELDS   = 10
 | 
				
			||||||
 | 
					TEMPLATE_RELATIONS     = NO
 | 
				
			||||||
 | 
					INCLUDE_GRAPH          = YES
 | 
				
			||||||
 | 
					INCLUDED_BY_GRAPH      = YES
 | 
				
			||||||
 | 
					CALL_GRAPH             = NO
 | 
				
			||||||
 | 
					CALLER_GRAPH           = NO
 | 
				
			||||||
 | 
					GRAPHICAL_HIERARCHY    = YES
 | 
				
			||||||
 | 
					DIRECTORY_GRAPH        = YES
 | 
				
			||||||
 | 
					DOT_IMAGE_FORMAT       = png
 | 
				
			||||||
 | 
					INTERACTIVE_SVG        = NO
 | 
				
			||||||
 | 
					DOT_PATH               =
 | 
				
			||||||
 | 
					DOTFILE_DIRS           =
 | 
				
			||||||
 | 
					MSCFILE_DIRS           =
 | 
				
			||||||
 | 
					DIAFILE_DIRS           =
 | 
				
			||||||
 | 
					PLANTUML_JAR_PATH      =
 | 
				
			||||||
 | 
					PLANTUML_CFG_FILE      =
 | 
				
			||||||
 | 
					PLANTUML_INCLUDE_PATH  =
 | 
				
			||||||
 | 
					DOT_GRAPH_MAX_NODES    = 50
 | 
				
			||||||
 | 
					MAX_DOT_GRAPH_DEPTH    = 0
 | 
				
			||||||
 | 
					DOT_TRANSPARENT        = NO
 | 
				
			||||||
 | 
					DOT_MULTI_TARGETS      = NO
 | 
				
			||||||
 | 
					GENERATE_LEGEND        = YES
 | 
				
			||||||
 | 
					DOT_CLEANUP            = YES
 | 
				
			||||||
@@ -11,6 +11,7 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
#include <chrono>
 | 
					#include <chrono>
 | 
				
			||||||
#include <thread>
 | 
					#include <thread>
 | 
				
			||||||
 | 
					#include <Logger.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include <IPRefresher.h>
 | 
					#include <IPRefresher.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -23,26 +24,27 @@ void IPRefresher::checkIPAdress(bool force) {
 | 
				
			|||||||
    if (ip.empty()) {
 | 
					    if (ip.empty()) {
 | 
				
			||||||
        //no internet connection
 | 
					        //no internet connection
 | 
				
			||||||
        logger.logToLogfile("[WARNING] no internet connection");
 | 
					        logger.logToLogfile("[WARNING] no internet connection");
 | 
				
			||||||
        std::cout << "[WARNING] no internet connection" << std::endl;
 | 
					        Logger::warning("no internet connection");
 | 
				
			||||||
    } else {
 | 
					    } else {
 | 
				
			||||||
        std::string oldip = logger.readip();
 | 
					        std::string oldip = logger.readip();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    if (oldip == ip && !force) {
 | 
					        if (oldip == ip && !force) {
 | 
				
			||||||
            std::cout << "[INFO] no change -- ip: " << ip << std::endl;
 | 
					            Logger::message("no change -- ip: " + ip);
 | 
				
			||||||
            logger.logToLogfile(" [INFO] no change -- ip: " + ip);
 | 
					            logger.logToLogfile(" [INFO] no change -- ip: " + ip);
 | 
				
			||||||
        } else {
 | 
					        } else {
 | 
				
			||||||
            logger.logToLogfile(" [INFO] ip changed! -- from :" + oldip + "to: " + ip);
 | 
					            logger.logToLogfile(" [INFO] ip changed! -- from :" + oldip + "to: " + ip);
 | 
				
			||||||
            std::cout << "[INFO] ip changed! -- from :" << oldip << "to: " << ip << std::endl;
 | 
					            Logger::message("ip changed! -- from :" + oldip + "to: " + ip);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            DynuAPI dynu;
 | 
					            DynuAPI dynu;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            if (dynu.refreshIp(ip)) {
 | 
					            if (dynu.refreshIp(ip)) {
 | 
				
			||||||
                TelegramAPI tele;
 | 
					                TelegramAPI tele;
 | 
				
			||||||
                tele.init("717213769:AAHan1nSXhUsxLJAN1Dv8Oc0z8wqwDdYPn4","618154204");
 | 
					                tele.init("717213769:AAHan1nSXhUsxLJAN1Dv8Oc0z8wqwDdYPn4", "618154204");
 | 
				
			||||||
                tele.sendMessage(oldip + " moved to " + ip);
 | 
					                tele.sendMessage(oldip + " moved to " + ip);
 | 
				
			||||||
            } else {
 | 
					            } else {
 | 
				
			||||||
                //error
 | 
					                //error
 | 
				
			||||||
                logger.logToLogfile(" [ERROR] failed to write ip to dynu api!");
 | 
					                logger.logToLogfile(" [ERROR] failed to write ip to dynu api!");
 | 
				
			||||||
 | 
					                Logger::error("failed to write ip to dynu api!");
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            logger.safeip(ip);
 | 
					            logger.safeip(ip);
 | 
				
			||||||
@@ -55,9 +57,9 @@ IPRefresher::IPRefresher() {
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
IPRefresher::IPRefresher(bool loop) {
 | 
					IPRefresher::IPRefresher(bool loop) {
 | 
				
			||||||
    std::cout << "[INFO] startup of service" << std::endl;
 | 
					    Logger::message("startup of service");
 | 
				
			||||||
    while(true){
 | 
					    while (loop) {
 | 
				
			||||||
        std::cout << "[INFO] starting check" << std::endl;
 | 
					        Logger::message("starting check");
 | 
				
			||||||
        checkIPAdress(false);
 | 
					        checkIPAdress(false);
 | 
				
			||||||
        std::this_thread::sleep_for(std::chrono::milliseconds(300000));
 | 
					        std::this_thread::sleep_for(std::chrono::milliseconds(300000));
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -8,33 +8,31 @@
 | 
				
			|||||||
#include "Logger.h"
 | 
					#include "Logger.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
const int Logger::Warning = 1;
 | 
					const int Logger::Warning = 1;
 | 
				
			||||||
const int Logger::Debug = 2;
 | 
					const int Logger::Debug = 2;
 | 
				
			||||||
const int Logger::Message = 3;
 | 
					const int Logger::Message = 3;
 | 
				
			||||||
const int Logger::Error = 4;
 | 
					const int Logger::Error = 4;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void Logger::debug(std::string message) {
 | 
					void Logger::debug(std::string message) {
 | 
				
			||||||
    log(message,Logger::Debug);
 | 
					    log(message, Logger::Debug);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void Logger::message(std::string message) {
 | 
					void Logger::message(std::string message) {
 | 
				
			||||||
    log(message,Logger::Message);
 | 
					    log(message, Logger::Message);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void Logger::warning(std::string message) {
 | 
					void Logger::warning(std::string message) {
 | 
				
			||||||
    log(message,Logger::Warning);
 | 
					    log(message, Logger::Warning);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void Logger::error(std::string message) {
 | 
					void Logger::error(std::string message) {
 | 
				
			||||||
    log(message,Logger::Error);
 | 
					    log(message, Logger::Error);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void Logger::log(std::string message, int level) {
 | 
					void Logger::log(std::string message, int level) {
 | 
				
			||||||
    std::stringstream out;
 | 
					    std::stringstream out;
 | 
				
			||||||
    out << "[";
 | 
					    out << "[";
 | 
				
			||||||
    switch (level){
 | 
					    switch (level) {
 | 
				
			||||||
        case Debug:
 | 
					        case Debug:
 | 
				
			||||||
            out << "DEBUG";
 | 
					            out << "DEBUG";
 | 
				
			||||||
            break;
 | 
					            break;
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -13,7 +13,7 @@ int main(int argc, char *argv[]) {
 | 
				
			|||||||
                      << "[-l] [--loop] infinite loop to refresh ip every five minutes" << std::endl
 | 
					                      << "[-l] [--loop] infinite loop to refresh ip every five minutes" << std::endl
 | 
				
			||||||
                      << "[no argument] normal ip check and refresh" << std::endl;
 | 
					                      << "[no argument] normal ip check and refresh" << std::endl;
 | 
				
			||||||
        } else if (firstarg == "-v" || firstarg == "--version") {
 | 
					        } else if (firstarg == "-v" || firstarg == "--version") {
 | 
				
			||||||
            Logger::message("Version "+Version::VERSION);
 | 
					            std::cout << "Version " << Version::VERSION << std::endl;
 | 
				
			||||||
        } else if (firstarg == "-f" || firstarg == "--force") {
 | 
					        } else if (firstarg == "-f" || firstarg == "--force") {
 | 
				
			||||||
            IPRefresher ipr;
 | 
					            IPRefresher ipr;
 | 
				
			||||||
            ipr.checkIPAdress(true);
 | 
					            ipr.checkIPAdress(true);
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user