Commit df9fb21e authored by thomas.forbriger's avatar thomas.forbriger Committed by thomas.forbriger
Browse files

moved README contents to separate file

This is a legacy commit from before 2015-03-01.
It may be incomplete as well as inconsistent.
See COPYING.legacy and README.history for details.


SVN Path:     http://gpitrsvn.gpi.uni-karlsruhe.de/repos/TFSoftware/branches/DL1rec
SVN Revision: 5190
SVN UUID:     67feda4a-a26e-11df-9d6e-31afc202ad0c
parent 9a09d61f
......@@ -46,7 +46,7 @@ SUBSRC=error.cc dataline.cc record.cc thiesdl1.cc functions.cc memory.cc \
logger.cc cvsids.cc
SUBOBS=$(patsubst %.cc,%.o,$(SUBSRC))
flist: Makefile $(wildcard *.cc *.h *.cfg *.sh *.tex *.conf) README
flist: Makefile $(wildcard *.cc *.h *.cfg *.sh *.tex *.conf *.txt) README
echo $^ | tr ' ' '\n' | sort > $@
.PHONY: edit
......@@ -101,7 +101,7 @@ DOXYWWWPATH=$(TF_WWWBASEDIR)/ThiesDL1
doxyclean: ;/bin/rm -rfv doc/* docbrief/* doc docbrief
DOXYSRC=$(wildcard *.cc) $(HEADERS) README cvsids.xxx
DOXYSRC=$(wildcard *.cc doxy*.txt) $(HEADERS) cvsids.xxx
doc/%: doxygen.cfg $(DOXYSRC)
mkdir -vp $(DOXYWWWPATH)
......
/*! \file README
* \brief DL1 logger doxygen mainpage (implementation)
*
* ----------------------------------------------------------------------------
*
* $Id$
* \author Thomas Forbriger
* \date 23/12/2008
*
* DL1 logger doxygen mainpage (implementation)
*
* Copyright (c) 2008 by Thomas Forbriger (BFO Schiltach)
*
* REVISIONS and CHANGES
* - 23/12/2008 V1.0 Thomas Forbriger
*
* ============================================================================
*/
/*! \mainpage
Thies DL1 pluviograph data logger control program.
\author Thomas Forbriger
\date December 2008
\since December 2008
This is a collection of code that supports serial line access to the Thies
DL1 precipitation data logger.
Two programs are comin along with the code:
- \ref DL1direct
- \ref DL1logger
The program uses the following modules:
- \ref dl1::DL1 provides serial line communication with the Thies DL1 data
logger
- \ref dl1::DataLine handles Thies DL1 data lines and returns their contents
- \ref dl1::Record collects data lines and returns data sets (records)
- \ref dl1::Logger logs messages to the system's syslog
- \ref dl1::Memory maintains a memory files
- \ref dl1::Exception base class for critical exceptions
- \ref dl1::TimeOut diagnostic exception class
The file format is described at
- \ref page_thiesdl1_format
Source code file revisions are reported at
- \ref page_CVSID
- \ref dl1::CVSIDS
*/
/*======================================================================*/
/*! \page page_CVSID Source code file revision
\verbinclude "cvsids.xxx"
*/
/*======================================================================*/
/*! \page page_thiesdl1_format Definition of the ThiesDL1 file format
*
* This file format is used to store data of the Thies DL1/N pluviometer at
* BFO.
* The files are produced by program DL1logger, which accomplishes data
* acquisition by controlling the Thies DL1/N data logger and reading the
* data from the logger.
*
* Sections in this page:
* - \ref sec_page_thiesdl1_formatdefinition
* - \ref sec_page_thiesdl1_midnight
* - \ref sec_page_thiesdl1_current
* - \ref sec_page_thiesdl1_references
*
* \section sec_page_thiesdl1_formatdefinition Structure of a data file
* A typical data file stored by DL1logger is 20110911.asc:
* \verbatim
# Logger status :
# ---------------
# Date: 12.09.11
# Time: 1:01:15
# Battery : BAT OK
# MemCycle: Event
# ERROR: duplicate sample (index 1439): 24.000 0.0 11.09.11 24:00
# earliest date: 254 11.09.2011 00:00:00.000000
# latest date: 255 12.09.2011 00:00:00.000000
# creation date: 255 12.09.2011 01:01:19.000000
# initial line: Data : 11.09.11 0:00
# final line: END OF DATA BFO 1 DL1/N V1.10a
Data : 11.09.11 0:00
16.233 0.1 11.09.11 16:14
16.250 0.2 11.09.11 16:15
16.267 0.1 11.09.11 16:16
16.283 0.1 11.09.11 16:17
16.317 0.1 11.09.11 16:19
16.617 0.1 11.09.11 16:37
16.650 0.1 11.09.11 16:39
16.667 0.1 11.09.11 16:40
16.683 0.1 11.09.11 16:41
16.867 0.1 11.09.11 16:52
17.483 0.1 11.09.11 17:29
19.417 0.1 11.09.11 19:25
19.483 0.2 11.09.11 19:29
19.500 0.1 11.09.11 19:30
19.517 0.1 11.09.11 19:31
19.566 0.1 11.09.11 19:34
19.600 0.1 11.09.11 19:36
19.633 0.1 11.09.11 19:38
19.800 0.1 11.09.11 19:48
19.850 0.1 11.09.11 19:51
19.883 0.1 11.09.11 19:53
19.983 0.1 11.09.11 19:59
20.050 0.1 11.09.11 20:03
20.067 0.1 11.09.11 20:04
20.117 0.1 11.09.11 20:07
20.150 0.1 11.09.11 20:09
20.333 0.1 11.09.11 20:20
20.600 0.1 11.09.11 20:36
20.717 0.1 11.09.11 20:43
21.533 0.1 11.09.11 21:32
24.000 0.0 11.09.11 24:00
24.000 0.0 11.09.11 24:00
END OF DATA BFO 1 DL1/N V1.10a
\endverbatim
*
* It begins with a header produced by DL1logger, first reporting the
* current status when creating the data file:
* \verbatim
# Logger status :
# ---------------
# Date: 12.09.11
# Time: 1:01:15
# Battery : BAT OK
# MemCycle: Event
\endverbatim
*
* Then reporting log messages or error conditions produced while decoding
* the data stream:
* \verbatim
# ERROR: duplicate sample (index 1439): 24.000 0.0 11.09.11 24:00
\endverbatim
*
* This is followed by a statement indicating the time span for which data
* was requested from the data logger, the time of creation of the data file
* and the first and final line sent by the logger:
* \verbatim
# earliest date: 254 11.09.2011 00:00:00.000000
# latest date: 255 12.09.2011 00:00:00.000000
# creation date: 255 12.09.2011 01:01:19.000000
# initial line: Data : 11.09.11 0:00
# final line: END OF DATA BFO 1 DL1/N V1.10a
\endverbatim
*
* All these header lines have a \c # in the first column.
* After the header, the actual data sent by the Thies DL1/N logger is
* dumped.
* It starts with the initial line sent by the logger:
* \verbatim
Data : 11.09.11 0:00
\endverbatim
*
* After the initial line, the logger produced one data line for each minute
* for which precipitation was recorded.
* Minutes for which no precipitation has occured, no lines are present.
* Each line consists of four fields. For example:
* \verbatim
16.233 0.1 11.09.11 16:14
\endverbatim
* The fields are:
* -# the time in decimal hours (in UT)
* -# the recorded precipitation for the reported minute in mm
* -# the date in format DD.MM.YY
* -# the time in format HH:MM (in UT)
*
* The data file is finished with the final line sent by the logger:
* \verbatim
END OF DATA BFO 1 DL1/N V1.10a
\endverbatim
* This line indicates the station for which data was recorded (here: BFO)
* and the type of instrument used (here: DL1/N).
*
* \section sec_page_thiesdl1_midnight Timing at end of day
* The time reported in the data line is the time when the current
* precipitaion count interval ended.
* A line for 22:46 provides the amount of precipitation recorded for the
* time interval from 22:45 to 22:46.
* Consequently the last line in a file is for 24:00.
* For example the file 20090714.asc ends with
* \verbatim
...
23.917 0.2 14.07.09 23:55
23.933 0.3 14.07.09 23:56
23.950 0.7 14.07.09 23:57
23.967 0.7 14.07.09 23:58
23.983 0.6 14.07.09 23:59
24.000 0.7 14.07.09 24:00
END OF DATA BFO 1 DL1/N V1.10a
\endverbatim
* The next file (20090715.asc) starts with
* \verbatim
# Logger status :
# ---------------
# Date: 16.07.09
# Time: 1:01:17
# Battery : BAT OK
# MemCycle: Event
# earliest date: 196 15.07.2009 00:00:00.000000
# latest date: 197 16.07.2009 00:00:00.000000
# creation date: 197 16.07.2009 01:01:19.000000
# initial line: Data : 15.07.09 0:00
# final line: END OF DATA BFO 1 DL1/N V1.10a
Data : 15.07.09 0:00
00.017 1.2 15.07.09 00:01
00.033 0.8 15.07.09 00:02
00.050 0.7 15.07.09 00:03
00.067 0.5 15.07.09 00:04
00.083 0.5 15.07.09 00:05
...
\endverbatim
*
* \section sec_page_thiesdl1_current File for the current hour
* Files for the current hour (i.e. hours not yet completed) are given the
* name \c active.asc.
* An example is
* \verbatim
# Logger status :
# ---------------
# Date: 13.09.11
# Time: 7:55:02
# Battery : BAT OK
# MemCycle: Event
# earliest date: 256 13.09.2011 00:00:00.000000
# latest date: 256 13.09.2011 07:57:02.000000
# creation date: 256 13.09.2011 07:55:05.000000
# initial line: Data : 13.09.11 0:00
# final line: END OF DATA BFO 1 DL1/N V1.10a
Data : 13.09.11 0:00
03.383 0.1 13.09.11 03:23
04.400 0.1 13.09.11 04:24
END OF DATA BFO 1 DL1/N V1.10a
\endverbatim
* The time span for which this file is valid is only apparent from the file
* header.
*
* \section sec_page_thiesdl1_references References
* \sa Product page of the Thies company:
* http://www.thiesclima.com/Datalogger%20DL1%20N.html
* \sa Thies DL1 data acquisition program:
* http://gpitrsvn.gpi.uni-karlsruhe.de:8000/TFSoftware/wiki/trunk/src/conv/ThiesDL1
* and
* http://www.rz.uni-karlsruhe.de/~bi77/public/paperware/linked/technotes/DL1recording.pdf
*/
/* ----- END OF README ----- */
this is <README>
============================================================================
ThiesDL1 data acquisition
-------------------------
$Id$
============================================================================
----- END OF README -----
......@@ -358,7 +358,7 @@ INPUT = ./
# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx *.hpp
# *.h++ *.idl *.odl *.cs
FILE_PATTERNS = README cvsids.xxx \
FILE_PATTERNS = doxy*.txt cvsids.xxx \
*.h \
*.cc
......
/*! \file README
* \brief DL1 logger doxygen mainpage (implementation)
*
* ----------------------------------------------------------------------------
*
* $Id$
* \author Thomas Forbriger
* \date 23/12/2008
*
* DL1 logger doxygen mainpage (implementation)
*
* Copyright (c) 2008 by Thomas Forbriger (BFO Schiltach)
*
* REVISIONS and CHANGES
* - 23/12/2008 V1.0 Thomas Forbriger
*
* ============================================================================
*/
/*! \mainpage
Thies DL1 pluviograph data logger control program.
\author Thomas Forbriger
\date December 2008
\since December 2008
This is a collection of code that supports serial line access to the Thies
DL1 precipitation data logger.
Two programs are comin along with the code:
- \ref DL1direct
- \ref DL1logger
The program uses the following modules:
- \ref dl1::DL1 provides serial line communication with the Thies DL1 data
logger
- \ref dl1::DataLine handles Thies DL1 data lines and returns their contents
- \ref dl1::Record collects data lines and returns data sets (records)
- \ref dl1::Logger logs messages to the system's syslog
- \ref dl1::Memory maintains a memory files
- \ref dl1::Exception base class for critical exceptions
- \ref dl1::TimeOut diagnostic exception class
The file format is described at
- \ref page_thiesdl1_format
Source code file revisions are reported at
- \ref page_CVSID
- \ref dl1::CVSIDS
*/
/*======================================================================*/
/*! \page page_CVSID Source code file revision
\verbinclude "cvsids.xxx"
*/
/*======================================================================*/
/*! \page page_thiesdl1_format Definition of the ThiesDL1 file format
*
* This file format is used to store data of the Thies DL1/N pluviometer at
* BFO.
* The files are produced by program DL1logger, which accomplishes data
* acquisition by controlling the Thies DL1/N data logger and reading the
* data from the logger.
*
* Sections in this page:
* - \ref sec_page_thiesdl1_formatdefinition
* - \ref sec_page_thiesdl1_midnight
* - \ref sec_page_thiesdl1_current
* - \ref sec_page_thiesdl1_references
*
* \section sec_page_thiesdl1_formatdefinition Structure of a data file
* A typical data file stored by DL1logger is 20110911.asc:
* \verbatim
# Logger status :
# ---------------
# Date: 12.09.11
# Time: 1:01:15
# Battery : BAT OK
# MemCycle: Event
# ERROR: duplicate sample (index 1439): 24.000 0.0 11.09.11 24:00
# earliest date: 254 11.09.2011 00:00:00.000000
# latest date: 255 12.09.2011 00:00:00.000000
# creation date: 255 12.09.2011 01:01:19.000000
# initial line: Data : 11.09.11 0:00
# final line: END OF DATA BFO 1 DL1/N V1.10a
Data : 11.09.11 0:00
16.233 0.1 11.09.11 16:14
16.250 0.2 11.09.11 16:15
16.267 0.1 11.09.11 16:16
16.283 0.1 11.09.11 16:17
16.317 0.1 11.09.11 16:19
16.617 0.1 11.09.11 16:37
16.650 0.1 11.09.11 16:39
16.667 0.1 11.09.11 16:40
16.683 0.1 11.09.11 16:41
16.867 0.1 11.09.11 16:52
17.483 0.1 11.09.11 17:29
19.417 0.1 11.09.11 19:25
19.483 0.2 11.09.11 19:29
19.500 0.1 11.09.11 19:30
19.517 0.1 11.09.11 19:31
19.566 0.1 11.09.11 19:34
19.600 0.1 11.09.11 19:36
19.633 0.1 11.09.11 19:38
19.800 0.1 11.09.11 19:48
19.850 0.1 11.09.11 19:51
19.883 0.1 11.09.11 19:53
19.983 0.1 11.09.11 19:59
20.050 0.1 11.09.11 20:03
20.067 0.1 11.09.11 20:04
20.117 0.1 11.09.11 20:07
20.150 0.1 11.09.11 20:09
20.333 0.1 11.09.11 20:20
20.600 0.1 11.09.11 20:36
20.717 0.1 11.09.11 20:43
21.533 0.1 11.09.11 21:32
24.000 0.0 11.09.11 24:00
24.000 0.0 11.09.11 24:00
END OF DATA BFO 1 DL1/N V1.10a
\endverbatim
*
* It begins with a header produced by DL1logger, first reporting the
* current status when creating the data file:
* \verbatim
# Logger status :
# ---------------
# Date: 12.09.11
# Time: 1:01:15
# Battery : BAT OK
# MemCycle: Event
\endverbatim
*
* Then reporting log messages or error conditions produced while decoding
* the data stream:
* \verbatim
# ERROR: duplicate sample (index 1439): 24.000 0.0 11.09.11 24:00
\endverbatim
*
* This is followed by a statement indicating the time span for which data
* was requested from the data logger, the time of creation of the data file
* and the first and final line sent by the logger:
* \verbatim
# earliest date: 254 11.09.2011 00:00:00.000000
# latest date: 255 12.09.2011 00:00:00.000000
# creation date: 255 12.09.2011 01:01:19.000000
# initial line: Data : 11.09.11 0:00
# final line: END OF DATA BFO 1 DL1/N V1.10a
\endverbatim
*
* All these header lines have a \c # in the first column.
* After the header, the actual data sent by the Thies DL1/N logger is
* dumped.
* It starts with the initial line sent by the logger:
* \verbatim
Data : 11.09.11 0:00
\endverbatim
*
* After the initial line, the logger produced one data line for each minute
* for which precipitation was recorded.
* Minutes for which no precipitation has occured, no lines are present.
* Each line consists of four fields. For example:
* \verbatim
16.233 0.1 11.09.11 16:14
\endverbatim
* The fields are:
* -# the time in decimal hours (in UT)
* -# the recorded precipitation for the reported minute in mm
* -# the date in format DD.MM.YY
* -# the time in format HH:MM (in UT)
*
* The data file is finished with the final line sent by the logger:
* \verbatim
END OF DATA BFO 1 DL1/N V1.10a
\endverbatim
* This line indicates the station for which data was recorded (here: BFO)
* and the type of instrument used (here: DL1/N).
*
* \section sec_page_thiesdl1_midnight Timing at end of day
* The time reported in the data line is the time when the current
* precipitaion count interval ended.
* A line for 22:46 provides the amount of precipitation recorded for the
* time interval from 22:45 to 22:46.
* Consequently the last line in a file is for 24:00.
* For example the file 20090714.asc ends with
* \verbatim
...
23.917 0.2 14.07.09 23:55
23.933 0.3 14.07.09 23:56
23.950 0.7 14.07.09 23:57
23.967 0.7 14.07.09 23:58
23.983 0.6 14.07.09 23:59
24.000 0.7 14.07.09 24:00
END OF DATA BFO 1 DL1/N V1.10a
\endverbatim
* The next file (20090715.asc) starts with
* \verbatim
# Logger status :
# ---------------
# Date: 16.07.09
# Time: 1:01:17
# Battery : BAT OK
# MemCycle: Event
# earliest date: 196 15.07.2009 00:00:00.000000
# latest date: 197 16.07.2009 00:00:00.000000
# creation date: 197 16.07.2009 01:01:19.000000
# initial line: Data : 15.07.09 0:00
# final line: END OF DATA BFO 1 DL1/N V1.10a
Data : 15.07.09 0:00
00.017 1.2 15.07.09 00:01
00.033 0.8 15.07.09 00:02
00.050 0.7 15.07.09 00:03
00.067 0.5 15.07.09 00:04
00.083 0.5 15.07.09 00:05
...
\endverbatim
*
* \section sec_page_thiesdl1_current File for the current hour
* Files for the current hour (i.e. hours not yet completed) are given the
* name \c active.asc.
* An example is
* \verbatim
# Logger status :
# ---------------
# Date: 13.09.11
# Time: 7:55:02
# Battery : BAT OK
# MemCycle: Event
# earliest date: 256 13.09.2011 00:00:00.000000
# latest date: 256 13.09.2011 07:57:02.000000
# creation date: 256 13.09.2011 07:55:05.000000
# initial line: Data : 13.09.11 0:00
# final line: END OF DATA BFO 1 DL1/N V1.10a
Data : 13.09.11 0:00
03.383 0.1 13.09.11 03:23
04.400 0.1 13.09.11 04:24
END OF DATA BFO 1 DL1/N V1.10a
\endverbatim
* The time span for which this file is valid is only apparent from the file
* header.
*
* \section sec_page_thiesdl1_references References
* \sa Product page of the Thies company:
* http://www.thiesclima.com/Datalogger%20DL1%20N.html
* \sa Thies DL1 data acquisition program:
* http://gpitrsvn.gpi.uni-karlsruhe.de:8000/TFSoftware/wiki/trunk/src/conv/ThiesDL1
* and
* http://www.rz.uni-karlsruhe.de/~bi77/public/paperware/linked/technotes/DL1recording.pdf
*/
/* ----- END OF README ----- */
This is a legacy version of the repository. It may be incomplete as well as
inconsistent. See README.history for details. For the old stock of the
repository copyright and licence conditions apply as specified for versions
commited after 2015-03-01. Use recent versions as a base for new development.
The legacy version is only stored to keep a record of history.
# this is <Makefile>
# ----------------------------------------------------------------------------
# $Id$
#
# Copyright (c) 2008 by Thomas Forbriger (BFO Schiltach)
#
# Makefile for libgrrefsub.a
#
# reflectivity code by J. Ungerer
#
# ----
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
# ----
#
# provides an API such that reflectivity can be used within programs like
# gremlin or syg
#
# REVISIONS and CHANGES
# 15/09/2008 V1.0 Thomas Forbriger
# use gfortran
# 08/10/2010 V1.1 migrate to new SVN environment
# discard f2c fallback option
# check environment
# 17/11/2010 V1.2 avoid incdep and makefdoc.tcl
# 11/01/2011 V1.3 avoid newlib
# 17/01/2011 V1.4 distinguish library creation and installation
#
# ============================================================================
#
.PHONY: all
all: install doc
.PHONY: doc
doc: libgrrefsub.doc
LIBRARIES=libgrrefsub.a
.PHONY: install
install: $(addprefix $(LOCLIBDIR)/,$(LIBRARIES))
$(LOCLIBDIR)/%: install-include %
mkdir -pv $(LOCLIBDIR)
/bin/mv -fv $(word 2,$^) $(LOCLIBDIR)
# install-include where no header files are to be installed
.PHONY: install-include
install-include:
.PHONY: reinstall
reinstall:
$(MAKE) clean
$(MAKE) install
#----------------------------------------------------------------------
CHECKVAR=$(if $($(1)),,$(error ERROR: missing variable $(1)))
CHECKVARS=$(foreach var,$(1),$(call CHECKVAR,$(var)))
$(call CHECKVARS,LOCINCLUDEDIR LOCLIBDIR LOCBINDIR)
FLAGS += $(MYFLAGS)
CFLAGS += -O2 $(FLAGS)
FFLAGS += -ff2c -Wall -ffixed-line-length-none $(FLAGS)
# use STATIC=-static to produce statically linked binaries
STATIC=
LDFLAGS=-L$(LOCLIBDIR) $(STATIC)
CPPFLAGS=-I$(LOCINCLUDEDIR) $(FLAGS)
LIBOBS=gr_refsub.o gr_mat.o gr_rtkc.o gr_setrheo.o gr_setsigma.o
#----------------------------------------------------------------------
# standard edit targets
clean:
-/bin/rm *.o *.bak *.d *.a *.doc
flist: $(wildcard *.f *.inc) Makefile