Browse Source

上传文件至 'ytDHCamCore'

hanzhengyi 4 years ago
parent
commit
91f2dca19a
5 changed files with 958 additions and 0 deletions
  1. 759 0
      ytDHCamCore/Makefile
  2. 66 0
      ytDHCamCore/logthread.cpp
  3. 29 0
      ytDHCamCore/logthread.h
  4. 27 0
      ytDHCamCore/main.cpp
  5. 77 0
      ytDHCamCore/ttsthreads.cpp

+ 759 - 0
ytDHCamCore/Makefile

@@ -0,0 +1,759 @@
+#############################################################################
+# Makefile for building: ytDHCamCore
+# Generated by qmake (3.1) (Qt 5.9.7)
+# Project:  ytDHCamCore.pro
+# Template: app
+# Command: /usr/bin/qmake-qt5 -o Makefile ytDHCamCore.pro -spec linux-g++
+#############################################################################
+
+MAKEFILE      = Makefile
+
+####### Compiler, tools and options
+
+CC            = gcc
+CXX           = g++
+DEFINES       = -DQT_DEPRECATED_WARNINGS -DQT_NO_DEBUG -DQT_NETWORK_LIB -DQT_SQL_LIB -DQT_CORE_LIB
+CFLAGS        = -pipe -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -O2 -Wall -W -D_REENTRANT -fPIC $(DEFINES)
+CXXFLAGS      = -pipe -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -O2 -std=gnu++11 -Wall -W -D_REENTRANT -fPIC $(DEFINES)
+INCPATH       = -I. -isystem /usr/include/qt5 -isystem /usr/include/qt5/QtNetwork -isystem /usr/include/qt5/QtSql -isystem /usr/include/qt5/QtCore -I. -I/usr/lib64/qt5/mkspecs/linux-g++
+QMAKE         = /usr/bin/qmake-qt5
+DEL_FILE      = rm -f
+CHK_DIR_EXISTS= test -d
+MKDIR         = mkdir -p
+COPY          = cp -f
+COPY_FILE     = cp -f
+COPY_DIR      = cp -f -R
+INSTALL_FILE  = install -m 644 -p
+INSTALL_PROGRAM = install -m 755 -p
+INSTALL_DIR   = cp -f -R
+QINSTALL      = /usr/bin/qmake-qt5 -install qinstall
+QINSTALL_PROGRAM = /usr/bin/qmake-qt5 -install qinstall -exe
+DEL_FILE      = rm -f
+SYMLINK       = ln -f -s
+DEL_DIR       = rmdir
+MOVE          = mv -f
+TAR           = tar -cf
+COMPRESS      = gzip -9f
+DISTNAME      = ytDHCamCore1.0.0
+DISTDIR = /home/yt/Qt/YtCam.20201222/YtCam/ytDHCamCore/.tmp/ytDHCamCore1.0.0
+LINK          = g++
+LFLAGS        = -Wl,-O1 -Wl,-z,relro
+LIBS          = $(SUBLIBS) -ldhnetsdk -lQt5Network -lQt5Sql -lQt5Core -lpthread 
+AR            = ar cqs
+RANLIB        = 
+SED           = sed
+STRIP         = 
+
+####### Output directory
+
+OBJECTS_DIR   = ./
+
+####### Files
+
+SOURCES       = main.cpp \
+		ytdhcamcore.cpp \
+		databasethread.cpp \
+		logthread.cpp \
+		camthread.cpp \
+		ttsthreads.cpp \
+		wechartthreads.cpp moc_ytdhcamcore.cpp \
+		moc_databasethread.cpp \
+		moc_logthread.cpp \
+		moc_camthread.cpp \
+		moc_ttsthreads.cpp \
+		moc_wechartthreads.cpp
+OBJECTS       = main.o \
+		ytdhcamcore.o \
+		databasethread.o \
+		logthread.o \
+		camthread.o \
+		ttsthreads.o \
+		wechartthreads.o \
+		moc_ytdhcamcore.o \
+		moc_databasethread.o \
+		moc_logthread.o \
+		moc_camthread.o \
+		moc_ttsthreads.o \
+		moc_wechartthreads.o
+DIST          = /usr/lib64/qt5/mkspecs/features/spec_pre.prf \
+		/usr/lib64/qt5/mkspecs/common/unix.conf \
+		/usr/lib64/qt5/mkspecs/common/linux.conf \
+		/usr/lib64/qt5/mkspecs/common/sanitize.conf \
+		/usr/lib64/qt5/mkspecs/common/gcc-base.conf \
+		/usr/lib64/qt5/mkspecs/common/gcc-base-unix.conf \
+		/usr/lib64/qt5/mkspecs/common/g++-base.conf \
+		/usr/lib64/qt5/mkspecs/common/g++-unix.conf \
+		/usr/lib64/qt5/mkspecs/qconfig.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3danimation.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3danimation_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dcore.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dcore_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dextras.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dextras_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dinput.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dinput_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dlogic.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dlogic_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dquick.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dquick_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dquickanimation.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dquickanimation_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dquickextras.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dquickextras_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dquickinput.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dquickinput_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dquickrender.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dquickrender_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dquickscene2d.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dquickscene2d_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3drender.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3drender_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_accessibility_support_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_bluetooth.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_bluetooth_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_bootstrap_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_concurrent.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_concurrent_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_core.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_core_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_dbus.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_dbus_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_designer.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_designer_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_designercomponents_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_devicediscovery_support_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_egl_support_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_eglfs_kms_support_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_eglfsdeviceintegration_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_enginio.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_enginio_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_eventdispatcher_support_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_fb_support_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_fontdatabase_support_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_glx_support_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_gui.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_gui_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_help.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_help_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_input_support_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_kms_support_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_linuxaccessibility_support_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_location.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_location_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_multimedia.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_multimedia_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_multimediawidgets.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_multimediawidgets_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_network.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_network_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_nfc.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_nfc_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_opengl.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_opengl_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_openglextensions.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_openglextensions_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_packetprotocol_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_platformcompositor_support_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_positioning.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_positioning_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_printsupport.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_printsupport_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_qml.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_qml_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_qmldebug_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_qmldevtools_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_qmltest.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_qmltest_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_quick.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_quick_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_quickcontrols2.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_quickcontrols2_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_quickparticles_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_quicktemplates2_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_quickwidgets.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_quickwidgets_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_script.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_script_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_scripttools.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_scripttools_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_sensors.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_sensors_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_serialbus.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_serialbus_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_serialport.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_serialport_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_service_support_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_sql.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_sql_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_svg.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_svg_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_testlib.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_testlib_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_theme_support_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_uiplugin.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_uitools.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_uitools_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_waylandclient.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_waylandclient_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_waylandcompositor.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_waylandcompositor_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_webchannel.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_webchannel_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_websockets.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_websockets_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_widgets.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_widgets_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_x11extras.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_x11extras_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_xcb_qpa_lib_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_xml.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_xml_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_xmlpatterns.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_xmlpatterns_private.pri \
+		/usr/lib64/qt5/mkspecs/features/qt_functions.prf \
+		/usr/lib64/qt5/mkspecs/features/qt_config.prf \
+		/usr/lib64/qt5/mkspecs/linux-g++/qmake.conf \
+		/usr/lib64/qt5/mkspecs/features/spec_post.prf \
+		.qmake.stash \
+		/usr/lib64/qt5/mkspecs/features/exclusive_builds.prf \
+		/usr/lib64/qt5/mkspecs/features/toolchain.prf \
+		/usr/lib64/qt5/mkspecs/features/default_pre.prf \
+		/usr/lib64/qt5/mkspecs/features/resolve_config.prf \
+		/usr/lib64/qt5/mkspecs/features/default_post.prf \
+		/usr/lib64/qt5/mkspecs/features/warn_on.prf \
+		/usr/lib64/qt5/mkspecs/features/qt.prf \
+		/usr/lib64/qt5/mkspecs/features/resources.prf \
+		/usr/lib64/qt5/mkspecs/features/moc.prf \
+		/usr/lib64/qt5/mkspecs/features/unix/thread.prf \
+		/usr/lib64/qt5/mkspecs/features/qmake_use.prf \
+		/usr/lib64/qt5/mkspecs/features/file_copies.prf \
+		/usr/lib64/qt5/mkspecs/features/testcase_targets.prf \
+		/usr/lib64/qt5/mkspecs/features/exceptions.prf \
+		/usr/lib64/qt5/mkspecs/features/yacc.prf \
+		/usr/lib64/qt5/mkspecs/features/lex.prf \
+		ytDHCamCore.pro ytdhcamshm.h \
+		ytdhcam.h \
+		ytdhcamcore.h \
+		databasethread.h \
+		logthread.h \
+		camthread.h \
+		ttsthreads.h \
+		wechartthreads.h main.cpp \
+		ytdhcamcore.cpp \
+		databasethread.cpp \
+		logthread.cpp \
+		camthread.cpp \
+		ttsthreads.cpp \
+		wechartthreads.cpp
+QMAKE_TARGET  = ytDHCamCore
+DESTDIR       = 
+TARGET        = ytDHCamCore
+
+
+first: all
+####### Build rules
+
+$(TARGET):  $(OBJECTS)  
+	$(LINK) $(LFLAGS) -o $(TARGET) $(OBJECTS) $(OBJCOMP) $(LIBS)
+
+Makefile: ytDHCamCore.pro /usr/lib64/qt5/mkspecs/linux-g++/qmake.conf /usr/lib64/qt5/mkspecs/features/spec_pre.prf \
+		/usr/lib64/qt5/mkspecs/common/unix.conf \
+		/usr/lib64/qt5/mkspecs/common/linux.conf \
+		/usr/lib64/qt5/mkspecs/common/sanitize.conf \
+		/usr/lib64/qt5/mkspecs/common/gcc-base.conf \
+		/usr/lib64/qt5/mkspecs/common/gcc-base-unix.conf \
+		/usr/lib64/qt5/mkspecs/common/g++-base.conf \
+		/usr/lib64/qt5/mkspecs/common/g++-unix.conf \
+		/usr/lib64/qt5/mkspecs/qconfig.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3danimation.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3danimation_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dcore.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dcore_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dextras.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dextras_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dinput.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dinput_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dlogic.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dlogic_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dquick.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dquick_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dquickanimation.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dquickanimation_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dquickextras.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dquickextras_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dquickinput.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dquickinput_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dquickrender.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dquickrender_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dquickscene2d.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3dquickscene2d_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3drender.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_3drender_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_accessibility_support_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_bluetooth.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_bluetooth_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_bootstrap_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_concurrent.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_concurrent_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_core.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_core_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_dbus.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_dbus_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_designer.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_designer_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_designercomponents_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_devicediscovery_support_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_egl_support_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_eglfs_kms_support_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_eglfsdeviceintegration_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_enginio.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_enginio_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_eventdispatcher_support_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_fb_support_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_fontdatabase_support_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_glx_support_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_gui.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_gui_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_help.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_help_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_input_support_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_kms_support_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_linuxaccessibility_support_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_location.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_location_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_multimedia.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_multimedia_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_multimediawidgets.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_multimediawidgets_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_network.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_network_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_nfc.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_nfc_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_opengl.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_opengl_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_openglextensions.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_openglextensions_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_packetprotocol_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_platformcompositor_support_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_positioning.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_positioning_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_printsupport.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_printsupport_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_qml.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_qml_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_qmldebug_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_qmldevtools_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_qmltest.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_qmltest_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_quick.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_quick_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_quickcontrols2.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_quickcontrols2_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_quickparticles_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_quicktemplates2_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_quickwidgets.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_quickwidgets_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_script.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_script_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_scripttools.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_scripttools_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_sensors.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_sensors_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_serialbus.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_serialbus_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_serialport.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_serialport_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_service_support_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_sql.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_sql_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_svg.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_svg_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_testlib.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_testlib_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_theme_support_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_uiplugin.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_uitools.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_uitools_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_waylandclient.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_waylandclient_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_waylandcompositor.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_waylandcompositor_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_webchannel.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_webchannel_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_websockets.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_websockets_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_widgets.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_widgets_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_x11extras.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_x11extras_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_xcb_qpa_lib_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_xml.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_xml_private.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_xmlpatterns.pri \
+		/usr/lib64/qt5/mkspecs/modules/qt_lib_xmlpatterns_private.pri \
+		/usr/lib64/qt5/mkspecs/features/qt_functions.prf \
+		/usr/lib64/qt5/mkspecs/features/qt_config.prf \
+		/usr/lib64/qt5/mkspecs/linux-g++/qmake.conf \
+		/usr/lib64/qt5/mkspecs/features/spec_post.prf \
+		.qmake.stash \
+		/usr/lib64/qt5/mkspecs/features/exclusive_builds.prf \
+		/usr/lib64/qt5/mkspecs/features/toolchain.prf \
+		/usr/lib64/qt5/mkspecs/features/default_pre.prf \
+		/usr/lib64/qt5/mkspecs/features/resolve_config.prf \
+		/usr/lib64/qt5/mkspecs/features/default_post.prf \
+		/usr/lib64/qt5/mkspecs/features/warn_on.prf \
+		/usr/lib64/qt5/mkspecs/features/qt.prf \
+		/usr/lib64/qt5/mkspecs/features/resources.prf \
+		/usr/lib64/qt5/mkspecs/features/moc.prf \
+		/usr/lib64/qt5/mkspecs/features/unix/thread.prf \
+		/usr/lib64/qt5/mkspecs/features/qmake_use.prf \
+		/usr/lib64/qt5/mkspecs/features/file_copies.prf \
+		/usr/lib64/qt5/mkspecs/features/testcase_targets.prf \
+		/usr/lib64/qt5/mkspecs/features/exceptions.prf \
+		/usr/lib64/qt5/mkspecs/features/yacc.prf \
+		/usr/lib64/qt5/mkspecs/features/lex.prf \
+		ytDHCamCore.pro \
+		/usr/lib64/libQt5Network.prl \
+		/usr/lib64/libQt5Sql.prl \
+		/usr/lib64/libQt5Core.prl
+	$(QMAKE) -o Makefile ytDHCamCore.pro -spec linux-g++
+/usr/lib64/qt5/mkspecs/features/spec_pre.prf:
+/usr/lib64/qt5/mkspecs/common/unix.conf:
+/usr/lib64/qt5/mkspecs/common/linux.conf:
+/usr/lib64/qt5/mkspecs/common/sanitize.conf:
+/usr/lib64/qt5/mkspecs/common/gcc-base.conf:
+/usr/lib64/qt5/mkspecs/common/gcc-base-unix.conf:
+/usr/lib64/qt5/mkspecs/common/g++-base.conf:
+/usr/lib64/qt5/mkspecs/common/g++-unix.conf:
+/usr/lib64/qt5/mkspecs/qconfig.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_3danimation.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_3danimation_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_3dcore.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_3dcore_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_3dextras.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_3dextras_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_3dinput.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_3dinput_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_3dlogic.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_3dlogic_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_3dquick.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_3dquick_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_3dquickanimation.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_3dquickanimation_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_3dquickextras.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_3dquickextras_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_3dquickinput.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_3dquickinput_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_3dquickrender.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_3dquickrender_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_3dquickscene2d.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_3dquickscene2d_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_3drender.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_3drender_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_accessibility_support_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_bluetooth.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_bluetooth_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_bootstrap_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_concurrent.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_concurrent_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_core.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_core_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_dbus.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_dbus_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_designer.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_designer_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_designercomponents_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_devicediscovery_support_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_egl_support_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_eglfs_kms_support_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_eglfsdeviceintegration_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_enginio.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_enginio_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_eventdispatcher_support_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_fb_support_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_fontdatabase_support_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_glx_support_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_gui.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_gui_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_help.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_help_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_input_support_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_kms_support_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_linuxaccessibility_support_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_location.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_location_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_multimedia.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_multimedia_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_multimediawidgets.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_multimediawidgets_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_network.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_network_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_nfc.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_nfc_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_opengl.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_opengl_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_openglextensions.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_openglextensions_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_packetprotocol_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_platformcompositor_support_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_positioning.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_positioning_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_printsupport.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_printsupport_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_qml.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_qml_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_qmldebug_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_qmldevtools_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_qmltest.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_qmltest_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_quick.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_quick_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_quickcontrols2.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_quickcontrols2_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_quickparticles_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_quicktemplates2_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_quickwidgets.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_quickwidgets_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_script.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_script_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_scripttools.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_scripttools_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_sensors.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_sensors_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_serialbus.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_serialbus_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_serialport.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_serialport_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_service_support_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_sql.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_sql_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_svg.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_svg_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_testlib.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_testlib_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_theme_support_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_uiplugin.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_uitools.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_uitools_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_waylandclient.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_waylandclient_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_waylandcompositor.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_waylandcompositor_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_webchannel.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_webchannel_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_websockets.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_websockets_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_widgets.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_widgets_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_x11extras.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_x11extras_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_xcb_qpa_lib_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_xml.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_xml_private.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_xmlpatterns.pri:
+/usr/lib64/qt5/mkspecs/modules/qt_lib_xmlpatterns_private.pri:
+/usr/lib64/qt5/mkspecs/features/qt_functions.prf:
+/usr/lib64/qt5/mkspecs/features/qt_config.prf:
+/usr/lib64/qt5/mkspecs/linux-g++/qmake.conf:
+/usr/lib64/qt5/mkspecs/features/spec_post.prf:
+.qmake.stash:
+/usr/lib64/qt5/mkspecs/features/exclusive_builds.prf:
+/usr/lib64/qt5/mkspecs/features/toolchain.prf:
+/usr/lib64/qt5/mkspecs/features/default_pre.prf:
+/usr/lib64/qt5/mkspecs/features/resolve_config.prf:
+/usr/lib64/qt5/mkspecs/features/default_post.prf:
+/usr/lib64/qt5/mkspecs/features/warn_on.prf:
+/usr/lib64/qt5/mkspecs/features/qt.prf:
+/usr/lib64/qt5/mkspecs/features/resources.prf:
+/usr/lib64/qt5/mkspecs/features/moc.prf:
+/usr/lib64/qt5/mkspecs/features/unix/thread.prf:
+/usr/lib64/qt5/mkspecs/features/qmake_use.prf:
+/usr/lib64/qt5/mkspecs/features/file_copies.prf:
+/usr/lib64/qt5/mkspecs/features/testcase_targets.prf:
+/usr/lib64/qt5/mkspecs/features/exceptions.prf:
+/usr/lib64/qt5/mkspecs/features/yacc.prf:
+/usr/lib64/qt5/mkspecs/features/lex.prf:
+ytDHCamCore.pro:
+/usr/lib64/libQt5Network.prl:
+/usr/lib64/libQt5Sql.prl:
+/usr/lib64/libQt5Core.prl:
+qmake: FORCE
+	@$(QMAKE) -o Makefile ytDHCamCore.pro -spec linux-g++
+
+qmake_all: FORCE
+
+
+all: Makefile $(TARGET)
+
+dist: distdir FORCE
+	(cd `dirname $(DISTDIR)` && $(TAR) $(DISTNAME).tar $(DISTNAME) && $(COMPRESS) $(DISTNAME).tar) && $(MOVE) `dirname $(DISTDIR)`/$(DISTNAME).tar.gz . && $(DEL_FILE) -r $(DISTDIR)
+
+distdir: FORCE
+	@test -d $(DISTDIR) || mkdir -p $(DISTDIR)
+	$(COPY_FILE) --parents $(DIST) $(DISTDIR)/
+	$(COPY_FILE) --parents /usr/lib64/qt5/mkspecs/features/data/dummy.cpp $(DISTDIR)/
+	$(COPY_FILE) --parents ytdhcamshm.h ytdhcam.h ytdhcamcore.h databasethread.h logthread.h camthread.h ttsthreads.h wechartthreads.h $(DISTDIR)/
+	$(COPY_FILE) --parents main.cpp ytdhcamcore.cpp databasethread.cpp logthread.cpp camthread.cpp ttsthreads.cpp wechartthreads.cpp $(DISTDIR)/
+
+
+clean: compiler_clean 
+	-$(DEL_FILE) $(OBJECTS)
+	-$(DEL_FILE) *~ core *.core
+
+
+distclean: clean 
+	-$(DEL_FILE) $(TARGET) 
+	-$(DEL_FILE) .qmake.stash
+	-$(DEL_FILE) Makefile
+
+
+####### Sub-libraries
+
+mocclean: compiler_moc_header_clean compiler_moc_source_clean
+
+mocables: compiler_moc_header_make_all compiler_moc_source_make_all
+
+check: first
+
+benchmark: first
+
+compiler_rcc_make_all:
+compiler_rcc_clean:
+compiler_moc_predefs_make_all: moc_predefs.h
+compiler_moc_predefs_clean:
+	-$(DEL_FILE) moc_predefs.h
+moc_predefs.h: /usr/lib64/qt5/mkspecs/features/data/dummy.cpp
+	g++ -pipe -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -O2 -std=gnu++11 -Wall -W -dM -E -o moc_predefs.h /usr/lib64/qt5/mkspecs/features/data/dummy.cpp
+
+compiler_moc_header_make_all: moc_ytdhcamcore.cpp moc_databasethread.cpp moc_logthread.cpp moc_camthread.cpp moc_ttsthreads.cpp moc_wechartthreads.cpp
+compiler_moc_header_clean:
+	-$(DEL_FILE) moc_ytdhcamcore.cpp moc_databasethread.cpp moc_logthread.cpp moc_camthread.cpp moc_ttsthreads.cpp moc_wechartthreads.cpp
+moc_ytdhcamcore.cpp: logthread.h \
+		databasethread.h \
+		camthread.h \
+		dhinc/dhnetsdk.h \
+		ttsthreads.h \
+		wechartthreads.h \
+		ytdhcamcore.h \
+		moc_predefs.h \
+		/usr/lib64/qt5/bin/moc
+	/usr/lib64/qt5/bin/moc $(DEFINES) --include ./moc_predefs.h -I/usr/lib64/qt5/mkspecs/linux-g++ -I/home/yt/Qt/YtCam.20201222/YtCam/ytDHCamCore -I/usr/include/qt5 -I/usr/include/qt5/QtNetwork -I/usr/include/qt5/QtSql -I/usr/include/qt5/QtCore -I/usr/include/c++/4.8.5 -I/usr/include/c++/4.8.5/x86_64-redhat-linux -I/usr/include/c++/4.8.5/backward -I/usr/lib/gcc/x86_64-redhat-linux/4.8.5/include -I/usr/local/include -I/usr/include ytdhcamcore.h -o moc_ytdhcamcore.cpp
+
+moc_databasethread.cpp: databasethread.h \
+		moc_predefs.h \
+		/usr/lib64/qt5/bin/moc
+	/usr/lib64/qt5/bin/moc $(DEFINES) --include ./moc_predefs.h -I/usr/lib64/qt5/mkspecs/linux-g++ -I/home/yt/Qt/YtCam.20201222/YtCam/ytDHCamCore -I/usr/include/qt5 -I/usr/include/qt5/QtNetwork -I/usr/include/qt5/QtSql -I/usr/include/qt5/QtCore -I/usr/include/c++/4.8.5 -I/usr/include/c++/4.8.5/x86_64-redhat-linux -I/usr/include/c++/4.8.5/backward -I/usr/lib/gcc/x86_64-redhat-linux/4.8.5/include -I/usr/local/include -I/usr/include databasethread.h -o moc_databasethread.cpp
+
+moc_logthread.cpp: logthread.h \
+		moc_predefs.h \
+		/usr/lib64/qt5/bin/moc
+	/usr/lib64/qt5/bin/moc $(DEFINES) --include ./moc_predefs.h -I/usr/lib64/qt5/mkspecs/linux-g++ -I/home/yt/Qt/YtCam.20201222/YtCam/ytDHCamCore -I/usr/include/qt5 -I/usr/include/qt5/QtNetwork -I/usr/include/qt5/QtSql -I/usr/include/qt5/QtCore -I/usr/include/c++/4.8.5 -I/usr/include/c++/4.8.5/x86_64-redhat-linux -I/usr/include/c++/4.8.5/backward -I/usr/lib/gcc/x86_64-redhat-linux/4.8.5/include -I/usr/local/include -I/usr/include logthread.h -o moc_logthread.cpp
+
+moc_camthread.cpp: dhinc/dhnetsdk.h \
+		camthread.h \
+		moc_predefs.h \
+		/usr/lib64/qt5/bin/moc
+	/usr/lib64/qt5/bin/moc $(DEFINES) --include ./moc_predefs.h -I/usr/lib64/qt5/mkspecs/linux-g++ -I/home/yt/Qt/YtCam.20201222/YtCam/ytDHCamCore -I/usr/include/qt5 -I/usr/include/qt5/QtNetwork -I/usr/include/qt5/QtSql -I/usr/include/qt5/QtCore -I/usr/include/c++/4.8.5 -I/usr/include/c++/4.8.5/x86_64-redhat-linux -I/usr/include/c++/4.8.5/backward -I/usr/lib/gcc/x86_64-redhat-linux/4.8.5/include -I/usr/local/include -I/usr/include camthread.h -o moc_camthread.cpp
+
+moc_ttsthreads.cpp: ttsthreads.h \
+		moc_predefs.h \
+		/usr/lib64/qt5/bin/moc
+	/usr/lib64/qt5/bin/moc $(DEFINES) --include ./moc_predefs.h -I/usr/lib64/qt5/mkspecs/linux-g++ -I/home/yt/Qt/YtCam.20201222/YtCam/ytDHCamCore -I/usr/include/qt5 -I/usr/include/qt5/QtNetwork -I/usr/include/qt5/QtSql -I/usr/include/qt5/QtCore -I/usr/include/c++/4.8.5 -I/usr/include/c++/4.8.5/x86_64-redhat-linux -I/usr/include/c++/4.8.5/backward -I/usr/lib/gcc/x86_64-redhat-linux/4.8.5/include -I/usr/local/include -I/usr/include ttsthreads.h -o moc_ttsthreads.cpp
+
+moc_wechartthreads.cpp: wechartthreads.h \
+		moc_predefs.h \
+		/usr/lib64/qt5/bin/moc
+	/usr/lib64/qt5/bin/moc $(DEFINES) --include ./moc_predefs.h -I/usr/lib64/qt5/mkspecs/linux-g++ -I/home/yt/Qt/YtCam.20201222/YtCam/ytDHCamCore -I/usr/include/qt5 -I/usr/include/qt5/QtNetwork -I/usr/include/qt5/QtSql -I/usr/include/qt5/QtCore -I/usr/include/c++/4.8.5 -I/usr/include/c++/4.8.5/x86_64-redhat-linux -I/usr/include/c++/4.8.5/backward -I/usr/lib/gcc/x86_64-redhat-linux/4.8.5/include -I/usr/local/include -I/usr/include wechartthreads.h -o moc_wechartthreads.cpp
+
+compiler_moc_source_make_all:
+compiler_moc_source_clean:
+compiler_yacc_decl_make_all:
+compiler_yacc_decl_clean:
+compiler_yacc_impl_make_all:
+compiler_yacc_impl_clean:
+compiler_lex_make_all:
+compiler_lex_clean:
+compiler_clean: compiler_moc_predefs_clean compiler_moc_header_clean 
+
+####### Compile
+
+main.o: main.cpp ytdhcam.h \
+		ytdhcamshm.h \
+		ytdhcamcore.h \
+		logthread.h \
+		databasethread.h \
+		camthread.h \
+		dhinc/dhnetsdk.h \
+		ttsthreads.h \
+		wechartthreads.h
+	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o main.o main.cpp
+
+ytdhcamcore.o: ytdhcamcore.cpp ytdhcamcore.h \
+		logthread.h \
+		databasethread.h \
+		camthread.h \
+		dhinc/dhnetsdk.h \
+		ttsthreads.h \
+		wechartthreads.h \
+		ytdhcam.h \
+		ytdhcamshm.h
+	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o ytdhcamcore.o ytdhcamcore.cpp
+
+databasethread.o: databasethread.cpp databasethread.h \
+		ytdhcam.h \
+		ytdhcamshm.h
+	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o databasethread.o databasethread.cpp
+
+logthread.o: logthread.cpp logthread.h
+	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o logthread.o logthread.cpp
+
+camthread.o: camthread.cpp camthread.h \
+		dhinc/dhnetsdk.h \
+		ytdhcam.h \
+		ytdhcamshm.h
+	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o camthread.o camthread.cpp
+
+ttsthreads.o: ttsthreads.cpp ttsthreads.h
+	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o ttsthreads.o ttsthreads.cpp
+
+wechartthreads.o: wechartthreads.cpp wechartthreads.h
+	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o wechartthreads.o wechartthreads.cpp
+
+moc_ytdhcamcore.o: moc_ytdhcamcore.cpp 
+	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o moc_ytdhcamcore.o moc_ytdhcamcore.cpp
+
+moc_databasethread.o: moc_databasethread.cpp 
+	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o moc_databasethread.o moc_databasethread.cpp
+
+moc_logthread.o: moc_logthread.cpp 
+	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o moc_logthread.o moc_logthread.cpp
+
+moc_camthread.o: moc_camthread.cpp 
+	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o moc_camthread.o moc_camthread.cpp
+
+moc_ttsthreads.o: moc_ttsthreads.cpp 
+	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o moc_ttsthreads.o moc_ttsthreads.cpp
+
+moc_wechartthreads.o: moc_wechartthreads.cpp 
+	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o moc_wechartthreads.o moc_wechartthreads.cpp
+
+####### Install
+
+install_target: first FORCE
+	@test -d $(INSTALL_ROOT)/opt/ytDHCamCore/bin || mkdir -p $(INSTALL_ROOT)/opt/ytDHCamCore/bin
+	-$(QINSTALL_PROGRAM) $(QMAKE_TARGET) $(INSTALL_ROOT)/opt/ytDHCamCore/bin/$(QMAKE_TARGET)
+
+uninstall_target: FORCE
+	-$(DEL_FILE) $(INSTALL_ROOT)/opt/ytDHCamCore/bin/$(QMAKE_TARGET)
+	-$(DEL_DIR) $(INSTALL_ROOT)/opt/ytDHCamCore/bin/ 
+
+
+install: install_target  FORCE
+
+uninstall: uninstall_target  FORCE
+
+FORCE:
+

+ 66 - 0
ytDHCamCore/logthread.cpp

@@ -0,0 +1,66 @@
+#include "logthread.h"
+
+LogThread::LogThread(QObject *parent) :
+    QThread(parent)
+{
+    dataList.clear();
+    QDir dir("/opt/ytCam/log");
+    if(!dir.exists())
+        dir.mkdir("/opt/ytCam/log");
+    QDir dir2("/opt/ytCam/err/");
+    if(!dir2.exists())
+        dir2.mkdir("/opt/ytCam/err/");
+    file = new QFile("/opt/ytCam/log/Cam01-"+QDate::currentDate().toString("yyyyMMdd")+".log");
+    wfile = new QFile("/opt/ytCam/err/Cam01_message.log");
+    day = QDate::currentDate().day();
+}
+
+void LogThread::appendData(QString data)
+{
+    dataList.append(data);
+}
+
+void LogThread::appendWrongData(QString data)
+{
+    wrongList.append(data);
+}
+
+void LogThread::run()
+{
+    {
+        file = new QFile("/opt/ytCam/log/Cam01-"+QDate::currentDate().toString("yyyyMMdd")+".log");
+        if(file->open(QIODevice::ReadWrite|QIODevice::Append|QIODevice::Text)){
+            file->write(QString("ytDHCam start at %1.\r\n").arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss.zzz")).toUtf8());
+            file->close();
+        }
+    }
+    while(1){
+        if(dataList.length()>0){
+            if(day!=QDate::currentDate().day()){
+                day = QDate::currentDate().day();
+                file = new QFile("/opy/ytCam/log/Cam01-"+QDate::currentDate().toString("yyyyMMdd")+".log");
+            }
+            if(file->open(QIODevice::ReadWrite|QIODevice::Append|QIODevice::Text)){
+                while(dataList.length()>0){
+                    file->write(dataList.first().toUtf8());
+                    file->write("\r\n");
+                    dataList.removeFirst();
+                    usleep(1000);
+                }
+                file->close();
+            }
+        }
+        if(wrongList.length()>0){
+            if(wfile->open(QIODevice::ReadWrite|QIODevice::Append|QIODevice::Text)){
+                while(wrongList.length()>0){
+                    wfile->write(wrongList.first().toUtf8());
+                    wfile->write("\r\n");
+                    wrongList.removeFirst();
+                    usleep(1000);
+                }
+                wfile->close();
+            }
+        }
+        usleep(50000);
+    }
+}

+ 29 - 0
ytDHCamCore/logthread.h

@@ -0,0 +1,29 @@
+#ifndef LOGTHREAD_H
+#define LOGTHREAD_H
+
+#include <QThread>
+#include <QStringList>
+#include <QDate>
+#include <QDir>
+#include <QFile>
+
+class LogThread : public QThread
+{
+    Q_OBJECT
+public:
+    explicit LogThread(QObject *parent = nullptr);
+    void appendData(QString data);
+    void appendWrongData(QString data);
+    void run();
+
+signals:
+
+public slots:
+private:
+    QFile *file,*wfile;
+    QStringList dataList;
+    QStringList wrongList;
+    int day;
+};
+
+#endif // LOGTHREAD_H

+ 27 - 0
ytDHCamCore/main.cpp

@@ -0,0 +1,27 @@
+#include <QCoreApplication>
+#include "ytdhcam.h"
+#include "ytdhcamcore.h"
+
+SysConfShm *sysConfShm;
+
+bool load_shm(){
+    int shmid;
+    key_t key;
+    if((key = ftok(SHM_PATH,static_cast<int>(SHM_PORT)))==-1)
+        return false;
+    if((shmid = shmget(key,sizeof(SysConfShm),IPC_CREAT|0666))==-1)
+        return false;
+    sysConfShm = static_cast<SysConfShm *>(shmat(shmid,nullptr,0));
+    return true;
+}
+
+int main(int argc, char *argv[])
+{
+    QCoreApplication a(argc, argv);
+    if(load_shm()){
+        ytDHCamCore *core = new ytDHCamCore(nullptr);
+        core->start();
+    }
+
+    return a.exec();
+}

+ 77 - 0
ytDHCamCore/ttsthreads.cpp

@@ -0,0 +1,77 @@
+#include "ttsthreads.h"
+
+ttsThreads::ttsThreads(QObject *parent, quint16 idx, QString ip, QString path, quint16 port) :
+    QThread(parent)
+{
+    Idx = idx;
+    DestIp = ip;
+    DestPath = path;
+    DestPort = port;
+    DataList.clear();
+}
+
+void ttsThreads::appendData(QString data)
+{
+    QString Data = QString("POST %1 HTTP/1.1\r\nContent-Type: application/x-www-form-urlencoded\r\nAccept: */*\r\nConnection: keep-alive\r\nCache-Control:  no-cache\r\nContent-Length: %2\r\nAccept-Encoding: gzip\r\nAccept-Language: zh-CN,en,*\r\nUser-Agent: Mozilla/5.0\r\nHost: %3:%4\r\n\r\n%5")
+            .arg(DestPath).arg(data.length()).arg(DestIp).arg(DestPort).arg(data);
+    DataList.append(Data);
+}
+
+void ttsThreads::stoptts()
+{
+    keepWorking = false;
+}
+
+void ttsThreads::ttslog(quint16 idx, QDateTime t, QString data, bool dirflag)
+{
+//    if(dirflag)
+//        printf("[ %04d-%02d-%02d %02d:%02d:%02d >>> ] %s\n",
+//               t.date().year(),t.date().month(),t.date().day(),
+//               t.time().hour(),t.time().minute(),t.time().second(),
+//               data.toUtf8().data());
+//    else
+//        printf("[ %04d-%02d-%02d %02d:%02d:%02d <<< ] %s\n",
+//               t.date().year(),t.date().month(),t.date().day(),
+//               t.time().hour(),t.time().minute(),t.time().second(),
+//               data.toUtf8().data());
+}
+
+void ttsThreads::run()
+{
+    quint8 cur;
+    for(int i=0;i<16;i++){
+        so[i] = new QTcpSocket;
+    }
+    keepWorking = true;
+    cur=0;
+    while(keepWorking){
+        if(DataList.length()>0){
+            QString data = DataList.first();
+            so[cur]->connectToHost(QHostAddress(DestIp),DestPort,QIODevice::ReadWrite);
+            if(so[cur]->waitForConnected()){
+                so[cur]->write(data.toUtf8());
+                so[cur]->flush();
+                ttslog(Idx,QDateTime::currentDateTime(),data,true);
+                DataList.removeFirst();
+                if(so[cur]->waitForReadyRead()){
+                    QByteArray ret = so[cur]->readAll();
+                    if(ret.length()>512)
+                        ret = ret.mid(0,512);
+                    ttslog(Idx,QDateTime::currentDateTime(),QString(ret),false);
+                    so[cur]->close();
+                }else{
+                    ttslog(Idx,QDateTime::currentDateTime(),QString("timeout"),false);
+                    so[cur]->abort();
+                }
+            }
+            cur++;
+            cur &= 0x0f;
+        }
+        usleep(100000);
+    }
+    for(int i=0;i<16;i++){
+        if(so[i]->isOpen())
+            so[i]->abort();
+        so[i]->deleteLater();
+    }
+}