Compare commits
10 Commits
cafe-1.12.
...
cafe-1-14.
| Author | SHA1 | Date | |
|---|---|---|---|
| c2934ce3f7 | |||
| 7c779d9add | |||
| 80ce12d374 | |||
| 90e063f930 | |||
| cc804d2e7b | |||
| cecf4a3f11 | |||
| 275bf4ad10 | |||
| 22583f38b6 | |||
| 5f5cfc97fa | |||
| 6006091f2e |
276
+
Normal file
276
+
Normal file
@@ -0,0 +1,276 @@
|
||||
### psi specific - select compiler
|
||||
#source <this_autogen_file> <facility> <target_language>
|
||||
#<facility = sls sls2 sf> default is sf
|
||||
#<target_language = cpp matlab python>
|
||||
module unload gcc
|
||||
module load gcc/7.3.0
|
||||
### psi specific - end
|
||||
|
||||
rm -f configure.ac
|
||||
ln -s configurePSI.ac configure.ac
|
||||
|
||||
rm -f ./aclocal.m4
|
||||
rm -rf ./autom4te.cache
|
||||
aclocal --force -I m4
|
||||
/opt/gfa/python-3.7/latest/bin/libtoolize --force --copy #select libtools 2.4.6
|
||||
autoconf --force #interprets configure.ac
|
||||
autoheader --force
|
||||
automake --force --add-missing --copy
|
||||
#autoreconf not wanted
|
||||
|
||||
#Check what the EPICS RELEASE IS from ${EPICS}/base
|
||||
#Used by ./configure
|
||||
#Assumes format ${EPICS}/base-3.14.12
|
||||
#source cafeVersion-gcc-7.3.0
|
||||
CAFE_V="cafe-1.14.1"
|
||||
#For later check of existence of HOST_ARCH for $EPICS/include/os/$HOST_ARCH
|
||||
#Assume Linux but check if Darwin
|
||||
CAFE_HOST_FLAG_DARWIN=$(echo ${EPICS_HOST_ARCH} | grep -c "Darwin")
|
||||
export CAFE_HOST_FLAG_DARWIN=$CAFE_HOST_FLAG_DARWIN
|
||||
|
||||
RETURN_ON_WRONG_INPUT=true
|
||||
RETURN_FLAG=false
|
||||
|
||||
EPICS_BASE=$(readlink ${EPICS}/base)
|
||||
#EB=$(readlink /afs/psi.ch/project/cafe/gitworkspace/CAFE/cpp/base)
|
||||
echo $EPICS_BASE
|
||||
if [ -z "$EPICS_BASE" ]
|
||||
then
|
||||
EPICS_BASE='base-7.4.1' #7.0 = 7+0 = 7 for major release
|
||||
fi
|
||||
|
||||
echo 'input' "$0" "$1" "$2"
|
||||
echo $EPICS_BASE
|
||||
|
||||
FACILITY=$(echo "$1" | tr '[:upper:]' '[:lower:]')
|
||||
CACLIENT=$(echo "$2" | tr '[:upper:]' '[:lower:]')
|
||||
|
||||
FACILITY_DEFAULT="sf"
|
||||
CACLIENT_DEFAULT="python"
|
||||
|
||||
FACILITY_TEMP=""
|
||||
CACLIENT_TEMP=""
|
||||
|
||||
echo 'input arg. facility/target' $FACILITY $CACLIENT
|
||||
|
||||
if [ -n "$FACILITY" ]
|
||||
then
|
||||
if [ "$FACILITY" = "matlab" ] || [ "$FACILITY" = "python" ] || \
|
||||
[ "$FACILITY" = "py37" ] || [ "$FACILITY" = "py35" ] || \
|
||||
[ "$FACILITY" = "julia" ] || [ "$FACILITY" = "cpp" ] || \
|
||||
[ "$FACILITY" = "cc" ]
|
||||
then
|
||||
CACLIENT_TEMP=$FACILITY
|
||||
FACILITY_TEMP=$2
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -n "$CACLIENT" ]
|
||||
then
|
||||
if [ "$CACLIENT" = "sls" ] || [ "$CACLIENT" = "sls2" ] || \
|
||||
[ "$CACLIENT" = "sf" ] || [ "$CACLIENT" = "swissfel" ] || \
|
||||
[ "$CACLIENT" = "sfel" ] || [ "$CACLIENT" = "hipa" ]
|
||||
then
|
||||
if [ -z $FACILITY_TEMP ]
|
||||
then
|
||||
FACILITY_TEMP=$CACLIENT
|
||||
CACLIENT_TEMP=$1
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
|
||||
if [ -z "$FACILITY" ]
|
||||
then
|
||||
FACILITY="sf"
|
||||
echo "FACILITY = " $FACILITY
|
||||
if [ -z $CACLIENT ]
|
||||
then
|
||||
CACLIENT=$CACLIENT_DEFAULT
|
||||
fi
|
||||
elif [ "$FACILITY" = "sls" ] || [ "$FACILITY" = "sls2" ] || \
|
||||
[ "$FACILITY" = "sf" ] || [ "$FACILITY" = "swissfel" ] || \
|
||||
[ "$FACILITY" = "sfel" ] || [ "$FACILITY" = "hipa" ]
|
||||
then
|
||||
echo "FACILITY = " $FACILITY
|
||||
elif [ -n "$FACILITY_TEMP" ]
|
||||
then
|
||||
if [ "$FACILITY_TEMP" = "sls" ] || [ "$FACILITY_TEMP" = "sls2" ] || \
|
||||
[ "$FACILITY_TEMP" = "sf" ] || [ "$FACILITY_TEMP" = "swissfel" ] || \
|
||||
[ "$FACILITY_TEMP" = "sfel" ] || [ "$FACILITY_TEMP" = "hipa" ]
|
||||
then
|
||||
|
||||
|
||||
FACILITY=$FACILITY_TEMP
|
||||
else
|
||||
if [ -n "$2" ]
|
||||
then
|
||||
echo "***UNRECOGNIZED INPUT FACILITY***" $FACILITY
|
||||
echo "***VALID VALUES ARE: sls sls2 sf hipa"
|
||||
RETURN_FLAG=true
|
||||
fi
|
||||
echo "***OTHERWISE THE DEFAULT FACILITY IS:" $FACILITY_DEFAULT
|
||||
FACILITY=$FACILITY_DEFAULT
|
||||
fi
|
||||
else
|
||||
echo "***UNRECOGNIZED INPUT FACILITY***" $FACILITY
|
||||
echo "***VALID VALUES ARE: sls sls2 sf hipa"
|
||||
RETURN_FLAG=true
|
||||
echo "***OTHERWISE THE DEFAULT FACILITY IS: " $FACILITY_DEFAULT
|
||||
FACILITY=$FACILITY_DEFAULT
|
||||
fi
|
||||
|
||||
if [ -n "$CACLIENT" ]
|
||||
then
|
||||
if [ "$CACLIENT" = "matlab" ] || [ "$CACLIENT" = "python" ] || \
|
||||
[ "$CACLIENT" = "py37" ] || [ "$CACLIENT" = "py35" ] || \
|
||||
[ "$CACLIENT" = "julia" ] || [ "$CACLIENT" = "cpp" ] || \
|
||||
[ "$CACLIENT" = "cc" ]
|
||||
then
|
||||
echo "CA TARGET = " $CACLIENT
|
||||
else
|
||||
if [ -n "$CACLIENT_TEMP" ]
|
||||
then
|
||||
if [ "$CACLIENT_TEMP" = "matlab" ] || [ "$CACLIENT_TEMP" = "python" ] || \
|
||||
[ "$CACLIENT_TEMP" = "py37" ] || [ "$CACLIENT_TEMP" = "py35" ] || \
|
||||
[ "$CACLIENT_TEMP" = "julia" ] || [ "$CACLIENT_TEMP" = "cpp" ] || \
|
||||
[ "$CACLIENT_TEMP" = "cc" ]
|
||||
then
|
||||
CACLIENT=$CACLIENT_TEMP
|
||||
else
|
||||
echo "***UNRECOGNIZED INPUT CA TARGET***" $CACLIENT
|
||||
echo "***VALID VALUES ARE: cpp matlab python"
|
||||
RETURN_FLAG=true
|
||||
echo "***OTHERWISE THE DEFAULT CA TARGET IS:" $CACLIENT_DEFAULT
|
||||
CACLIENT=$CACLIENT_DEFAULT
|
||||
fi
|
||||
else
|
||||
echo "***UNRECOGNIZED INPUT CA TARGET***" $CACLIENT
|
||||
echo "***VALID VALUES ARE: cpp matlab python"
|
||||
RETURN_FLAG=true
|
||||
echo "***OTHERWISE THE DEFAULT CA TARGET IS:" $CACLIENT_DEFAULT
|
||||
CACLIENT=$CACLIENT_DEFAULT
|
||||
fi
|
||||
fi
|
||||
else
|
||||
CACLIENT=$CACLIENT_DEFAULT
|
||||
fi
|
||||
|
||||
|
||||
|
||||
if [ $RETURN_ON_WRONG_INPUT = true ] ; then
|
||||
if [ $RETURN_FLAG = true ] ; then
|
||||
return 1 2>/dev/null
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
echo "FACILITY SELECTED = " $FACILITY
|
||||
echo "CA TARGET SELECTED = " $CACLIENT
|
||||
|
||||
ENABLE_OPTIONS="--enable-boost-inc"
|
||||
|
||||
if [ "$FACILITY" = "sfel" ] || [ "$FACILITY" = "swissfel" ]
|
||||
then
|
||||
FACILITY="sf"
|
||||
fi
|
||||
|
||||
if [ "$CACLIENT" = "python" ] || [ "$CACLIENT" = "julia" ]
|
||||
then
|
||||
CACLIENT="py37"
|
||||
fi
|
||||
|
||||
|
||||
if [ "$FACILITY" = "sls2" ]
|
||||
then
|
||||
ENABLE_OPTIONS+=" --enable-epics7"
|
||||
CAFE_V+="-sls2"
|
||||
else
|
||||
ENABLE_OPTIONS+=" --enable-epics3"
|
||||
if [ "$FACILITY" = "sf" ] && [ "$CACLIENT" != "matlab" ]
|
||||
then
|
||||
CAFE_V+="-sf"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ "$CACLIENT" = "py35" ]
|
||||
then
|
||||
ENABLE_OPTIONS+=" --enable-python35"
|
||||
ENABLE_OPTIONS+=" --enable-qt4"
|
||||
CAFE_V+="-py35"
|
||||
elif [ "$CACLIENT" = "py37" ]
|
||||
then
|
||||
ENABLE_OPTIONS+=" --enable-python37"
|
||||
ENABLE_OPTIONS+=" --enable-qt5"
|
||||
CAFE_V+="-py37"
|
||||
#else
|
||||
#ENABLE_OPTIONS+=" --enable-qt5"
|
||||
fi
|
||||
|
||||
if [ "$FACILITY" = "sf" ] && [ "$CACLIENT" != "matlab" ]
|
||||
then
|
||||
#rm -f src/PyCafe.cpp
|
||||
#ln -s PyCafe3.cpp src/PyCafe.cpp
|
||||
ENABLE_OPTIONS+=" --enable-json"
|
||||
ENABLE_OPTIONS+=" --enable-zeromq"
|
||||
ENABLE_OPTIONS+=" --enable-curl"
|
||||
ENABLE_OPTIONS+=" --enable-lz4"
|
||||
#else
|
||||
#rm -f src/PyCafe.cpp
|
||||
#ln -s PyCafe_sls.cpp src/PyCafe.cpp
|
||||
fi
|
||||
|
||||
CAFE_V+="-gcc-"$GCC_VERSION
|
||||
|
||||
echo "CAFE VERSION: $CAFE_V"
|
||||
|
||||
#echo 'EPICS BASE IS='$EPICS_BASE
|
||||
#echo 'EPICS BASE DIR='${EPICS}/base-7.0.4.1
|
||||
|
||||
EB1=$(echo $EPICS_BASE | sed -e "s/[a-zA-Z]*-//g")
|
||||
EBMAJ=$(echo $EB1 | sed -e "s/[[:punct:]].*//g")
|
||||
EBMIN1=$(echo $EB1 | sed -e "s/^[[:digit:]]*[[:punct:]]//g")
|
||||
EBMIN=$(echo $EBMIN1 | sed -e "s/[[:punct:]][[:digit:]]*//g")
|
||||
EBPAT=$(echo $EB1 | sed -e "s/[[:digit:]]*[[:punct:]]//g")
|
||||
echo EPICS_MAJOR=$EBMAJ
|
||||
echo EPICS_MINOR=$EBMIN
|
||||
echo EPICS_PATCH=$EBPAT
|
||||
#echo $EBMIN1
|
||||
|
||||
export CAFE_EPICS_V_MAJOR=$EBMAJ
|
||||
export CAFE_EPICS_V_MINOR=$EBMIN
|
||||
export CAFE_EPICS_V_PATCH=$EBPAT
|
||||
|
||||
#ENABLE_OPTIONS+=" --enable-qt5"
|
||||
##ENABLE_OPTIONS+=" --enable-qt4"
|
||||
#ENABLE_OPTIONS+=" --enable-python37"
|
||||
##ENABLE_OPTIONS+=" --enable-python35"
|
||||
#ENABLE_OPTIONS+=" --enable-json"
|
||||
#ENABLE_OPTIONS+=" --enable-zeromq"
|
||||
#ENABLE_OPTIONS+=" --enable-curl"
|
||||
#ENABLE_OPTIONS+=" --enable-lz4"
|
||||
|
||||
echo 'ENABLE_OPTIONS='$ENABLE_OPTIONS
|
||||
|
||||
./configure \
|
||||
--prefix=/opt/gfa/cafe/cpp/${CAFE_V} \
|
||||
--libdir=/opt/gfa/cafe/cpp/${CAFE_V}/lib/${EPICS_HOST_ARCH} \
|
||||
${ENABLE_OPTIONS} \
|
||||
--with-boost-inc=/opt/gfa/cafe/boost/boost_1_61_0/include \
|
||||
--with-epics7=${EPICS}/base-7.0.4.1 \
|
||||
--with-epics3=${EPICS}/base \
|
||||
--with-python37=/opt/gfa/python-3.7/latest \
|
||||
--with-python35=/opt/gfa/python-3.5/latest \
|
||||
--with-qt5=/opt/gfa/python-3.7/latest \
|
||||
--with-qt4=/opt/gfa/python-3.5/latest \
|
||||
--with-json=/opt/gfa/zmsglog/json/jsoncpp-src-0.6.0-rc2 \
|
||||
--with-zeromq=/opt/gfa/zmq/zeromq-4.2.3-gcc-6.3.0 \
|
||||
--with-curl=/opt/gfa/zmq/curl-7.55.1 \
|
||||
--with-lz4=/opt/gfa/zmq/lz4/lib
|
||||
|
||||
unset CAFE_EPICS_V_PATCH
|
||||
unset CAFE_EPICS_V_MINOR
|
||||
unset CAFE_EPICS_V_MAJOR
|
||||
|
||||
unset CAFE_HOST_FLAG_DARWIN
|
||||
15
INSTALL
15
INSTALL
@@ -1,8 +1,8 @@
|
||||
Installation Instructions
|
||||
*************************
|
||||
|
||||
Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005,
|
||||
2006, 2007, 2008, 2009 Free Software Foundation, Inc.
|
||||
Copyright (C) 1994-1996, 1999-2002, 2004-2013 Free Software Foundation,
|
||||
Inc.
|
||||
|
||||
Copying and distribution of this file, with or without modification,
|
||||
are permitted in any medium without royalty provided the copyright
|
||||
@@ -226,6 +226,11 @@ order to use an ANSI C compiler:
|
||||
|
||||
and if that doesn't work, install pre-built binaries of GCC for HP-UX.
|
||||
|
||||
HP-UX `make' updates targets which have the same time stamps as
|
||||
their prerequisites, which makes it generally unusable when shipped
|
||||
generated files such as `configure' are involved. Use GNU `make'
|
||||
instead.
|
||||
|
||||
On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot
|
||||
parse its `<wchar.h>' header file. The option `-nodtk' can be used as
|
||||
a workaround. If GNU CC is not installed, it is therefore recommended
|
||||
@@ -304,9 +309,10 @@ causes the specified `gcc' to be used as the C compiler (unless it is
|
||||
overridden in the site shell script).
|
||||
|
||||
Unfortunately, this technique does not work for `CONFIG_SHELL' due to
|
||||
an Autoconf bug. Until the bug is fixed you can use this workaround:
|
||||
an Autoconf limitation. Until the limitation is lifted, you can use
|
||||
this workaround:
|
||||
|
||||
CONFIG_SHELL=/bin/bash /bin/bash ./configure CONFIG_SHELL=/bin/bash
|
||||
CONFIG_SHELL=/bin/bash ./configure CONFIG_SHELL=/bin/bash
|
||||
|
||||
`configure' Invocation
|
||||
======================
|
||||
@@ -362,4 +368,3 @@ operates.
|
||||
|
||||
`configure' also accepts some other, not widely useful, options. Run
|
||||
`configure --help' for more details.
|
||||
|
||||
|
||||
30
README
30
README
@@ -4,8 +4,17 @@ autogen_rel_py3_noqt.sh ==> generates library for use from within python and C
|
||||
autogen_rel_noqt.sh ==> generates library for building a mex file (remove Qt4 dependence as matlab requires Qt5)
|
||||
autogen_rel.sh ==> normal c++ release
|
||||
|
||||
##
|
||||
Libraries are only made available when the appropriate is enabld
|
||||
#ENABLE_OPTIONS+=" --enable-qt5"
|
||||
##ENABLE_OPTIONS+=" --enable-qt4"
|
||||
#ENABLE_OPTIONS+=" --enable-python37"
|
||||
##ENABLE_OPTIONS+=" --enable-python35"
|
||||
#ENABLE_OPTIONS+=" --enable-json"
|
||||
#ENABLE_OPTIONS+=" --enable-zeromq"
|
||||
#ENABLE_OPTIONS+=" --enable-curl"
|
||||
#ENABLE_OPTIONS+=" --enable-lz4"
|
||||
|
||||
##
|
||||
## --------------------------------------------------------------------------
|
||||
## autogen.sh
|
||||
##
|
||||
@@ -16,18 +25,21 @@ autogen_rel.sh ==> normal c++ release
|
||||
## installed
|
||||
|
||||
## --with-boost: base directory for the boost header files
|
||||
## --with-epics: epics top level directory
|
||||
## Note that configure.ac assume that the architecture is
|
||||
## base/lib/${EPICS_HOST_ARCH}
|
||||
## --with-qt-inc Qt include directory (optional)
|
||||
## --with-qt-lib Qt lib directory (optional)
|
||||
## --with-python-inc Python include directory, if building PyCafe
|
||||
## --with-python-lib Python lib directory, if bulding PyCafe
|
||||
## --with-epics7: epics7 top level directory
|
||||
## --with-epics3: epics3 top level directory
|
||||
## Note that configure.ac assume that the architecture is
|
||||
## base/lib/${EPICS_HOST_ARCH}
|
||||
|
||||
## --with-qt5: Qt5 base directory (optional)
|
||||
## --with-python37: Python 3.7 directory, if building PyCafe
|
||||
## --with-python35: Python 3.5 directory, if bulding PyCafe
|
||||
## Remaining libraries are specific to swissfel zmq streams
|
||||
## --------------------------------------------------------------------------
|
||||
|
||||
1) Modify autogen.sh according to above
|
||||
2) 'source autogen.sh'
|
||||
3) 'make install' This installs cafe headers/libraries to the directories
|
||||
3) 'make'
|
||||
4) 'make install' This installs cafe headers/libraries to the directories
|
||||
specified by --prefix/--libdir in the above
|
||||
|
||||
|
||||
|
||||
86
autogen.sh
Normal file
86
autogen.sh
Normal file
@@ -0,0 +1,86 @@
|
||||
### psi specific - select compiler
|
||||
rm -f configure.ac
|
||||
ln -s configurePSI.ac configure.ac
|
||||
rm -f src/PyCafe.cpp
|
||||
ln -s PyCafe_sls.cpp src/PyCafe.cpp
|
||||
rm -f ./aclocal.m4
|
||||
rm -rf ./autom4te.cache
|
||||
aclocal --force -I m4
|
||||
/opt/gfa/python-3.7/latest/bin/libtoolize --force --copy #select libtools 2.4.6
|
||||
autoconf --force #interprets configure.ac
|
||||
autoheader --force
|
||||
automake --force --add-missing --copy
|
||||
|
||||
#Check what the EPICS RELEASE IS from ${EPICS}/base
|
||||
#Used by ./configure
|
||||
#Assumes format ${EPICS}/base-3.14.12
|
||||
#source cafeVersion-gcc-7.3.0
|
||||
CAFE_V="cafe-1.13.0"
|
||||
#For later check of existence of HOST_ARCH for $EPICS/include/os/$HOST_ARCH
|
||||
#Assume Linux but check if Darwin
|
||||
CAFE_HOST_FLAG_DARWIN=$(echo ${EPICS_HOST_ARCH} | grep -c "Darwin")
|
||||
echo 'darwin' $CAFE_HOST_FLAG_DARWIN
|
||||
export CAFE_HOST_FLAG_DARWIN=$CAFE_HOST_FLAG_DARWIN
|
||||
|
||||
EPICS_BASE=$(readlink ${EPICS}/base)
|
||||
#EB=$(readlink /afs/psi.ch/project/cafe/gitworkspace/CAFE/cpp/base)
|
||||
echo $EPICS_BASE
|
||||
if [ -z "$EPICS_BASE" ]
|
||||
then
|
||||
EPICS_BASE='base-7.4.1' #7.0 = 7+0 = 7 for major release
|
||||
fi
|
||||
|
||||
echo 'input' "$0" "$1" "$2"
|
||||
echo $EPICS_BASE
|
||||
|
||||
|
||||
EB1=$(echo $EPICS_BASE | sed -e "s/[a-zA-Z]*-//g")
|
||||
EBMAJ=$(echo $EB1 | sed -e "s/[[:punct:]].*//g")
|
||||
EBMIN1=$(echo $EB1 | sed -e "s/^[[:digit:]]*[[:punct:]]//g")
|
||||
EBMIN=$(echo $EBMIN1 | sed -e "s/[[:punct:]][[:digit:]]*//g")
|
||||
EBPAT=$(echo $EB1 | sed -e "s/[[:digit:]]*[[:punct:]]//g")
|
||||
echo EPICS_MAJOR=$EBMAJ
|
||||
echo EPICS_MINOR=$EBMIN
|
||||
echo EPICS_PATCH=$EBPAT
|
||||
#echo $EBMIN1
|
||||
|
||||
export CAFE_EPICS_V_MAJOR=$EBMAJ
|
||||
export CAFE_EPICS_V_MINOR=$EBMIN
|
||||
export CAFE_EPICS_V_PATCH=$EBPAT
|
||||
|
||||
ENABLE_OPTIONS="--enable-boost-inc"
|
||||
ENABLE_OPTIONS+=" --enable-epics3"
|
||||
#ENABLE_OPTIONS+=" --enable-epics7"
|
||||
ENABLE_OPTIONS+=" --enable-qt5"
|
||||
#ENABLE_OPTIONS+=" --enable-qt4"
|
||||
ENABLE_OPTIONS+=" --enable-python37"
|
||||
#ENABLE_OPTIONS+=" --enable-python35"
|
||||
#ENABLE_OPTIONS+=" --enable-json"
|
||||
#ENABLE_OPTIONS+=" --enable-zeromq"
|
||||
#ENABLE_OPTIONS+=" --enable-curl"
|
||||
#ENABLE_OPTIONS+=" --enable-lz4"
|
||||
|
||||
echo 'ENABLE_OPTIONS='$ENABLE_OPTIONS
|
||||
|
||||
./configure \
|
||||
--prefix=/opt/gfa/cafe/cpp/${CAFE_V} \
|
||||
--libdir=/opt/gfa/cafe/cpp/${CAFE_V}/lib/${EPICS_HOST_ARCH} \
|
||||
${ENABLE_OPTIONS} \
|
||||
--with-boost-inc=/opt/gfa/cafe/boost/boost_1_61_0/include \
|
||||
--with-epics7=${EPICS}/base-7.0.4.1 \
|
||||
--with-epics3=${EPICS}/base \
|
||||
--with-python37=/opt/gfa/python-3.7/latest \
|
||||
--with-python35=/opt/gfa/python-3.5/latest \
|
||||
--with-qt5=/opt/gfa/python-3.7/latest \
|
||||
--with-qt4=/opt/gfa/python-3.5/latest \
|
||||
--with-json=/opt/gfa/zmsglog/json/jsoncpp-src-0.6.0-rc2 \
|
||||
--with-zeromq=/opt/gfa/zmq/zeromq-4.2.3-gcc-6.3.0 \
|
||||
--with-curl=/opt/gfa/zmq/curl-7.55.1 \
|
||||
--with-lz4=/opt/gfa/zmq/lz4/lib
|
||||
|
||||
unset CAFE_EPICS_V_PATCH
|
||||
unset CAFE_EPICS_V_MINOR
|
||||
unset CAFE_EPICS_V_MAJOR
|
||||
|
||||
unset CAFE_HOST_FLAG_DARWIN
|
||||
|
||||
293
autogen_psi.sh
Normal file
293
autogen_psi.sh
Normal file
@@ -0,0 +1,293 @@
|
||||
### psi specific - select compiler
|
||||
#source <this_autogen_file> <facility> <target_language>
|
||||
#<facility = sls sls2 sf> default is sf
|
||||
#<target_language = cpp matlab python>
|
||||
module unload gcc
|
||||
module load gcc/9.3.0
|
||||
### psi specific - end
|
||||
|
||||
rm -f configure.ac
|
||||
ln -s configurePSI.ac configure.ac
|
||||
|
||||
rm -f ./aclocal.m4
|
||||
rm -rf ./autom4te.cache
|
||||
aclocal --force -I m4
|
||||
/opt/gfa/python-3.7/latest/bin/libtoolize --force --copy #select libtools 2.4.6
|
||||
autoconf --force #interprets configure.ac
|
||||
autoheader --force
|
||||
automake --force --add-missing --copy
|
||||
#autoreconf not wanted
|
||||
|
||||
#Check what the EPICS RELEASE IS from ${EPICS}/base
|
||||
#Used by ./configure
|
||||
#Assumes format ${EPICS}/base-3.14.12
|
||||
#source cafeVersion-gcc-7.3.0
|
||||
CAFE_V="cafe-1.14.4"
|
||||
#For later check of existence of HOST_ARCH for $EPICS/include/os/$HOST_ARCH
|
||||
#Assume Linux but check if Darwin
|
||||
CAFE_HOST_FLAG_DARWIN=$(echo ${EPICS_HOST_ARCH} | grep -c "Darwin")
|
||||
export CAFE_HOST_FLAG_DARWIN=$CAFE_HOST_FLAG_DARWIN
|
||||
|
||||
RETURN_ON_WRONG_INPUT=true
|
||||
RETURN_FLAG=false
|
||||
|
||||
EPICS_BASE=$(readlink ${EPICS}/base)
|
||||
#EB=$(readlink /afs/psi.ch/project/cafe/gitworkspace/CAFE/cpp/base)
|
||||
echo $EPICS_BASE
|
||||
if [ -z "$EPICS_BASE" ]
|
||||
then
|
||||
EPICS_BASE='base-7' #7.0 = 7+0 = 7 for major release
|
||||
fi
|
||||
|
||||
echo 'input' "$0" "$1" "$2"
|
||||
echo $EPICS_BASE
|
||||
|
||||
FACILITY=$(echo "$1" | tr '[:upper:]' '[:lower:]')
|
||||
CACLIENT=$(echo "$2" | tr '[:upper:]' '[:lower:]')
|
||||
|
||||
FACILITY_DEFAULT="sf"
|
||||
CACLIENT_DEFAULT="python"
|
||||
|
||||
FACILITY_TEMP=""
|
||||
CACLIENT_TEMP=""
|
||||
|
||||
echo 'input arg. facility/target' $FACILITY $CACLIENT
|
||||
|
||||
if [ -n "$FACILITY" ]
|
||||
then
|
||||
if [ "$FACILITY" = "matlab" ] || [ "$FACILITY" = "python" ] || \
|
||||
[ "$FACILITY" = "py310" ] || [ "$FACILITY" = "py38" ] || \
|
||||
[ "$FACILITY" = "py37" ] || [ "$FACILITY" = "py35" ] || \
|
||||
[ "$FACILITY" = "julia" ] || [ "$FACILITY" = "cpp" ] || \
|
||||
[ "$FACILITY" = "cc" ]
|
||||
then
|
||||
CACLIENT_TEMP=$FACILITY
|
||||
FACILITY_TEMP=$2
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -n "$CACLIENT" ]
|
||||
then
|
||||
if [ "$CACLIENT" = "sls" ] || [ "$CACLIENT" = "sls2" ] || \
|
||||
[ "$CACLIENT" = "sf" ] || [ "$CACLIENT" = "swissfel" ] || \
|
||||
[ "$CACLIENT" = "sfel" ] || [ "$CACLIENT" = "hipa" ]
|
||||
then
|
||||
if [ -z $FACILITY_TEMP ]
|
||||
then
|
||||
FACILITY_TEMP=$CACLIENT
|
||||
CACLIENT_TEMP=$1
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
|
||||
if [ -z "$FACILITY" ]
|
||||
then
|
||||
FACILITY="sf"
|
||||
echo "FACILITY = " $FACILITY
|
||||
if [ -z $CACLIENT ]
|
||||
then
|
||||
CACLIENT=$CACLIENT_DEFAULT
|
||||
fi
|
||||
elif [ "$FACILITY" = "sls" ] || [ "$FACILITY" = "sls2" ] || \
|
||||
[ "$FACILITY" = "sf" ] || [ "$FACILITY" = "swissfel" ] || \
|
||||
[ "$FACILITY" = "sfel" ] || [ "$FACILITY" = "hipa" ]
|
||||
then
|
||||
echo "FACILITY = " $FACILITY
|
||||
elif [ -n "$FACILITY_TEMP" ]
|
||||
then
|
||||
if [ "$FACILITY_TEMP" = "sls" ] || [ "$FACILITY_TEMP" = "sls2" ] || \
|
||||
[ "$FACILITY_TEMP" = "sf" ] || [ "$FACILITY_TEMP" = "swissfel" ] || \
|
||||
[ "$FACILITY_TEMP" = "sfel" ] || [ "$FACILITY_TEMP" = "hipa" ]
|
||||
then
|
||||
|
||||
|
||||
FACILITY=$FACILITY_TEMP
|
||||
else
|
||||
if [ -n "$2" ]
|
||||
then
|
||||
echo "***UNRECOGNIZED INPUT FACILITY***" $FACILITY
|
||||
echo "***VALID VALUES ARE: sls sls2 sf hipa"
|
||||
RETURN_FLAG=true
|
||||
fi
|
||||
echo "***OTHERWISE THE DEFAULT FACILITY IS:" $FACILITY_DEFAULT
|
||||
FACILITY=$FACILITY_DEFAULT
|
||||
fi
|
||||
else
|
||||
echo "***UNRECOGNIZED INPUT FACILITY***" $FACILITY
|
||||
echo "***VALID VALUES ARE: sls sls2 sf hipa"
|
||||
RETURN_FLAG=true
|
||||
echo "***OTHERWISE THE DEFAULT FACILITY IS: " $FACILITY_DEFAULT
|
||||
FACILITY=$FACILITY_DEFAULT
|
||||
fi
|
||||
|
||||
if [ -n "$CACLIENT" ]
|
||||
then
|
||||
if [ "$CACLIENT" = "matlab" ] || [ "$CACLIENT" = "python" ] || \
|
||||
[ "$CACLIENT" = "py310" ] || [ "$CACLIENT" = "py38" ] || \
|
||||
[ "$CACLIENT" = "py37" ] || [ "$CACLIENT" = "py35" ] || \
|
||||
[ "$CACLIENT" = "julia" ] || [ "$CACLIENT" = "cpp" ] || \
|
||||
[ "$CACLIENT" = "cc" ]
|
||||
then
|
||||
echo "CA TARGET = " $CACLIENT
|
||||
else
|
||||
if [ -n "$CACLIENT_TEMP" ]
|
||||
then
|
||||
if [ "$CACLIENT_TEMP" = "matlab" ] || [ "$CACLIENT_TEMP" = "python" ] || \
|
||||
[ "$CACLIENT_TEMP" = "py310" ] || [ "$CACLIENT_TEMP" = "py38" ] || \
|
||||
[ "$CACLIENT_TEMP" = "py37" ] || [ "$CACLIENT_TEMP" = "py35" ] || \
|
||||
[ "$CACLIENT_TEMP" = "julia" ] || [ "$CACLIENT_TEMP" = "cpp" ] || \
|
||||
[ "$CACLIENT_TEMP" = "cc" ]
|
||||
then
|
||||
CACLIENT=$CACLIENT_TEMP
|
||||
else
|
||||
echo "***UNRECOGNIZED INPUT CA TARGET***" $CACLIENT
|
||||
echo "***VALID VALUES ARE: cpp matlab python"
|
||||
RETURN_FLAG=true
|
||||
echo "***OTHERWISE THE DEFAULT CA TARGET IS:" $CACLIENT_DEFAULT
|
||||
CACLIENT=$CACLIENT_DEFAULT
|
||||
fi
|
||||
else
|
||||
echo "***UNRECOGNIZED INPUT CA TARGET***" $CACLIENT
|
||||
echo "***VALID VALUES ARE: cpp matlab python"
|
||||
RETURN_FLAG=true
|
||||
echo "***OTHERWISE THE DEFAULT CA TARGET IS:" $CACLIENT_DEFAULT
|
||||
CACLIENT=$CACLIENT_DEFAULT
|
||||
fi
|
||||
fi
|
||||
else
|
||||
CACLIENT=$CACLIENT_DEFAULT
|
||||
fi
|
||||
|
||||
|
||||
|
||||
if [ $RETURN_ON_WRONG_INPUT = true ] ; then
|
||||
if [ $RETURN_FLAG = true ] ; then
|
||||
return 1 2>/dev/null
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
echo "FACILITY SELECTED = " $FACILITY
|
||||
echo "CA TARGET SELECTED = " $CACLIENT
|
||||
|
||||
ENABLE_OPTIONS="--enable-boost-inc"
|
||||
|
||||
if [ "$FACILITY" = "sfel" ] || [ "$FACILITY" = "swissfel" ]
|
||||
then
|
||||
FACILITY="sf"
|
||||
fi
|
||||
|
||||
if [ "$CACLIENT" = "python" ] || [ "$CACLIENT" = "julia" ]
|
||||
then
|
||||
CACLIENT="py37"
|
||||
fi
|
||||
|
||||
|
||||
if [ "$FACILITY" = "sls2" ]
|
||||
then
|
||||
ENABLE_OPTIONS+=" --enable-epics7"
|
||||
CAFE_V+="-sls2"
|
||||
else
|
||||
ENABLE_OPTIONS+=" --enable-epics3"
|
||||
if [ "$FACILITY" = "sf" ] && [ "$CACLIENT" != "matlab" ]
|
||||
then
|
||||
CAFE_V+="-sf"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ "$CACLIENT" = "py35" ]
|
||||
then
|
||||
ENABLE_OPTIONS+=" --enable-python35"
|
||||
ENABLE_OPTIONS+=" --enable-qt4"
|
||||
CAFE_V+="-py35"
|
||||
elif [ "$CACLIENT" = "py37" ]
|
||||
then
|
||||
ENABLE_OPTIONS+=" --enable-python37"
|
||||
ENABLE_OPTIONS+=" --enable-qt5"
|
||||
CAFE_V+="-py37"
|
||||
elif [ "$CACLIENT" = "py38" ]
|
||||
then
|
||||
ENABLE_OPTIONS+=" --enable-python38"
|
||||
ENABLE_OPTIONS+=" --enable-qt5py38"
|
||||
CAFE_V+="-py38"
|
||||
elif [ "$CACLIENT" = "py310" ]
|
||||
then
|
||||
ENABLE_OPTIONS+=" --enable-python310"
|
||||
#ENABLE_OPTIONS+=" --enable-qt5py310"
|
||||
CAFE_V+="-py310"
|
||||
else
|
||||
ENABLE_OPTIONS+=" --enable-qt5"
|
||||
fi
|
||||
|
||||
if [ "$FACILITY" = "sf" ] && [ "$CACLIENT" != "matlab" ]
|
||||
then
|
||||
#rm -f src/PyCafe.cpp
|
||||
#ln -s PyCafe3.cpp src/PyCafe.cpp
|
||||
ENABLE_OPTIONS+=" --enable-json"
|
||||
ENABLE_OPTIONS+=" --enable-zeromq"
|
||||
ENABLE_OPTIONS+=" --enable-curl"
|
||||
ENABLE_OPTIONS+=" --enable-lz4"
|
||||
#else
|
||||
#rm -f src/PyCafe.cpp
|
||||
#ln -s PyCafe_sls.cpp src/PyCafe.cpp
|
||||
fi
|
||||
|
||||
CAFE_V+="-gcc-"$GCC_VERSION
|
||||
|
||||
echo "$CAFE_V"
|
||||
|
||||
#echo 'EPICS BASE IS='$EPICS_BASE
|
||||
#echo 'EPICS BASE DIR='${EPICS}/base-7.0.4.1
|
||||
|
||||
EB1=$(echo $EPICS_BASE | sed -e "s/[a-zA-Z]*-//g")
|
||||
EBMAJ=$(echo $EB1 | sed -e "s/[[:punct:]].*//g")
|
||||
EBMIN1=$(echo $EB1 | sed -e "s/^[[:digit:]]*[[:punct:]]//g")
|
||||
EBMIN=$(echo $EBMIN1 | sed -e "s/[[:punct:]][[:digit:]]*//g")
|
||||
EBPAT=$(echo $EB1 | sed -e "s/[[:digit:]]*[[:punct:]]//g")
|
||||
echo EPICS_MAJOR=$EBMAJ
|
||||
echo EPICS_MINOR=$EBMIN
|
||||
echo EPICS_PATCH=$EBPAT
|
||||
#echo $EBMIN1
|
||||
|
||||
export CAFE_EPICS_V_MAJOR=$EBMAJ
|
||||
export CAFE_EPICS_V_MINOR=$EBMIN
|
||||
export CAFE_EPICS_V_PATCH=$EBPAT
|
||||
|
||||
#ENABLE_OPTIONS+=" --enable-qt5"
|
||||
##ENABLE_OPTIONS+=" --enable-qt4"
|
||||
#ENABLE_OPTIONS+=" --enable-python37"
|
||||
##ENABLE_OPTIONS+=" --enable-python35"
|
||||
#ENABLE_OPTIONS+=" --enable-json"
|
||||
#ENABLE_OPTIONS+=" --enable-zeromq"
|
||||
#ENABLE_OPTIONS+=" --enable-curl"
|
||||
#ENABLE_OPTIONS+=" --enable-lz4"
|
||||
|
||||
echo 'ENABLE_OPTIONS='$ENABLE_OPTIONS
|
||||
|
||||
./configure \
|
||||
--prefix=/opt/gfa/cafe/cpp/${CAFE_V} \
|
||||
--libdir=/opt/gfa/cafe/cpp/${CAFE_V}/lib/${EPICS_HOST_ARCH} \
|
||||
${ENABLE_OPTIONS} \
|
||||
--with-boost-inc=/opt/gfa/cafe/boost/boost_1_61_0/include \
|
||||
--with-epics3=${EPICS}/base \
|
||||
--with-python310=/ioc/python/latest \
|
||||
--with-python38=/opt/gfa/python-3.8/latest \
|
||||
--with-python37=/opt/gfa/python-3.7/latest \
|
||||
--with-python35=/opt/gfa/python-3.5/latest \
|
||||
--with-qt5py310=/ioc/python/latest \
|
||||
--with-qt5py38=/opt/gfa/python-3.8/latest \
|
||||
--with-qt5=/opt/gfa/python-3.7/latest \
|
||||
--with-qt4=/opt/gfa/python-3.5/latest \
|
||||
--with-json=/opt/gfa/zmsglog/json/jsoncpp-src-0.6.0-rc2 \
|
||||
--with-zeromq=/opt/gfa/zmq/zeromq-4.2.3-gcc-6.3.0 \
|
||||
--with-curl=/opt/gfa/zmq/curl-7.55.1 \
|
||||
--with-lz4=/opt/gfa/zmq/lz4/lib \
|
||||
--with-epics7=${EPICS}/base-7.0.6
|
||||
unset CAFE_EPICS_V_PATCH
|
||||
unset CAFE_EPICS_V_MINOR
|
||||
unset CAFE_EPICS_V_MAJOR
|
||||
|
||||
unset CAFE_HOST_FLAG_DARWIN
|
||||
|
||||
286
autogen_psi.sh-
Normal file
286
autogen_psi.sh-
Normal file
@@ -0,0 +1,286 @@
|
||||
### psi specific - select compiler
|
||||
#source <this_autogen_file> <facility> <target_language>
|
||||
#<facility = sls sls2 sf> default is sf
|
||||
#<target_language = cpp matlab python>
|
||||
module unload gcc
|
||||
module load gcc/9.4.0
|
||||
### psi specific - end
|
||||
|
||||
rm -f configure.ac
|
||||
ln -s configurePSI.ac configure.ac
|
||||
|
||||
rm -f ./aclocal.m4
|
||||
rm -rf ./autom4te.cache
|
||||
aclocal --force -I m4
|
||||
/opt/gfa/python-3.7/latest/bin/libtoolize --force --copy #select libtools 2.4.6
|
||||
autoconf --force #interprets configure.ac
|
||||
autoheader --force
|
||||
automake --force --add-missing --copy
|
||||
#autoreconf not wanted
|
||||
|
||||
#Check what the EPICS RELEASE IS from ${EPICS}/base
|
||||
#Used by ./configure
|
||||
#Assumes format ${EPICS}/base-3.14.12
|
||||
#source cafeVersion-gcc-7.3.0
|
||||
CAFE_V="cafe-1.14.4"
|
||||
#For later check of existence of HOST_ARCH for $EPICS/include/os/$HOST_ARCH
|
||||
#Assume Linux but check if Darwin
|
||||
CAFE_HOST_FLAG_DARWIN=$(echo ${EPICS_HOST_ARCH} | grep -c "Darwin")
|
||||
export CAFE_HOST_FLAG_DARWIN=$CAFE_HOST_FLAG_DARWIN
|
||||
|
||||
RETURN_ON_WRONG_INPUT=true
|
||||
RETURN_FLAG=false
|
||||
|
||||
EPICS_BASE=$(readlink ${EPICS}/base)
|
||||
#EB=$(readlink /afs/psi.ch/project/cafe/gitworkspace/CAFE/cpp/base)
|
||||
echo $EPICS_BASE
|
||||
if [ -z "$EPICS_BASE" ]
|
||||
then
|
||||
EPICS_BASE='base-7' #7.0 = 7+0 = 7 for major release
|
||||
fi
|
||||
|
||||
echo 'input' "$0" "$1" "$2"
|
||||
echo $EPICS_BASE
|
||||
|
||||
FACILITY=$(echo "$1" | tr '[:upper:]' '[:lower:]')
|
||||
CACLIENT=$(echo "$2" | tr '[:upper:]' '[:lower:]')
|
||||
|
||||
FACILITY_DEFAULT="sf"
|
||||
CACLIENT_DEFAULT="python"
|
||||
|
||||
FACILITY_TEMP=""
|
||||
CACLIENT_TEMP=""
|
||||
|
||||
echo 'input arg. facility/target' $FACILITY $CACLIENT
|
||||
|
||||
if [ -n "$FACILITY" ]
|
||||
then
|
||||
if [ "$FACILITY" = "matlab" ] || [ "$FACILITY" = "python" ] || \
|
||||
[ "$FACILITY" = "py38" ] ||
|
||||
[ "$FACILITY" = "py37" ] || [ "$FACILITY" = "py35" ] || \
|
||||
[ "$FACILITY" = "julia" ] || [ "$FACILITY" = "cpp" ] || \
|
||||
[ "$FACILITY" = "cc" ]
|
||||
then
|
||||
CACLIENT_TEMP=$FACILITY
|
||||
FACILITY_TEMP=$2
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -n "$CACLIENT" ]
|
||||
then
|
||||
if [ "$CACLIENT" = "sls" ] || [ "$CACLIENT" = "sls2" ] || \
|
||||
[ "$CACLIENT" = "sf" ] || [ "$CACLIENT" = "swissfel" ] || \
|
||||
[ "$CACLIENT" = "sfel" ] || [ "$CACLIENT" = "hipa" ]
|
||||
then
|
||||
if [ -z $FACILITY_TEMP ]
|
||||
then
|
||||
FACILITY_TEMP=$CACLIENT
|
||||
CACLIENT_TEMP=$1
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
|
||||
if [ -z "$FACILITY" ]
|
||||
then
|
||||
FACILITY="sf"
|
||||
echo "FACILITY = " $FACILITY
|
||||
if [ -z $CACLIENT ]
|
||||
then
|
||||
CACLIENT=$CACLIENT_DEFAULT
|
||||
fi
|
||||
elif [ "$FACILITY" = "sls" ] || [ "$FACILITY" = "sls2" ] || \
|
||||
[ "$FACILITY" = "sf" ] || [ "$FACILITY" = "swissfel" ] || \
|
||||
[ "$FACILITY" = "sfel" ] || [ "$FACILITY" = "hipa" ]
|
||||
then
|
||||
echo "FACILITY = " $FACILITY
|
||||
elif [ -n "$FACILITY_TEMP" ]
|
||||
then
|
||||
if [ "$FACILITY_TEMP" = "sls" ] || [ "$FACILITY_TEMP" = "sls2" ] || \
|
||||
[ "$FACILITY_TEMP" = "sf" ] || [ "$FACILITY_TEMP" = "swissfel" ] || \
|
||||
[ "$FACILITY_TEMP" = "sfel" ] || [ "$FACILITY_TEMP" = "hipa" ]
|
||||
then
|
||||
|
||||
|
||||
FACILITY=$FACILITY_TEMP
|
||||
else
|
||||
if [ -n "$2" ]
|
||||
then
|
||||
echo "***UNRECOGNIZED INPUT FACILITY***" $FACILITY
|
||||
echo "***VALID VALUES ARE: sls sls2 sf hipa"
|
||||
RETURN_FLAG=true
|
||||
fi
|
||||
echo "***OTHERWISE THE DEFAULT FACILITY IS:" $FACILITY_DEFAULT
|
||||
FACILITY=$FACILITY_DEFAULT
|
||||
fi
|
||||
else
|
||||
echo "***UNRECOGNIZED INPUT FACILITY***" $FACILITY
|
||||
echo "***VALID VALUES ARE: sls sls2 sf hipa"
|
||||
RETURN_FLAG=true
|
||||
echo "***OTHERWISE THE DEFAULT FACILITY IS: " $FACILITY_DEFAULT
|
||||
FACILITY=$FACILITY_DEFAULT
|
||||
fi
|
||||
|
||||
if [ -n "$CACLIENT" ]
|
||||
then
|
||||
if [ "$CACLIENT" = "matlab" ] || [ "$CACLIENT" = "python" ] || \
|
||||
[ "$CACLIENT" = "py38" ] || \
|
||||
[ "$CACLIENT" = "py37" ] || [ "$CACLIENT" = "py35" ] || \
|
||||
[ "$CACLIENT" = "julia" ] || [ "$CACLIENT" = "cpp" ] || \
|
||||
[ "$CACLIENT" = "cc" ]
|
||||
then
|
||||
echo "CA TARGET = " $CACLIENT
|
||||
else
|
||||
if [ -n "$CACLIENT_TEMP" ]
|
||||
then
|
||||
if [ "$CACLIENT_TEMP" = "matlab" ] || [ "$CACLIENT_TEMP" = "python" ] || \
|
||||
[ "$CACLIENT_TEMP" = "py38" ] || \
|
||||
[ "$CACLIENT_TEMP" = "py37" ] || [ "$CACLIENT_TEMP" = "py35" ] || \
|
||||
[ "$CACLIENT_TEMP" = "julia" ] || [ "$CACLIENT_TEMP" = "cpp" ] || \
|
||||
[ "$CACLIENT_TEMP" = "cc" ]
|
||||
then
|
||||
CACLIENT=$CACLIENT_TEMP
|
||||
else
|
||||
echo "***UNRECOGNIZED INPUT CA TARGET***" $CACLIENT
|
||||
echo "***VALID VALUES ARE: cpp matlab python"
|
||||
RETURN_FLAG=true
|
||||
echo "***OTHERWISE THE DEFAULT CA TARGET IS:" $CACLIENT_DEFAULT
|
||||
CACLIENT=$CACLIENT_DEFAULT
|
||||
fi
|
||||
else
|
||||
echo "***UNRECOGNIZED INPUT CA TARGET***" $CACLIENT
|
||||
echo "***VALID VALUES ARE: cpp matlab python"
|
||||
RETURN_FLAG=true
|
||||
echo "***OTHERWISE THE DEFAULT CA TARGET IS:" $CACLIENT_DEFAULT
|
||||
CACLIENT=$CACLIENT_DEFAULT
|
||||
fi
|
||||
fi
|
||||
else
|
||||
CACLIENT=$CACLIENT_DEFAULT
|
||||
fi
|
||||
|
||||
|
||||
|
||||
if [ $RETURN_ON_WRONG_INPUT = true ] ; then
|
||||
if [ $RETURN_FLAG = true ] ; then
|
||||
return 1 2>/dev/null
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
echo "FACILITY SELECTED = " $FACILITY
|
||||
echo "CA TARGET SELECTED = " $CACLIENT
|
||||
|
||||
ENABLE_OPTIONS="--enable-boost-inc"
|
||||
|
||||
if [ "$FACILITY" = "sfel" ] || [ "$FACILITY" = "swissfel" ]
|
||||
then
|
||||
FACILITY="sf"
|
||||
fi
|
||||
|
||||
if [ "$CACLIENT" = "python" ] || [ "$CACLIENT" = "julia" ]
|
||||
then
|
||||
CACLIENT="py37"
|
||||
fi
|
||||
|
||||
|
||||
if [ "$FACILITY" = "sls2" ]
|
||||
then
|
||||
ENABLE_OPTIONS+=" --enable-epics7"
|
||||
CAFE_V+="-sls2"
|
||||
else
|
||||
ENABLE_OPTIONS+=" --enable-epics3"
|
||||
if [ "$FACILITY" = "sf" ] && [ "$CACLIENT" != "matlab" ]
|
||||
then
|
||||
CAFE_V+="-sf"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ "$CACLIENT" = "py35" ]
|
||||
then
|
||||
ENABLE_OPTIONS+=" --enable-python35"
|
||||
ENABLE_OPTIONS+=" --enable-qt4"
|
||||
CAFE_V+="-py35"
|
||||
elif [ "$CACLIENT" = "py37" ]
|
||||
then
|
||||
ENABLE_OPTIONS+=" --enable-python37"
|
||||
ENABLE_OPTIONS+=" --enable-qt5"
|
||||
CAFE_V+="-py37"
|
||||
elif [ "$CACLIENT" = "py38" ]
|
||||
then
|
||||
ENABLE_OPTIONS+=" --enable-python38"
|
||||
ENABLE_OPTIONS+=" --enable-qt5py38"
|
||||
CAFE_V+="-py38"
|
||||
else
|
||||
ENABLE_OPTIONS+=" --enable-qt5"
|
||||
fi
|
||||
|
||||
if [ "$FACILITY" = "sf" ] && [ "$CACLIENT" != "matlab" ]
|
||||
then
|
||||
#rm -f src/PyCafe.cpp
|
||||
#ln -s PyCafe3.cpp src/PyCafe.cpp
|
||||
ENABLE_OPTIONS+=" --enable-json"
|
||||
ENABLE_OPTIONS+=" --enable-zeromq"
|
||||
ENABLE_OPTIONS+=" --enable-curl"
|
||||
ENABLE_OPTIONS+=" --enable-lz4"
|
||||
#else
|
||||
#rm -f src/PyCafe.cpp
|
||||
#ln -s PyCafe_sls.cpp src/PyCafe.cpp
|
||||
fi
|
||||
|
||||
CAFE_V+="-gcc-"$GCC_VERSION
|
||||
|
||||
echo "$CAFE_V"
|
||||
|
||||
#echo 'EPICS BASE IS='$EPICS_BASE
|
||||
#echo 'EPICS BASE DIR='${EPICS}/base-7.0.4.1
|
||||
|
||||
EB1=$(echo $EPICS_BASE | sed -e "s/[a-zA-Z]*-//g")
|
||||
EBMAJ=$(echo $EB1 | sed -e "s/[[:punct:]].*//g")
|
||||
EBMIN1=$(echo $EB1 | sed -e "s/^[[:digit:]]*[[:punct:]]//g")
|
||||
EBMIN=$(echo $EBMIN1 | sed -e "s/[[:punct:]][[:digit:]]*//g")
|
||||
EBPAT=$(echo $EB1 | sed -e "s/[[:digit:]]*[[:punct:]]//g")
|
||||
echo EPICS_MAJOR=$EBMAJ
|
||||
echo EPICS_MINOR=$EBMIN
|
||||
echo EPICS_PATCH=$EBPAT
|
||||
#echo $EBMIN1
|
||||
|
||||
export CAFE_EPICS_V_MAJOR=$EBMAJ
|
||||
export CAFE_EPICS_V_MINOR=$EBMIN
|
||||
export CAFE_EPICS_V_PATCH=$EBPAT
|
||||
|
||||
#ENABLE_OPTIONS+=" --enable-qt5"
|
||||
##ENABLE_OPTIONS+=" --enable-qt4"
|
||||
#ENABLE_OPTIONS+=" --enable-python37"
|
||||
##ENABLE_OPTIONS+=" --enable-python35"
|
||||
#ENABLE_OPTIONS+=" --enable-json"
|
||||
#ENABLE_OPTIONS+=" --enable-zeromq"
|
||||
#ENABLE_OPTIONS+=" --enable-curl"
|
||||
#ENABLE_OPTIONS+=" --enable-lz4"
|
||||
|
||||
echo 'ENABLE_OPTIONS='$ENABLE_OPTIONS
|
||||
|
||||
./configure \
|
||||
--prefix=/opt/gfa/cafe/cpp/${CAFE_V} \
|
||||
--libdir=/opt/gfa/cafe/cpp/${CAFE_V}/lib/${EPICS_HOST_ARCH} \
|
||||
${ENABLE_OPTIONS} \
|
||||
--with-boost-inc=/opt/gfa/cafe/boost/boost_1_61_0/include \
|
||||
--with-epics3=${EPICS}/base \
|
||||
--with-python38=/opt/gfa/python-3.8/latest \
|
||||
--with-python37=/opt/gfa/python-3.7/latest \
|
||||
--with-python35=/opt/gfa/python-3.5/latest \
|
||||
--with-qt5py38=/opt/gfa/python-3.8/latest \
|
||||
--with-qt5=/opt/gfa/python-3.7/latest \
|
||||
--with-qt4=/opt/gfa/python-3.5/latest \
|
||||
--with-json=/opt/gfa/zmsglog/json/jsoncpp-src-0.6.0-rc2 \
|
||||
--with-zeromq=/opt/gfa/zmq/zeromq-4.2.3-gcc-6.3.0 \
|
||||
--with-curl=/opt/gfa/zmq/curl-7.55.1 \
|
||||
--with-lz4=/opt/gfa/zmq/lz4/lib \
|
||||
--with-epics7=${EPICS}/base-7.0.6
|
||||
unset CAFE_EPICS_V_PATCH
|
||||
unset CAFE_EPICS_V_MINOR
|
||||
unset CAFE_EPICS_V_MAJOR
|
||||
|
||||
unset CAFE_HOST_FLAG_DARWIN
|
||||
|
||||
@@ -1,46 +0,0 @@
|
||||
aclocal --force -I m4
|
||||
libtoolize --force --copy
|
||||
autoconf --force
|
||||
autoheader --force
|
||||
automake --force --add-missing --copy
|
||||
autoreconf
|
||||
|
||||
#Check what the EPICS RELEASE IS from ${EPICS}/base
|
||||
#Used by ./configure
|
||||
#Assumes format ${EPICS}/base-3.14.12
|
||||
|
||||
|
||||
EB=$(readlink ${EPICS}/base)
|
||||
echo 'EPICS BASE IS=' $EB
|
||||
EB1=$(echo $EB | sed -e "s/[a-zA-Z]*-//g")
|
||||
EBMAJ=$(echo $EB1 | sed -e "s/[[:punct:]].*//g")
|
||||
EBMIN1=$(echo $EB1 | sed -e "s/^[[:digit:]]*[[:punct:]]//g")
|
||||
EBMIN=$(echo $EBMIN1 | sed -e "s/[[:punct:]][[:digit:]]*//g")
|
||||
EBPAT=$(echo $EB1 | sed -e "s/[[:digit:]]*[[:punct:]]//g")
|
||||
echo EPICS_MAJOR=$EBMAJ
|
||||
echo EPICS_MINOR=$EBMIN
|
||||
echo EPICS_PATCH=$EBPAT
|
||||
|
||||
export CAFE_EPICS_V_MAJOR=$EBMAJ
|
||||
export CAFE_EPICS_V_MINOR=$EBMIN
|
||||
export CAFE_EPICS_V_PATCH=$EBPAT
|
||||
|
||||
CAFE_VERSION=cafe-1.8.0-gcc-6.3.0
|
||||
|
||||
./configure \
|
||||
--prefix=/opt/gfa/cafe/cpp/${CAFE_VERSION} \
|
||||
--libdir=/opt/gfa/cafe/cpp/${CAFE_VERSION}/lib \
|
||||
--enable-boost-inc --with-boost-inc=/opt/gfa/cafe/boost/boost_1_61_0/include \
|
||||
--enable-epics --with-epics=${EPICS}/base \
|
||||
--enable-qt4-lib --with-qt4-lib=/usr/lib64 \
|
||||
--enable-qt4-inc --with-qt4-inc=/usr/include
|
||||
# --enable-boost-lib --with-boost-lib=/opt/gfa/cafe/boost/boost_1_61_0/lib
|
||||
|
||||
unset CAFE_EPICS_V_MAJOR
|
||||
unset CAFE_EPICS_V_MINOR
|
||||
unset CAFE_EPICS_V_PATCH
|
||||
|
||||
cp include/config.h include/os/Linux/cafe/config.h
|
||||
|
||||
|
||||
|
||||
@@ -1,47 +0,0 @@
|
||||
rm -f configure.ac
|
||||
ln -s configureCafe.ac configure.ac
|
||||
|
||||
aclocal --force -I m4
|
||||
libtoolize --force --copy
|
||||
autoconf --force
|
||||
autoheader --force
|
||||
automake --force --add-missing --copy
|
||||
autoreconf
|
||||
|
||||
#Check what the EPICS RELEASE IS from ${EPICS}/base
|
||||
#Used by ./configure
|
||||
#Assumes format ${EPICS}/base-3.14.12
|
||||
|
||||
|
||||
EB=$(readlink ${EPICS}/base)
|
||||
echo 'EPICS BASE IS=' $EB
|
||||
EB1=$(echo $EB | sed -e "s/[a-zA-Z]*-//g")
|
||||
EBMAJ=$(echo $EB1 | sed -e "s/[[:punct:]].*//g")
|
||||
EBMIN1=$(echo $EB1 | sed -e "s/^[[:digit:]]*[[:punct:]]//g")
|
||||
EBMIN=$(echo $EBMIN1 | sed -e "s/[[:punct:]][[:digit:]]*//g")
|
||||
EBPAT=$(echo $EB1 | sed -e "s/[[:digit:]]*[[:punct:]]//g")
|
||||
echo EPICS_MAJOR=$EBMAJ
|
||||
echo EPICS_MINOR=$EBMIN
|
||||
echo EPICS_PATCH=$EBPAT
|
||||
|
||||
export CAFE_EPICS_V_MAJOR=$EBMAJ
|
||||
export CAFE_EPICS_V_MINOR=$EBMIN
|
||||
export CAFE_EPICS_V_PATCH=$EBPAT
|
||||
|
||||
|
||||
CAFE_VERSION=cafe-noqt-1.12.5-gcc-6.3.0
|
||||
|
||||
|
||||
./configure \
|
||||
--prefix=/opt/gfa/cafe/cpp/${CAFE_VERSION} \
|
||||
--libdir=/opt/gfa/cafe/cpp/${CAFE_VERSION}/lib \
|
||||
--enable-boost-inc --with-boost-inc=/opt/gfa/cafe/boost/boost_1_61_0/include \
|
||||
--enable-epics --with-epics=${EPICS}/base
|
||||
|
||||
|
||||
|
||||
unset CAFE_EPICS_V_MAJOR
|
||||
unset CAFE_EPICS_V_MINOR
|
||||
unset CAFE_EPICS_V_PATCH
|
||||
|
||||
cp include/config.h include/os/Linux/cafe-noqt/config.h
|
||||
@@ -1,58 +0,0 @@
|
||||
rm -f configure.ac
|
||||
ln -s configurezbspy37.ac configure.a
|
||||
|
||||
source usePy3
|
||||
aclocal --force -I m4
|
||||
libtoolize --force --copy
|
||||
autoconf --force
|
||||
autoheader --force
|
||||
automake --force --add-missing --copy
|
||||
autoreconf
|
||||
|
||||
#Check what the EPICS RELEASE IS from ${EPICS}/base
|
||||
#Used by ./configure
|
||||
#Assumes format ${EPICS}/base-3.14.12
|
||||
|
||||
|
||||
EB=$(readlink ${EPICS}/base)
|
||||
echo 'EPICS BASE IS=' $EB
|
||||
EB1=$(echo $EB | sed -e "s/[a-zA-Z]*-//g")
|
||||
EBMAJ=$(echo $EB1 | sed -e "s/[[:punct:]].*//g")
|
||||
EBMIN1=$(echo $EB1 | sed -e "s/^[[:digit:]]*[[:punct:]]//g")
|
||||
EBMIN=$(echo $EBMIN1 | sed -e "s/[[:punct:]][[:digit:]]*//g")
|
||||
EBPAT=$(echo $EB1 | sed -e "s/[[:digit:]]*[[:punct:]]//g")
|
||||
echo EPICS_MAJOR=$EBMAJ
|
||||
echo EPICS_MINOR=$EBMIN
|
||||
echo EPICS_PATCH=$EBPAT
|
||||
|
||||
export CAFE_EPICS_V_MAJOR=$EBMAJ
|
||||
export CAFE_EPICS_V_MINOR=$EBMIN
|
||||
export CAFE_EPICS_V_PATCH=$EBPAT
|
||||
|
||||
|
||||
CYCAFE_VERSION=pycafe-1.12.5
|
||||
|
||||
./configure \
|
||||
--prefix=/opt/gfa/cafe/python/python-3.7/${CYCAFE_VERSION}/ \
|
||||
--libdir=/opt/gfa/cafe/python/python-3.7/${CYCAFE_VERSION}/lib \
|
||||
--enable-boost-inc --with-boost-inc=/opt/gfa/cafe/boost/boost_1_61_0/include \
|
||||
--enable-epics --with-epics=${EPICS}/base \
|
||||
--enable-qt5-lib --with-qt5-lib=/opt/gfa/python-3.7/latest/lib \
|
||||
--enable-qt5-inc --with-qt5-inc=/opt/gfa/python-3.7/latest/include/qt \
|
||||
--enable-python-inc --with-python-inc=/opt/gfa/python-3.7/latest/include/python3.7m \
|
||||
--enable-python-lib --with-python-lib=/opt/gfa/python-3.7/latest/lib \
|
||||
--enable-zeromq-inc --with-zeromq-inc=/opt/gfa/zmq/zeromq-4.2.3-gcc-6.3.0/include \
|
||||
--enable-zeromq-lib --with-zeromq-lib=/opt/gfa/zmq/zeromq-4.2.3-gcc-6.3.0/lib \
|
||||
--enable-json-inc --with-json-inc=/opt/gfa/zmsglog/json/jsoncpp-src-0.6.0-rc2/include \
|
||||
--enable-json-lib --with-json-lib=/opt/gfa/zmsglog/json/jsoncpp-src-0.6.0-rc2/libs/linux-gcc-6.3.0 \
|
||||
--enable-curl-inc --with-curl-inc=/opt/gfa/zmq/curl-7.55.1/include \
|
||||
--enable-curl-lib --with-curl-lib=/opt/gfa/zmq/curl-7.55.1/lib/.libs \
|
||||
--enable-lz4-inc --with-lz4-inc=/opt/gfa/zmq/lz4/lib \
|
||||
--enable-lz4-lib --with-lz4-lib=/opt/gfa/zmq/lz4/lib
|
||||
|
||||
unset CAFE_EPICS_V_MAJOR
|
||||
unset CAFE_EPICS_V_MINOR
|
||||
unset CAFE_EPICS_V_PATCH
|
||||
|
||||
cp include/config.h include/os/Linux/pycafe37/config.h
|
||||
|
||||
@@ -1,48 +0,0 @@
|
||||
rm -f configure.ac
|
||||
ln -s configurezbspy37.ac configure.ac
|
||||
|
||||
source usePy3
|
||||
aclocal --force -I m4
|
||||
libtoolize --force --copy
|
||||
autoconf --force
|
||||
autoheader --force
|
||||
automake --force --add-missing --copy
|
||||
autoreconf
|
||||
|
||||
#Check what the EPICS RELEASE IS from ${EPICS}/base
|
||||
#Used by ./configure
|
||||
#Assumes format ${EPICS}/base-3.14.12
|
||||
|
||||
|
||||
EB=$(readlink ${EPICS}/base)
|
||||
echo 'EPICS BASE IS=' $EB
|
||||
EB1=$(echo $EB | sed -e "s/[a-zA-Z]*-//g")
|
||||
EBMAJ=$(echo $EB1 | sed -e "s/[[:punct:]].*//g")
|
||||
EBMIN1=$(echo $EB1 | sed -e "s/^[[:digit:]]*[[:punct:]]//g")
|
||||
EBMIN=$(echo $EBMIN1 | sed -e "s/[[:punct:]][[:digit:]]*//g")
|
||||
EBPAT=$(echo $EB1 | sed -e "s/[[:digit:]]*[[:punct:]]//g")
|
||||
echo EPICS_MAJOR=$EBMAJ
|
||||
echo EPICS_MINOR=$EBMIN
|
||||
echo EPICS_PATCH=$EBPAT
|
||||
|
||||
export CAFE_EPICS_V_MAJOR=$EBMAJ
|
||||
export CAFE_EPICS_V_MINOR=$EBMIN
|
||||
export CAFE_EPICS_V_PATCH=$EBPAT
|
||||
|
||||
#--enable-boost --with-boost=/afs/psi.ch/intranet/Controls/BD/deps/boost_1_57_0 \
|
||||
CAFE_VERSION=cafe-1.12.5
|
||||
CYCAFE_VERSION=pycafe-noqt-1.12.5
|
||||
|
||||
./configure \
|
||||
--prefix=/opt/gfa/cafe/python/python-3.7/${CYCAFE_VERSION}/ \
|
||||
--libdir=/opt/gfa/cafe/python/python-3.7/${CYCAFE_VERSION}/lib \
|
||||
--enable-boost --with-boost=/opt/gfa/cafe/boost/boost_1_61_0 \
|
||||
--enable-epics --with-epics=${EPICS} \
|
||||
--enable-python-inc --with-python-inc=/opt/gfa/python-3.7/latest/include/python3.5m \
|
||||
--enable-python-lib --with-python-lib=/opt/gfa/python-3.57/latest/lib
|
||||
unset CAFE_EPICS_V_MAJOR
|
||||
unset CAFE_EPICS_V_MINOR
|
||||
unset CAFE_EPICS_V_PATCH
|
||||
|
||||
#--enable-qt4-lib --with-qt4-lib=/usr/lib64 \
|
||||
#--enable-qt4-inc --with-qt4-inc=/usr/include \
|
||||
277
autogen_slsbd.sh
Normal file
277
autogen_slsbd.sh
Normal file
@@ -0,0 +1,277 @@
|
||||
### psi specific - select compiler
|
||||
#source <this_autogen_file> <facility> <target_language>
|
||||
#<facility = sls sls2 sf> default is sf
|
||||
#<target_language = cpp matlab python>
|
||||
module unload gcc
|
||||
module load gcc/7.3.0
|
||||
### psi specific - end
|
||||
|
||||
rm -f configure.ac
|
||||
ln -s configurePSI.ac configure.ac
|
||||
|
||||
rm -f ./aclocal.m4
|
||||
rm -rf ./autom4te.cache
|
||||
aclocal --force -I m4
|
||||
/opt/gfa/python-3.7/latest/bin/libtoolize --force --copy #select libtools 2.4.6
|
||||
autoconf --force #interprets configure.ac
|
||||
autoheader --force
|
||||
automake --force --add-missing --copy
|
||||
#autoreconf not wanted
|
||||
|
||||
#Check what the EPICS RELEASE IS from ${EPICS}/base
|
||||
#Used by ./configure
|
||||
#Assumes format ${EPICS}/base-3.14.12
|
||||
#source cafeVersion-gcc-7.3.0
|
||||
CAFE_V="cafe-1.14.1"
|
||||
#For later check of existence of HOST_ARCH for $EPICS/include/os/$HOST_ARCH
|
||||
#Assume Linux but check if Darwin
|
||||
CAFE_HOST_FLAG_DARWIN=$(echo ${EPICS_HOST_ARCH} | grep -c "Darwin")
|
||||
export CAFE_HOST_FLAG_DARWIN=$CAFE_HOST_FLAG_DARWIN
|
||||
|
||||
RETURN_ON_WRONG_INPUT=true
|
||||
RETURN_FLAG=false
|
||||
|
||||
EPICS_BASE=$(readlink ${EPICS}/base)
|
||||
#EB=$(readlink /afs/psi.ch/project/cafe/gitworkspace/CAFE/cpp/base)
|
||||
echo $EPICS_BASE
|
||||
if [ -z "$EPICS_BASE" ]
|
||||
then
|
||||
EPICS_BASE='base-7.4.1' #7.0 = 7+0 = 7 for major release
|
||||
fi
|
||||
|
||||
echo 'input' "$0" "$1" "$2"
|
||||
echo $EPICS_BASE
|
||||
|
||||
FACILITY=$(echo "$1" | tr '[:upper:]' '[:lower:]')
|
||||
CACLIENT=$(echo "$2" | tr '[:upper:]' '[:lower:]')
|
||||
|
||||
FACILITY_DEFAULT="sf"
|
||||
CACLIENT_DEFAULT="python"
|
||||
|
||||
FACILITY_TEMP=""
|
||||
CACLIENT_TEMP=""
|
||||
|
||||
echo 'input arg. facility/target' $FACILITY $CACLIENT
|
||||
|
||||
if [ -n "$FACILITY" ]
|
||||
then
|
||||
if [ "$FACILITY" = "matlab" ] || [ "$FACILITY" = "python" ] || \
|
||||
[ "$FACILITY" = "py37" ] || [ "$FACILITY" = "py35" ] || \
|
||||
[ "$FACILITY" = "julia" ] || [ "$FACILITY" = "cpp" ] || \
|
||||
[ "$FACILITY" = "cc" ]
|
||||
then
|
||||
CACLIENT_TEMP=$FACILITY
|
||||
FACILITY_TEMP=$2
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -n "$CACLIENT" ]
|
||||
then
|
||||
if [ "$CACLIENT" = "sls" ] || [ "$CACLIENT" = "sls2" ] || \
|
||||
[ "$CACLIENT" = "sf" ] || [ "$CACLIENT" = "swissfel" ] || \
|
||||
[ "$CACLIENT" = "sfel" ] || [ "$CACLIENT" = "hipa" ]
|
||||
then
|
||||
if [ -z $FACILITY_TEMP ]
|
||||
then
|
||||
FACILITY_TEMP=$CACLIENT
|
||||
CACLIENT_TEMP=$1
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
|
||||
if [ -z "$FACILITY" ]
|
||||
then
|
||||
FACILITY="sf"
|
||||
echo "FACILITY = " $FACILITY
|
||||
if [ -z $CACLIENT ]
|
||||
then
|
||||
CACLIENT=$CACLIENT_DEFAULT
|
||||
fi
|
||||
elif [ "$FACILITY" = "sls" ] || [ "$FACILITY" = "sls2" ] || \
|
||||
[ "$FACILITY" = "sf" ] || [ "$FACILITY" = "swissfel" ] || \
|
||||
[ "$FACILITY" = "sfel" ] || [ "$FACILITY" = "hipa" ]
|
||||
then
|
||||
echo "FACILITY = " $FACILITY
|
||||
elif [ -n "$FACILITY_TEMP" ]
|
||||
then
|
||||
if [ "$FACILITY_TEMP" = "sls" ] || [ "$FACILITY_TEMP" = "sls2" ] || \
|
||||
[ "$FACILITY_TEMP" = "sf" ] || [ "$FACILITY_TEMP" = "swissfel" ] || \
|
||||
[ "$FACILITY_TEMP" = "sfel" ] || [ "$FACILITY_TEMP" = "hipa" ]
|
||||
then
|
||||
|
||||
|
||||
FACILITY=$FACILITY_TEMP
|
||||
else
|
||||
if [ -n "$2" ]
|
||||
then
|
||||
echo "***UNRECOGNIZED INPUT FACILITY***" $FACILITY
|
||||
echo "***VALID VALUES ARE: sls sls2 sf hipa"
|
||||
RETURN_FLAG=true
|
||||
fi
|
||||
echo "***OTHERWISE THE DEFAULT FACILITY IS:" $FACILITY_DEFAULT
|
||||
FACILITY=$FACILITY_DEFAULT
|
||||
fi
|
||||
else
|
||||
echo "***UNRECOGNIZED INPUT FACILITY***" $FACILITY
|
||||
echo "***VALID VALUES ARE: sls sls2 sf hipa"
|
||||
RETURN_FLAG=true
|
||||
echo "***OTHERWISE THE DEFAULT FACILITY IS: " $FACILITY_DEFAULT
|
||||
FACILITY=$FACILITY_DEFAULT
|
||||
fi
|
||||
|
||||
if [ -n "$CACLIENT" ]
|
||||
then
|
||||
if [ "$CACLIENT" = "matlab" ] || [ "$CACLIENT" = "python" ] || \
|
||||
[ "$CACLIENT" = "py37" ] || [ "$CACLIENT" = "py35" ] || \
|
||||
[ "$CACLIENT" = "julia" ] || [ "$CACLIENT" = "cpp" ] || \
|
||||
[ "$CACLIENT" = "cc" ]
|
||||
then
|
||||
echo "CA TARGET = " $CACLIENT
|
||||
else
|
||||
if [ -n "$CACLIENT_TEMP" ]
|
||||
then
|
||||
if [ "$CACLIENT_TEMP" = "matlab" ] || [ "$CACLIENT_TEMP" = "python" ] || \
|
||||
[ "$CACLIENT_TEMP" = "py37" ] || [ "$CACLIENT_TEMP" = "py35" ] || \
|
||||
[ "$CACLIENT_TEMP" = "julia" ] || [ "$CACLIENT_TEMP" = "cpp" ] || \
|
||||
[ "$CACLIENT_TEMP" = "cc" ]
|
||||
then
|
||||
CACLIENT=$CACLIENT_TEMP
|
||||
else
|
||||
echo "***UNRECOGNIZED INPUT CA TARGET***" $CACLIENT
|
||||
echo "***VALID VALUES ARE: cpp matlab python"
|
||||
RETURN_FLAG=true
|
||||
echo "***OTHERWISE THE DEFAULT CA TARGET IS:" $CACLIENT_DEFAULT
|
||||
CACLIENT=$CACLIENT_DEFAULT
|
||||
fi
|
||||
else
|
||||
echo "***UNRECOGNIZED INPUT CA TARGET***" $CACLIENT
|
||||
echo "***VALID VALUES ARE: cpp matlab python"
|
||||
RETURN_FLAG=true
|
||||
echo "***OTHERWISE THE DEFAULT CA TARGET IS:" $CACLIENT_DEFAULT
|
||||
CACLIENT=$CACLIENT_DEFAULT
|
||||
fi
|
||||
fi
|
||||
else
|
||||
CACLIENT=$CACLIENT_DEFAULT
|
||||
fi
|
||||
|
||||
|
||||
|
||||
if [ $RETURN_ON_WRONG_INPUT = true ] ; then
|
||||
if [ $RETURN_FLAG = true ] ; then
|
||||
return 1 2>/dev/null
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
echo "FACILITY SELECTED = " $FACILITY
|
||||
echo "CA TARGET SELECTED = " $CACLIENT
|
||||
|
||||
ENABLE_OPTIONS="--enable-boost-inc"
|
||||
|
||||
if [ "$FACILITY" = "sfel" ] || [ "$FACILITY" = "swissfel" ]
|
||||
then
|
||||
FACILITY="sf"
|
||||
fi
|
||||
|
||||
if [ "$CACLIENT" = "python" ] || [ "$CACLIENT" = "julia" ]
|
||||
then
|
||||
CACLIENT="py37"
|
||||
fi
|
||||
|
||||
|
||||
if [ "$FACILITY" = "sls2" ]
|
||||
then
|
||||
ENABLE_OPTIONS+=" --enable-epics7"
|
||||
CAFE_V+="-sls2"
|
||||
else
|
||||
ENABLE_OPTIONS+=" --enable-epics3"
|
||||
if [ "$FACILITY" = "sf" ] && [ "$CACLIENT" != "matlab" ]
|
||||
then
|
||||
CAFE_V+="-sf"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ "$CACLIENT" = "py35" ]
|
||||
then
|
||||
ENABLE_OPTIONS+=" --enable-python35"
|
||||
ENABLE_OPTIONS+=" --enable-qt4"
|
||||
CAFE_V+="-py35"
|
||||
elif [ "$CACLIENT" = "py37" ]
|
||||
then
|
||||
ENABLE_OPTIONS+=" --enable-python37"
|
||||
ENABLE_OPTIONS+=" --enable-qt5"
|
||||
CAFE_V+="-py37"
|
||||
#else
|
||||
#ENABLE_OPTIONS+=" --enable-qt5"
|
||||
fi
|
||||
|
||||
if [ "$FACILITY" = "sf" ] && [ "$CACLIENT" != "matlab" ]
|
||||
then
|
||||
#rm -f src/PyCafe.cpp
|
||||
#ln -s PyCafe3.cpp src/PyCafe.cpp
|
||||
ENABLE_OPTIONS+=" --enable-json"
|
||||
ENABLE_OPTIONS+=" --enable-zeromq"
|
||||
ENABLE_OPTIONS+=" --enable-curl"
|
||||
ENABLE_OPTIONS+=" --enable-lz4"
|
||||
#else
|
||||
#rm -f src/PyCafe.cpp
|
||||
#ln -s PyCafe_sls.cpp src/PyCafe.cpp
|
||||
fi
|
||||
|
||||
CAFE_V+="-gcc-"$GCC_VERSION
|
||||
|
||||
echo "CAFE VERSION: $CAFE_V"
|
||||
|
||||
#echo 'EPICS BASE IS='$EPICS_BASE
|
||||
#echo 'EPICS BASE DIR='${EPICS}/base-7.0.4.1
|
||||
|
||||
EB1=$(echo $EPICS_BASE | sed -e "s/[a-zA-Z]*-//g")
|
||||
EBMAJ=$(echo $EB1 | sed -e "s/[[:punct:]].*//g")
|
||||
EBMIN1=$(echo $EB1 | sed -e "s/^[[:digit:]]*[[:punct:]]//g")
|
||||
EBMIN=$(echo $EBMIN1 | sed -e "s/[[:punct:]][[:digit:]]*//g")
|
||||
EBPAT=$(echo $EB1 | sed -e "s/[[:digit:]]*[[:punct:]]//g")
|
||||
echo EPICS_MAJOR=$EBMAJ
|
||||
echo EPICS_MINOR=$EBMIN
|
||||
echo EPICS_PATCH=$EBPAT
|
||||
#echo $EBMIN1
|
||||
|
||||
export CAFE_EPICS_V_MAJOR=$EBMAJ
|
||||
export CAFE_EPICS_V_MINOR=$EBMIN
|
||||
export CAFE_EPICS_V_PATCH=$EBPAT
|
||||
|
||||
#ENABLE_OPTIONS+=" --enable-qt5"
|
||||
##ENABLE_OPTIONS+=" --enable-qt4"
|
||||
#ENABLE_OPTIONS+=" --enable-python37"
|
||||
##ENABLE_OPTIONS+=" --enable-python35"
|
||||
#ENABLE_OPTIONS+=" --enable-json"
|
||||
#ENABLE_OPTIONS+=" --enable-zeromq"
|
||||
#ENABLE_OPTIONS+=" --enable-curl"
|
||||
#ENABLE_OPTIONS+=" --enable-lz4"
|
||||
|
||||
echo 'ENABLE_OPTIONS='$ENABLE_OPTIONS
|
||||
echo 'EPICS='${EPICS}
|
||||
|
||||
./configure \
|
||||
--prefix=/opt/gfa/cafe/cpp/${CAFE_V} \
|
||||
--libdir=/opt/gfa/cafe/cpp/${CAFE_V}/lib/${EPICS_HOST_ARCH} \
|
||||
${ENABLE_OPTIONS} \
|
||||
--with-boost-inc=/afs/psi.ch/project/cafe/gitlab/CAFE/boost/boost_1_61_0/include \
|
||||
--with-epics7=${EPICS}/base-7.0.4.1 \
|
||||
--with-epics3=${EPICS}/base \
|
||||
--with-python37=/opt/gfa/python-3.7/latest \
|
||||
--with-python35=/opt/gfa/python-3.5/latest \
|
||||
--with-qt5=/opt/gfa/python-3.7/latest \
|
||||
--with-qt4=/opt/gfa/python-3.5/latest \
|
||||
--with-json=/opt/gfa/zmsglog/json/jsoncpp-src-0.6.0-rc2 \
|
||||
--with-zeromq=/opt/gfa/zmq/zeromq-4.2.3-gcc-6.3.0 \
|
||||
--with-curl=/opt/gfa/zmq/curl-7.55.1 \
|
||||
--with-lz4=/opt/gfa/zmq/lz4/lib
|
||||
|
||||
unset CAFE_EPICS_V_PATCH
|
||||
unset CAFE_EPICS_V_MINOR
|
||||
unset CAFE_EPICS_V_MAJOR
|
||||
|
||||
unset CAFE_HOST_FLAG_DARWIN
|
||||
@@ -1 +0,0 @@
|
||||
configureCafe.ac
|
||||
1189
configure.ac
Normal file
1189
configure.ac
Normal file
File diff suppressed because it is too large
Load Diff
446
configureCafe.ac
446
configureCafe.ac
@@ -1,446 +0,0 @@
|
||||
## CAFE (Channel Access interFacE)
|
||||
## Author: Jan Chrin, GFA, PSI
|
||||
##
|
||||
## configure.ac is processed by autoconf
|
||||
##
|
||||
## output: configure.in file for building the cafe library
|
||||
##
|
||||
|
||||
# Standard macros
|
||||
AC_PREREQ(2.63)
|
||||
AC_COPYRIGHT([CAFE,Jan Chrin, 2013])
|
||||
AC_INIT([CAFE], [1.12.5], [Bug reports to: jan.chrin@psi.ch])
|
||||
|
||||
AC_CONFIG_AUX_DIR(./)
|
||||
|
||||
AC_CONFIG_MACRO_DIR([m4])
|
||||
m4_pattern_allow([AC_CONFIG_MACRO])
|
||||
|
||||
AM_INIT_AUTOMAKE
|
||||
AC_CONFIG_SRCDIR([./include/cafe.h])
|
||||
|
||||
AC_LANG_CPLUSPLUS
|
||||
|
||||
AC_CONFIG_HEADER([./include/config.h:./include/config.in])
|
||||
AC_PROG_CXX
|
||||
|
||||
|
||||
LT_PREREQ([2.4.6])
|
||||
#LT_PREREQ([2.2.6])
|
||||
LT_INIT
|
||||
|
||||
|
||||
# library creation
|
||||
AC_PROG_LIBTOOL
|
||||
AM_PROG_LIBTOOL
|
||||
|
||||
AC_LANG([C++])
|
||||
|
||||
AC_DEFINE_UNQUOTED(HAVE_LINUX, 1, [linux dependency (sleep)])
|
||||
#else c++11
|
||||
CPPFLAGS=" -fexceptions -fPIC -std=c++1z"
|
||||
|
||||
# provide include directories
|
||||
AC_SUBST([CAFE_CPPFLAGS], '-I$(top_srcdir)/include ')
|
||||
|
||||
##---------------------------------------------------------------------------
|
||||
##-- EPICS -- path and options
|
||||
##
|
||||
EPICS_PREFIX=""
|
||||
EPICS_INCL_PATH=""
|
||||
EPICS_LIB_PATH=""
|
||||
|
||||
## Add epics release
|
||||
EPICS_MAJOR_DEFAULT="3"
|
||||
EPICS_MINOR_DEFAULT="14"
|
||||
EPICS_PATCH_DEFAULT="12"
|
||||
|
||||
EPICS_MAJOR_REL=${EPICS_MAJOR_DEFAULT}
|
||||
EPICS_MINOR_REL=${EPICS_MINOR_DEFAULT}
|
||||
EPICS_PATCH_REL=${EPICS_PATCH_DEFAULT}
|
||||
|
||||
#overwrite default with actual if determined
|
||||
if test "${CAFE_EPICS_V_MAJOR}" != ""; then
|
||||
EPICS_MAJOR_REL=${CAFE_EPICS_V_MAJOR}
|
||||
fi
|
||||
if test "${CAFE_EPICS_V_MINOR}" != ""; then
|
||||
EPICS_MINOR_REL=${CAFE_EPICS_V_MINOR}
|
||||
fi
|
||||
if test "${CAFE_EPICS_V_PATCH}" != ""; then
|
||||
EPICS_PATCH_REL=${CAFE_EPICS_V_PATCH}
|
||||
fi
|
||||
|
||||
|
||||
## Host Arch
|
||||
if test "${HOST_ARCH}" == ""; then
|
||||
HOST_ARCH=Linux
|
||||
#echo ${EPICS_HOST_ARCH} | grep -c 'SL6'
|
||||
#echo ${EPICS_HOST_ARCH} | grep -c 'darwin'
|
||||
if test ${CAFE_HOST_FLAG_DARWIN} == 1; then
|
||||
HOST_ARCH=Darwin
|
||||
fi
|
||||
echo "HOST_ARCH="${HOST_ARCH}
|
||||
fi
|
||||
|
||||
|
||||
|
||||
AC_ARG_ENABLE(
|
||||
[epics],
|
||||
AC_HELP_STRING([--enable-epics],
|
||||
[enable epics use [default=no]]),
|
||||
[HAVE_EPICS=true],
|
||||
[HAVE_EPICS=false])
|
||||
|
||||
AC_ARG_WITH(
|
||||
epics,
|
||||
AC_HELP_STRING(
|
||||
[--with-epics location of EPICS],
|
||||
[prefix where the epics libraries and include files are to be found]),
|
||||
[HAVE_EPICS=true
|
||||
EPICS_PREFIX=$withval
|
||||
EPICS_INCL_PATH="-I"${EPICS_PREFIX}"/include/ -I"${EPICS_PREFIX}"/include/os/"${HOST_ARCH}
|
||||
EPICS_LIB_PATH=${EPICS_PREFIX}"/lib/"${EPICS_HOST_ARCH}])
|
||||
|
||||
#echo "TEST ", $EPICS_LIB_PATH
|
||||
##
|
||||
##-- end EPICS -- path and options
|
||||
##---------------------------------------------------------------------------
|
||||
|
||||
##===========================================================================
|
||||
##== Check for header files and libraries.
|
||||
##===========================================================================
|
||||
|
||||
##---------------------------------------------------------------------------
|
||||
##-- EPICS -- check header files and libs
|
||||
##
|
||||
AC_LANG_PUSH([C++])
|
||||
|
||||
if test $HAVE_EPICS == true; then
|
||||
|
||||
# Change flags: if all tests are successfull, accept these changes; if
|
||||
# the tests are not successfull, use the old flags.
|
||||
if test "${EPICS_PREFIX}" != "" ; then
|
||||
TEMP_CPPFLAGS=${CPPFLAGS}
|
||||
CPPFLAGS=${CPPFLAGS}" "${EPICS_INCL_PATH}
|
||||
TEMP_LDFLAGS=${LDFLAGS}
|
||||
LDFLAGS=${LDFLAGS}" -L"${EPICS_LIB_PATH}" -Wl,-rpath,"${EPICS_LIB_PATH}
|
||||
fi
|
||||
|
||||
if test x$HAVE_EPICS == xtrue ; then
|
||||
AC_CHECK_HEADERS(
|
||||
[cadef.h],
|
||||
[HAVE_EPICS=true],
|
||||
[HAVE_EPICS=false
|
||||
AC_MSG_WARN(cadef.h not not found!)],
|
||||
[])
|
||||
fi
|
||||
|
||||
if test x$HAVE_EPICS == xtrue ; then
|
||||
AC_CHECK_HEADERS(
|
||||
[epicsTypes.h],
|
||||
[HAVE_EPICS=true],
|
||||
[HAVE_EPICS=false
|
||||
AC_MSG_WARN(epicsTypes.h not found!)],
|
||||
[])
|
||||
fi
|
||||
|
||||
if test x$HAVE_EPICS == xtrue ; then
|
||||
AC_CHECK_LIB(ca,[main],
|
||||
[HAVE_EPICS=true],
|
||||
[HAVE_EPICS=false
|
||||
AC_MSG_WARN(libca either not found or not operational!)])
|
||||
fi
|
||||
|
||||
if test x$HAVE_EPICS == xtrue ; then
|
||||
AC_CHECK_LIB(Com,[main],
|
||||
[HAVE_EPICS=true],
|
||||
[HAVE_EPICS=false
|
||||
AC_MSG_WARN(libCom either not found or not operational!)])
|
||||
fi
|
||||
|
||||
if test x$HAVE_EPICS == xtrue ; then
|
||||
AC_CHECK_LIB(dl,[main],
|
||||
[HAVE_EPICS=true],
|
||||
[HAVE_EPICS=false
|
||||
AC_MSG_WARN(libdl either not found or not operational!)])
|
||||
fi
|
||||
|
||||
# If all checks are OK we add rlog to the CXXFLAGS.
|
||||
if test x$HAVE_EPICS != xtrue ; then
|
||||
|
||||
if test "${EPICS_PREFIX}" != "" ; then
|
||||
CPPFLAGS=${TEMP_CPPFLAGS}
|
||||
LDFLAGS=${TEMP_LDFLAGS}
|
||||
fi
|
||||
fi
|
||||
|
||||
echo "LDFLAGS__> $LDFLAGS "
|
||||
|
||||
if test x$HAVE_EPICS == xtrue ; then
|
||||
AC_DEFINE_UNQUOTED(HAVE_EPICS, ${EPICS_MAJOR_REL}.${EPICS_MINOR_REL}.${EPICS_PATCH_REL},[epics version])
|
||||
AC_DEFINE_UNQUOTED(EPICS_MAJOR,${EPICS_MAJOR_REL}, [epics major release])
|
||||
AC_DEFINE_UNQUOTED(EPICS_MINOR,${EPICS_MINOR_REL}, [epics minor release])
|
||||
AC_DEFINE_UNQUOTED(EPICS_PATCH,${EPICS_PATCH_REL}, [epics patch release])
|
||||
fi
|
||||
fi
|
||||
|
||||
AC_LANG_POP
|
||||
|
||||
##
|
||||
##-- end EPICS -- check header files and libs
|
||||
##---------------------------------------------------------------------------
|
||||
|
||||
|
||||
##---------------------------------------------------------------------------
|
||||
##-- BOOST -- path and options -
|
||||
##-- Boost libraries are mainly header-only, i.e. they consist of header files
|
||||
##-- containing templates and inline functions, and require no separately-compiled
|
||||
##-- library binaries or special treatment when linking
|
||||
##
|
||||
BOOST_PREFIX=""
|
||||
BOOST_INCL_PATH=""
|
||||
BOOST_LIB_PATH=""
|
||||
BOOST_OPTION=""
|
||||
|
||||
AC_ARG_ENABLE(
|
||||
[boost-inc],
|
||||
AC_HELP_STRING([--enable-boost-inc],
|
||||
[enable boost use [default=no]]),
|
||||
[HAVE_BOOST_=true],
|
||||
[HAVE_BOOST_=false])
|
||||
|
||||
AC_ARG_WITH(
|
||||
boost-inc,
|
||||
AC_HELP_STRING([--with-boost-inc = location of BOOST],
|
||||
[prefix giving the boost base directory]),
|
||||
[HAVE_BOOST_=true
|
||||
BOOST_PREFIX=$withval
|
||||
BOOST_INCL_PATH="-I"${BOOST_PREFIX}"/boost -I"${BOOST_PREFIX}
|
||||
])
|
||||
|
||||
AC_ARG_ENABLE(
|
||||
[boost-lib],
|
||||
AC_HELP_STRING([--enable-boost-lib],
|
||||
[enable boost lib use [default=no]]),
|
||||
[HAVE_BOOST_LIB_=true],
|
||||
[HAVE_BOOST_LIB_=false])
|
||||
|
||||
AC_ARG_WITH(
|
||||
boost-lib,
|
||||
AC_HELP_STRING([--with-boost-lib = location of BOOST],
|
||||
[prefix giving the boost base directory]),
|
||||
[HAVE_BOOST_LIB=true
|
||||
BOOST_LIB_PATH=$withval
|
||||
])
|
||||
|
||||
##
|
||||
##-- end BOOST -- path and options
|
||||
##---------------------------------------------------------
|
||||
|
||||
|
||||
##---------------------------------------------------------------------------
|
||||
##-- BOOST -- check header files (and lib if selected) only
|
||||
##
|
||||
AC_LANG_PUSH([C++])
|
||||
|
||||
if test $HAVE_BOOST_LIB_ == true ; then
|
||||
|
||||
TEMP_LDFLAGS=${LDFLAGS}
|
||||
LDFLAGS=${LDFLAGS}" -L"${BOOST_LIB_PATH}" -Wl,-rpath,"${BOOST_LIB_PATH}
|
||||
#echo ${BOOST_LIB_PATH}
|
||||
#echo ${LDFLAGS}
|
||||
|
||||
if test x$HAVE_BOOST_LIB_ == xtrue ; then
|
||||
AC_CHECK_LIB(boost_thread,[main],
|
||||
[],
|
||||
[HAVE_BOOST_LIB=false
|
||||
AC_MSG_WARN(boost_thread not found!)])
|
||||
fi
|
||||
|
||||
# If all checks are OK we add boost lib version to the FLAGS.
|
||||
if test x$HAVE_BOOST_LIB_ != xtrue ; then
|
||||
LDFLAGS=${TEMP_LDFLAGS}
|
||||
fi
|
||||
|
||||
if test x$HAVE_BOOST_LIB_ == xtrue ; then
|
||||
AC_DEFINE_UNQUOTED(HAVE_BOOST_THREAD, 1, [boost thread library])
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
if test $HAVE_BOOST_ == true ; then
|
||||
|
||||
# Change flags: if all tests are successful, accept these additions,
|
||||
# else use the old flags.
|
||||
if test "${BOOST_PREFIX}" != "" ; then
|
||||
TEMP_CPPFLAGS=${CPPFLAGS}
|
||||
CPPFLAGS=${CPPFLAGS}" "${BOOST_INCL_PATH}
|
||||
echo ${BOOST_INCL_PATH}
|
||||
echo ${CPPFLAGS}
|
||||
fi
|
||||
|
||||
if test x$HAVE_BOOST_ == xtrue ; then
|
||||
AC_CHECK_HEADERS(
|
||||
[multi_index_container.hpp],
|
||||
[HAVE_BOOST_=true],
|
||||
[HAVE_BOOST_=false
|
||||
AC_MSG_WARN(multi_index_container.hpp not found!)],
|
||||
[])
|
||||
fi
|
||||
|
||||
if test x$HAVE_BOOST_ != xtrue ; then
|
||||
if test "${BOOST_PREFIX}" != "" ; then
|
||||
CPPFLAGS=${TEMP_CPPFLAGS}
|
||||
echo ${CPPFLAGS}
|
||||
fi
|
||||
fi
|
||||
|
||||
if test x$HAVE_BOOST_ == xtrue ; then
|
||||
AC_DEFINE_UNQUOTED(HAVE_BOOST, 1, [Availability of boost])
|
||||
fi
|
||||
fi
|
||||
|
||||
AC_LANG_POP
|
||||
|
||||
##
|
||||
##-- end BOOST-- check header files only
|
||||
##-----------------------------
|
||||
|
||||
|
||||
##---------------------------------------------------------------------------
|
||||
##-- Qt4 -- path and options
|
||||
##
|
||||
QT4_PREFIX=""
|
||||
QT4_INCL_PATH=""
|
||||
QT4_LIB_PATH=""
|
||||
|
||||
AC_ARG_ENABLE(
|
||||
[qt4-inc],
|
||||
AC_HELP_STRING([--enable-qt4-inc],
|
||||
[enable Qt version 4 use [default=no]]),
|
||||
[HAVE_QT4_=true],
|
||||
[HAVE_QT4_=false])
|
||||
|
||||
|
||||
AC_ARG_ENABLE(
|
||||
[qt4-lib],
|
||||
AC_HELP_STRING([--enable-qt4-lib],
|
||||
[enable Qt version 4 use [default=no]]),
|
||||
[HAVE_QT4_=true],
|
||||
[HAVE_QT4_=false])
|
||||
|
||||
#Only if enable flag is set
|
||||
if test $HAVE_QT4_ == true ; then
|
||||
|
||||
AC_ARG_WITH(
|
||||
qt4-inc,
|
||||
AC_HELP_STRING([--with-qt4-inc=PREFIX],
|
||||
[prefix, parent directory where the Qt version 4 library is installed]),
|
||||
[HAVE_QT4_=true
|
||||
QT4_PREFIX=$withval
|
||||
QT4_INCL_PATH=${QT4_INCL_PATH}" -I"${QT4_PREFIX}
|
||||
QT4_INCL_PATH=${QT4_INCL_PATH}" -I"${QT4_PREFIX}"/QtCore "
|
||||
QT4_INCL_PATH=${QT4_INCL_PATH}" -I"${QT4_PREFIX}"/QtXml "
|
||||
])
|
||||
|
||||
AC_ARG_WITH(
|
||||
qt4-lib,
|
||||
AC_HELP_STRING([--with-qt4-lib=PREFIX],
|
||||
[prefix, parent directory where the Qt version 4 library is installed]),
|
||||
[HAVE_QT4_=true
|
||||
QT4_LIB_PATH=$withval
|
||||
QT4_LIB_PATH=${QT4_LIB_PATH}
|
||||
])
|
||||
|
||||
fi
|
||||
|
||||
##
|
||||
##---------------------------------------------------------------------------
|
||||
|
||||
|
||||
|
||||
##---------------------------------------------------------------------------
|
||||
##-- Qt version 4 -- check header files and libs
|
||||
##
|
||||
AC_LANG_PUSH([C++])
|
||||
|
||||
if test $HAVE_QT4_ == true ; then
|
||||
|
||||
# Change flags: if all tests are successfull, accept this changes; if
|
||||
# the tests are not successfull, use the old flags.
|
||||
if test "${QT4_PREFIX}" != "" ; then
|
||||
TEMP_CPPFLAGS=${CPPFLAGS}
|
||||
CPPFLAGS=${CPPFLAGS}" "${QT4_INCL_PATH}
|
||||
TEMP_LDFLAGS=${LDFLAGS}
|
||||
LDFLAGS=${LDFLAGS}" -L"${QT4_LIB_PATH}" -Wl,-rpath,"${QT4_LIB_PATH}
|
||||
fi
|
||||
|
||||
if test x$HAVE_QT4_ == xtrue ; then
|
||||
AC_CHECK_HEADERS(
|
||||
[qxml.h],
|
||||
[HAVE_QT4_=true],
|
||||
[HAVE_QT4_=false
|
||||
AC_MSG_WARN(qxml.h not found!)],
|
||||
[])
|
||||
fi
|
||||
|
||||
if test x$HAVE_QT4_ == xtrue ; then
|
||||
AC_CHECK_LIB(QtCore,[main],
|
||||
[],
|
||||
[HAVE_QT4_=false
|
||||
AC_MSG_WARN(libQtCore not found!)])
|
||||
fi
|
||||
|
||||
if test x$HAVE_QT4_ == xtrue ; then
|
||||
AC_CHECK_LIB(QtXml,[main],
|
||||
[],
|
||||
[HAVE_QT4=false
|
||||
AC_MSG_WARN(libQtXml not found!)])
|
||||
fi
|
||||
|
||||
# If all checks are OK we add Qt version 4 to the FLAGS.
|
||||
if test x$HAVE_QT4_ != xtrue ; then
|
||||
|
||||
if test "${QT4_PREFIX}" != "" ; then
|
||||
CPPFLAGS=${TEMP_CPPFLAGS}
|
||||
LDFLAGS=${TEMP_LDFLAGS}
|
||||
fi
|
||||
|
||||
fi
|
||||
|
||||
if test x$HAVE_QT4_ == xtrue ; then
|
||||
AC_DEFINE_UNQUOTED(HAVE_QT4, 1,[Availability of Qt version 4 confirmed])
|
||||
fi
|
||||
fi
|
||||
|
||||
AC_LANG_POP
|
||||
|
||||
##
|
||||
##-- end QT4 -- check header files and libs
|
||||
|
||||
|
||||
CPPFLAGS=$CPPFLAGS
|
||||
echo "REPORTING -> current CPPFLAGS = "$CPPFLAGS
|
||||
LDFLAGS=$LDFLAGS
|
||||
echo "REPORTING -> current LDFLAGS = "$LDFLAGS
|
||||
|
||||
##
|
||||
##-- end Check
|
||||
##--
|
||||
|
||||
HAVE_PYCAFE_EXT_=false
|
||||
|
||||
# Generate makefiles
|
||||
|
||||
AC_SUBST(AM_CPPFLAGS, $CPPFLAGS)
|
||||
AC_SUBST(AM_LDFLAGS, $LDFLAGS)
|
||||
|
||||
AM_CONDITIONAL(HAVE_PYTHON_, test x$HAVE_PYTHON_ == xtrue)
|
||||
AM_CONDITIONAL(HAVE_PYCAFE_EXT_, test x$HAVE_PYCAFE_EXT_ == xtrue)
|
||||
AM_CONDITIONAL(HAVE_ZEROMQ_, test x$HAVE_ZEROMQ_ == xtrue)
|
||||
|
||||
AC_CONFIG_FILES([makefile
|
||||
src/makefile
|
||||
include/makefile])
|
||||
|
||||
AC_OUTPUT
|
||||
1189
configurePSI.ac
Normal file
1189
configurePSI.ac
Normal file
File diff suppressed because it is too large
Load Diff
1052
configurePSI.ac-
Normal file
1052
configurePSI.ac-
Normal file
File diff suppressed because it is too large
Load Diff
1118
configurePSI.ac--
Normal file
1118
configurePSI.ac--
Normal file
File diff suppressed because it is too large
Load Diff
1142
configurezbspy37.ac
1142
configurezbspy37.ac
File diff suppressed because it is too large
Load Diff
Binary file not shown.
BIN
examples/cafeTest/cafeTest-
Executable file
BIN
examples/cafeTest/cafeTest-
Executable file
Binary file not shown.
@@ -7,7 +7,7 @@
|
||||
|
||||
|
||||
#CAFE version to link to
|
||||
CAFE_VERSION=cafe-1.12.5-gcc-7.3.0
|
||||
CAFE_VERSION=cafe-1.14.4-gcc-7.3.0
|
||||
|
||||
#PYTHON_INCLUDE=/opt/gfa/python-3.5/latest/include/python3.5m
|
||||
#PYTHON_LIB=/opt/gfa/python-3.5/latest/lib
|
||||
@@ -18,10 +18,6 @@ EPICS_BASE=${EPICS}/base
|
||||
CAFE_BASE=/opt/gfa/cafe
|
||||
CAFE_CPP_BASE=${CAFE_BASE}/cpp
|
||||
|
||||
CAFE_BASE=/afs/psi.ch/project/cafe/gitlab/CAFE/
|
||||
CAFE_CPP_BASE=${CAFE_BASE}
|
||||
CAFE_VERSION=cpp
|
||||
|
||||
|
||||
BOOST_BASE=${CAFE_BASE}/boost/boost_1_61_0/include
|
||||
|
||||
@@ -32,10 +28,12 @@ INCLUDE_PATH += -I$(CAFE_CPP_BASE)/$(CAFE_VERSION)/include \
|
||||
|
||||
LIB_DIR += -L$(EPICS_BASE)/lib/${EPICS_HOST_ARCH} \
|
||||
-Wl,-rpath,$(EPICS_BASE)/lib/${EPICS_HOST_ARCH} \
|
||||
-L$(CAFE_CPP_BASE)/$(CAFE_VERSION)/lib \
|
||||
-Wl,-rpath,$(CAFE_CPP_BASE)/$(CAFE_VERSION)/lib
|
||||
-L$(CAFE_CPP_BASE)/$(CAFE_VERSION)/lib/${EPICS_HOST_ARCH} \
|
||||
-Wl,-rpath,$(CAFE_CPP_BASE)/$(CAFE_VERSION)/lib/${EPICS_HOST_ARCH} \
|
||||
-L/opt/gfa/python-3.7/latest/lib \
|
||||
-Wl,-rpath,/opt/gfa/python-3.7/latest/lib
|
||||
|
||||
LIBS += -lcafe -lca -lCom
|
||||
LIBS += -lcafe -lca -lCom -lQt5Core
|
||||
|
||||
cafeTest: cafeTest.cc callbacks.h
|
||||
g++ cafeTest.cc -o cafeTest \
|
||||
|
||||
46
examples/cafeTest/makefile7
Normal file
46
examples/cafeTest/makefile7
Normal file
@@ -0,0 +1,46 @@
|
||||
#
|
||||
# Jan Chrin
|
||||
# June 2016
|
||||
#
|
||||
# Makefile to build a simple C++ cafe client
|
||||
#
|
||||
|
||||
|
||||
#CAFE version to link to
|
||||
CAFE_VERSION=cafe-1.14.4-sls2-gcc-7.3.0
|
||||
|
||||
#PYTHON_INCLUDE=/opt/gfa/python-3.5/latest/include/python3.5m
|
||||
#PYTHON_LIB=/opt/gfa/python-3.5/latest/lib
|
||||
|
||||
EPICS_BASE=${EPICS}/base-7.0.6
|
||||
|
||||
#CAFE project base
|
||||
CAFE_BASE=/opt/gfa/cafe
|
||||
CAFE_CPP_BASE=${CAFE_BASE}/cpp
|
||||
|
||||
|
||||
|
||||
BOOST_BASE=${CAFE_BASE}/boost/boost_1_61_0/include
|
||||
|
||||
INCLUDE_PATH += -I$(CAFE_CPP_BASE)/$(CAFE_VERSION)/include \
|
||||
-I$(EPICS_BASE)/include -I$(EPICS_BASE)/include/compiler/gcc \
|
||||
-I$(EPICS_BASE)/include/os/Linux \
|
||||
-I$(BOOST_BASE)
|
||||
#-I$(BOOST_BASE)/boost
|
||||
|
||||
LIB_DIR += -L$(EPICS_BASE)/lib/${EPICS_HOST_ARCH} \
|
||||
-Wl,-rpath,$(EPICS_BASE)/lib/${EPICS_HOST_ARCH} \
|
||||
-L$(CAFE_CPP_BASE)/$(CAFE_VERSION)/lib/${EPICS_HOST_ARCH} \
|
||||
-Wl,-rpath,$(CAFE_CPP_BASE)/$(CAFE_VERSION)/lib/${EPICS_HOST_ARCH} \
|
||||
-L/opt/gfa/python-3.7/latest/lib \
|
||||
-Wl,-rpath,/opt/gfa/python-3.7/latest/lib
|
||||
|
||||
LIBS += -lcafe -lca -lCom -lQt5Core
|
||||
|
||||
cafeTest: cafeTest.cc callbacks.h
|
||||
g++ cafeTest.cc -o cafeTest \
|
||||
$(INCLUDE_PATH) $(LIB_DIR) $(LIBS)
|
||||
|
||||
clean:
|
||||
rm -f cafeTest.o cafeTest
|
||||
|
||||
46
examples/cafeTest/makefile_local
Normal file
46
examples/cafeTest/makefile_local
Normal file
@@ -0,0 +1,46 @@
|
||||
#
|
||||
# Jan Chrin
|
||||
# June 2016
|
||||
#
|
||||
# Makefile to build a simple C++ cafe client
|
||||
#
|
||||
|
||||
|
||||
#CAFE version to link to
|
||||
CAFE_VERSION=cafe-1.14.1-gcc-7.3.0
|
||||
|
||||
#PYTHON_INCLUDE=/opt/gfa/python-3.5/latest/include/python3.5m
|
||||
#PYTHON_LIB=/opt/gfa/python-3.5/latest/lib
|
||||
|
||||
EPICS_BASE=${EPICS}/base
|
||||
|
||||
#CAFE project base
|
||||
CAFE_BASE=/opt/gfa/cafe
|
||||
CAFE_CPP_BASE=${CAFE_BASE}/cpp
|
||||
|
||||
CAFE_BASE=/afs/psi.ch/project/cafe/gitlab/CAFE/
|
||||
CAFE_CPP_BASE=${CAFE_BASE}
|
||||
CAFE_VERSION=cpp
|
||||
|
||||
|
||||
BOOST_BASE=${CAFE_BASE}/boost/boost_1_61_0/include
|
||||
|
||||
INCLUDE_PATH += -I$(CAFE_CPP_BASE)/$(CAFE_VERSION)/include \
|
||||
-I$(EPICS_BASE)/include -I$(EPICS_BASE)/include/os/Linux \
|
||||
-I$(BOOST_BASE)
|
||||
#-I$(BOOST_BASE)/boost
|
||||
|
||||
LIB_DIR += -L$(EPICS_BASE)/lib/${EPICS_HOST_ARCH} \
|
||||
-Wl,-rpath,$(EPICS_BASE)/lib/${EPICS_HOST_ARCH} \
|
||||
-L$(CAFE_CPP_BASE)/$(CAFE_VERSION)/lib \
|
||||
-Wl,-rpath,$(CAFE_CPP_BASE)/$(CAFE_VERSION)/lib
|
||||
|
||||
LIBS += -lcafe -lca -lCom
|
||||
|
||||
cafeTest: cafeTest.cc callbacks.h
|
||||
g++ cafeTest.cc -o cafeTest \
|
||||
$(INCLUDE_PATH) $(LIB_DIR) $(LIBS)
|
||||
|
||||
clean:
|
||||
rm -f cafeTest.o cafeTest
|
||||
|
||||
@@ -18,15 +18,19 @@
|
||||
#define DL_IMPORT(_T) _T
|
||||
#endif
|
||||
|
||||
__PYX_EXTERN_C void cy_monitor_handler_wrapper(void *);
|
||||
__PYX_EXTERN_C void cy_data_event_handler_wrapper(void *, unsigned int, std::string, PVDataHolder);
|
||||
__PYX_EXTERN_C void cy_ctrl_event_handler_wrapper(void *, unsigned int, std::string, PVCtrlHolder);
|
||||
__PYX_EXTERN_C void cy_event_handler_wrapper(void *, unsigned int, std::string);
|
||||
__PYX_EXTERN_C void cy_handle_handler_wrapper(void *, unsigned int);
|
||||
__PYX_EXTERN_C void cy_connect_handler_wrapper(void *, unsigned int, std::string, int);
|
||||
__PYX_EXTERN_C void py_cb_wrapper(PVDataHolder, unsigned int, std::string);
|
||||
__PYX_EXTERN_C void py_cb_ctrl_wrapper(PVCtrlHolder, unsigned int, std::string);
|
||||
__PYX_EXTERN_C void py_cb_handle_wrapper(unsigned int);
|
||||
__PYX_EXTERN_C void py_cb_handle_monid_wrapper(unsigned int, unsigned long);
|
||||
__PYX_EXTERN_C void cy_cb_handle_get_wrapper(void *, unsigned int);
|
||||
__PYX_EXTERN_C void py_cb_handle_get_wrapper(unsigned int);
|
||||
__PYX_EXTERN_C void cy_cb_handle_put_wrapper(void *, unsigned int);
|
||||
__PYX_EXTERN_C void py_cb_handle_put_wrapper(unsigned int);
|
||||
__PYX_EXTERN_C void py_cb_handle_open_wrapper(unsigned int, int);
|
||||
__PYX_EXTERN_C void py_cb_handle_connect_wrapper(unsigned int, std::string, int);
|
||||
|
||||
@@ -1,125 +0,0 @@
|
||||
/* Generated by Cython 0.23.4 */
|
||||
|
||||
#ifndef __PYX_HAVE_API__PyCafe
|
||||
#define __PYX_HAVE_API__PyCafe
|
||||
#include "Python.h"
|
||||
|
||||
static void (*__pyx_api_f_6PyCafe_py_cb_wrapper)(PVDataHolder, unsigned int, std::string) = 0;
|
||||
#define py_cb_wrapper __pyx_api_f_6PyCafe_py_cb_wrapper
|
||||
static void (*__pyx_api_f_6PyCafe_py_cb_ctrl_wrapper)(PVCtrlHolder, unsigned int, std::string) = 0;
|
||||
#define py_cb_ctrl_wrapper __pyx_api_f_6PyCafe_py_cb_ctrl_wrapper
|
||||
static void (*__pyx_api_f_6PyCafe_py_cb_handle_wrapper)(unsigned int) = 0;
|
||||
#define py_cb_handle_wrapper __pyx_api_f_6PyCafe_py_cb_handle_wrapper
|
||||
static void (*__pyx_api_f_6PyCafe_py_cb_handle_monid_wrapper)(unsigned int, unsigned long) = 0;
|
||||
#define py_cb_handle_monid_wrapper __pyx_api_f_6PyCafe_py_cb_handle_monid_wrapper
|
||||
static void (*__pyx_api_f_6PyCafe_py_cb_handle_get_wrapper)(unsigned int) = 0;
|
||||
#define py_cb_handle_get_wrapper __pyx_api_f_6PyCafe_py_cb_handle_get_wrapper
|
||||
static void (*__pyx_api_f_6PyCafe_py_cb_handle_put_wrapper)(unsigned int) = 0;
|
||||
#define py_cb_handle_put_wrapper __pyx_api_f_6PyCafe_py_cb_handle_put_wrapper
|
||||
#if !defined(__Pyx_PyIdentifier_FromString)
|
||||
#if PY_MAJOR_VERSION < 3
|
||||
#define __Pyx_PyIdentifier_FromString(s) PyString_FromString(s)
|
||||
#else
|
||||
#define __Pyx_PyIdentifier_FromString(s) PyUnicode_FromString(s)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifndef __PYX_HAVE_RT_ImportModule
|
||||
#define __PYX_HAVE_RT_ImportModule
|
||||
static PyObject *__Pyx_ImportModule(const char *name)
|
||||
{
|
||||
PyObject *py_name = 0;
|
||||
PyObject *py_module = 0;
|
||||
py_name = __Pyx_PyIdentifier_FromString(name);
|
||||
if (!py_name)
|
||||
goto bad;
|
||||
py_module = PyImport_Import(py_name);
|
||||
Py_DECREF(py_name);
|
||||
return py_module;
|
||||
bad:
|
||||
Py_XDECREF(py_name);
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifndef __PYX_HAVE_RT_ImportFunction
|
||||
#define __PYX_HAVE_RT_ImportFunction
|
||||
static int __Pyx_ImportFunction(PyObject *module, const char *funcname, void (**f)(void), const char *sig)
|
||||
{
|
||||
PyObject *d = 0;
|
||||
PyObject *cobj = 0;
|
||||
union {
|
||||
void (*fp)(void);
|
||||
void *p;
|
||||
} tmp;
|
||||
d = PyObject_GetAttrString(module, (char *)"__pyx_capi__");
|
||||
if (!d)
|
||||
goto bad;
|
||||
cobj = PyDict_GetItemString(d, funcname);
|
||||
if (!cobj) {
|
||||
PyErr_Format(PyExc_ImportError,
|
||||
"%.200s does not export expected C function %.200s",
|
||||
PyModule_GetName(module), funcname);
|
||||
goto bad;
|
||||
}
|
||||
#if PY_VERSION_HEX >= 0x02070000
|
||||
if (!PyCapsule_IsValid(cobj, sig)) {
|
||||
PyErr_Format(PyExc_TypeError,
|
||||
"C function %.200s.%.200s has wrong signature (expected %.500s, got %.500s)",
|
||||
PyModule_GetName(module), funcname, sig, PyCapsule_GetName(cobj));
|
||||
goto bad;
|
||||
}
|
||||
tmp.p = PyCapsule_GetPointer(cobj, sig);
|
||||
#else
|
||||
{
|
||||
const char *desc, *s1, *s2;
|
||||
desc = (const char *)PyCObject_GetDesc(cobj);
|
||||
if (!desc)
|
||||
goto bad;
|
||||
s1 = desc;
|
||||
s2 = sig;
|
||||
while (*s1 != '\0' && *s1 == *s2) {
|
||||
s1++;
|
||||
s2++;
|
||||
}
|
||||
if (*s1 != *s2) {
|
||||
PyErr_Format(PyExc_TypeError,
|
||||
"C function %.200s.%.200s has wrong signature (expected %.500s, got %.500s)",
|
||||
PyModule_GetName(module), funcname, sig, desc);
|
||||
goto bad;
|
||||
}
|
||||
tmp.p = PyCObject_AsVoidPtr(cobj);
|
||||
}
|
||||
#endif
|
||||
*f = tmp.fp;
|
||||
if (!(*f))
|
||||
goto bad;
|
||||
Py_DECREF(d);
|
||||
return 0;
|
||||
bad:
|
||||
Py_XDECREF(d);
|
||||
return -1;
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
static int import_PyCafe(void)
|
||||
{
|
||||
PyObject *module = 0;
|
||||
module = __Pyx_ImportModule("PyCafe");
|
||||
if (!module) goto bad;
|
||||
if (__Pyx_ImportFunction(module, "py_cb_wrapper", (void (**)(void))&__pyx_api_f_6PyCafe_py_cb_wrapper, "void (PVDataHolder, unsigned int, std::string)") < 0) goto bad;
|
||||
if (__Pyx_ImportFunction(module, "py_cb_ctrl_wrapper", (void (**)(void))&__pyx_api_f_6PyCafe_py_cb_ctrl_wrapper, "void (PVCtrlHolder, unsigned int, std::string)") < 0) goto bad;
|
||||
if (__Pyx_ImportFunction(module, "py_cb_handle_wrapper", (void (**)(void))&__pyx_api_f_6PyCafe_py_cb_handle_wrapper, "void (unsigned int)") < 0) goto bad;
|
||||
if (__Pyx_ImportFunction(module, "py_cb_handle_monid_wrapper", (void (**)(void))&__pyx_api_f_6PyCafe_py_cb_handle_monid_wrapper, "void (unsigned int, unsigned long)") < 0) goto bad;
|
||||
if (__Pyx_ImportFunction(module, "py_cb_handle_get_wrapper", (void (**)(void))&__pyx_api_f_6PyCafe_py_cb_handle_get_wrapper, "void (unsigned int)") < 0) goto bad;
|
||||
if (__Pyx_ImportFunction(module, "py_cb_handle_put_wrapper", (void (**)(void))&__pyx_api_f_6PyCafe_py_cb_handle_put_wrapper, "void (unsigned int)") < 0) goto bad;
|
||||
Py_DECREF(module);
|
||||
module = 0;
|
||||
return 0;
|
||||
bad:
|
||||
Py_XDECREF(module);
|
||||
return -1;
|
||||
}
|
||||
|
||||
#endif /* !__PYX_HAVE_API__PyCafe */
|
||||
46
include/PyCafe_sf.h
Normal file
46
include/PyCafe_sf.h
Normal file
@@ -0,0 +1,46 @@
|
||||
/* Generated by Cython 0.29.2 */
|
||||
|
||||
#ifndef __PYX_HAVE__PyCafe
|
||||
#define __PYX_HAVE__PyCafe
|
||||
|
||||
|
||||
#ifndef __PYX_HAVE_API__PyCafe
|
||||
|
||||
#ifndef __PYX_EXTERN_C
|
||||
#ifdef __cplusplus
|
||||
#define __PYX_EXTERN_C extern "C"
|
||||
#else
|
||||
#define __PYX_EXTERN_C extern
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifndef DL_IMPORT
|
||||
#define DL_IMPORT(_T) _T
|
||||
#endif
|
||||
|
||||
__PYX_EXTERN_C void cy_data_event_handler_wrapper(void *, unsigned int, std::string, PVDataHolder);
|
||||
__PYX_EXTERN_C void cy_ctrl_event_handler_wrapper(void *, unsigned int, std::string, PVCtrlHolder);
|
||||
__PYX_EXTERN_C void cy_event_handler_wrapper(void *, unsigned int, std::string);
|
||||
__PYX_EXTERN_C void cy_handle_handler_wrapper(void *, unsigned int);
|
||||
__PYX_EXTERN_C void cy_connect_handler_wrapper(void *, unsigned int, std::string, int);
|
||||
__PYX_EXTERN_C void py_cb_wrapper(PVDataHolder, unsigned int, std::string);
|
||||
__PYX_EXTERN_C void py_cb_ctrl_wrapper(PVCtrlHolder, unsigned int, std::string);
|
||||
__PYX_EXTERN_C void py_cb_handle_wrapper(unsigned int);
|
||||
__PYX_EXTERN_C void py_cb_handle_monid_wrapper(unsigned int, unsigned long);
|
||||
__PYX_EXTERN_C void py_cb_handle_get_wrapper(unsigned int);
|
||||
__PYX_EXTERN_C void py_cb_handle_put_wrapper(unsigned int);
|
||||
__PYX_EXTERN_C void py_cb_handle_open_wrapper(unsigned int, int);
|
||||
__PYX_EXTERN_C void py_cb_handle_connect_wrapper(unsigned int, std::string, int);
|
||||
|
||||
#endif /* !__PYX_HAVE_API__PyCafe */
|
||||
|
||||
/* WARNING: the interface of the module init function changed in CPython 3.5. */
|
||||
/* It now returns a PyModuleDef instance instead of a PyModule instance. */
|
||||
|
||||
#if PY_MAJOR_VERSION < 3
|
||||
PyMODINIT_FUNC initPyCafe(void);
|
||||
#else
|
||||
PyMODINIT_FUNC PyInit_PyCafe(void);
|
||||
#endif
|
||||
|
||||
#endif /* !__PYX_HAVE__PyCafe */
|
||||
@@ -1,748 +0,0 @@
|
||||
///
|
||||
/// \file cafeCache.h
|
||||
/// \brief CAFE methods retrieving data from cache. (Belongs to cafe.h)
|
||||
/// \author Jan Chrin, PSI
|
||||
/// \date Release: February 2015
|
||||
/// \version CAFE 1.0.0
|
||||
///
|
||||
|
||||
#ifndef CAFECACHE_H
|
||||
#define CAFECACHE_H
|
||||
|
||||
int getPulseID(unsigned int * handle, unsigned int nelem, unsigned int * pulseID)
|
||||
{
|
||||
int status=ICAFE_NORMAL;
|
||||
int statusLocal=ICAFE_NORMAL;
|
||||
for (unsigned int i=0; i<nelem; ++i) {
|
||||
statusLocal=handleHelper.getPulseID(handle[i], pulseID[i]);
|
||||
if (statusLocal!=ICAFE_NORMAL && status==ICAFE_NORMAL) {
|
||||
status=statusLocal;
|
||||
}
|
||||
}
|
||||
return status;
|
||||
}
|
||||
|
||||
int getPulseID(unsigned int handle, unsigned int &pulseID)
|
||||
{
|
||||
pulseID=0;
|
||||
return handleHelper.getPulseID(handle, pulseID);
|
||||
}
|
||||
|
||||
int getPulseID(char * pv, unsigned int &pulseID)
|
||||
{
|
||||
pulseID=0;
|
||||
unsigned int handle=handleHelper.getHandleFromPV(pv);
|
||||
return handleHelper.getPulseID(handle, pulseID);
|
||||
}
|
||||
|
||||
unsigned int getPulseIDFromTS(epicsTimeStamp ts)
|
||||
{
|
||||
return handleHelper.getPulseIDFromTS(ts);
|
||||
}
|
||||
|
||||
vector<unsigned int>getPulseIDFromTS(PVDataHolder * pvd, unsigned int nelem)
|
||||
{
|
||||
vector<unsigned int> vui;
|
||||
vui.clear();
|
||||
vui.reserve(nelem);
|
||||
for (unsigned int i=0; i<nelem; ++i) {
|
||||
vui.push_back( getPulseIDFromTS(pvd[i].getEpicsTimeStamp()));
|
||||
}
|
||||
return vui;
|
||||
}
|
||||
|
||||
vector<unsigned int>getPulseIDFromTS(PVGroup pvg)
|
||||
{
|
||||
vector<unsigned int> vui;
|
||||
vui.clear();
|
||||
vui.reserve(pvg.getNPV());
|
||||
PVDataHolder * pvd=pvg.getPVData();
|
||||
for (unsigned int i=0; i<pvg.getNPV(); ++i) {
|
||||
vui.push_back( getPulseIDFromTS(pvd[i].getEpicsTimeStamp()));
|
||||
}
|
||||
return vui;
|
||||
}
|
||||
|
||||
int getCachePVArray (vector<unsigned int> handleV, PVDataHolder * pvd)
|
||||
{
|
||||
unsigned int * handleArray = new unsigned int [handleV.size()];
|
||||
for (size_t i=0; i< (size_t) handleV.size(); ++i) {
|
||||
handleArray[i]= (unsigned int) handleV[i];
|
||||
}
|
||||
status=getCache(handleArray, (unsigned int) handleV.size(), pvd);
|
||||
delete [] handleArray;
|
||||
return status;
|
||||
};
|
||||
|
||||
int getCachePVArrayNoWait (vector<unsigned int> handleV, PVDataHolder * pvd)
|
||||
{
|
||||
unsigned int * handleArray = new unsigned int [handleV.size()];
|
||||
int overallStatus=ICAFE_NORMAL;
|
||||
for (size_t i=0; i< (size_t) handleV.size(); ++i) {
|
||||
handleArray[i]= (unsigned int) handleV[i];
|
||||
status=getCacheNoWait(handleArray[i], pvd[i]);
|
||||
if (status!=ICAFE_NORMAL) {
|
||||
resetCallbackGet(handleArray[i]);
|
||||
if(overallStatus==ICAFE_NORMAL) {
|
||||
overallStatus=status;
|
||||
}
|
||||
}
|
||||
}
|
||||
delete [] handleArray;
|
||||
return status;
|
||||
};
|
||||
|
||||
int resetCallbackGet(const unsigned int handle);
|
||||
int resetCallbackPut(const unsigned int handle);
|
||||
|
||||
int getCacheNoWait(const unsigned int handle, PVDataHolder & pvd);
|
||||
|
||||
int getCache (const unsigned int handle, PVDataHolder & pvd);
|
||||
int getCache (const unsigned int *handleArray, unsigned int nelem, PVDataHolder * pvd);
|
||||
|
||||
int getCtrlCache (const unsigned int handle, PVCtrlHolder & pvc);
|
||||
int getCtrlCache (const unsigned int *handleArray, unsigned int nelem, PVCtrlHolder * pvc);
|
||||
|
||||
int getCache (const char * pv, PVDataHolder & pvd)
|
||||
{
|
||||
unsigned int handle=handleHelper.getHandleFromPV(pv);
|
||||
return getCache(handle, pvd);
|
||||
}
|
||||
int getCtrlCache (const char * pv, PVCtrlHolder & pvc)
|
||||
{
|
||||
unsigned int handle=handleHelper.getHandleFromPV(pv);
|
||||
return getCtrlCache(handle, pvc);
|
||||
}
|
||||
|
||||
//6
|
||||
int getCacheDoubleArray(const unsigned int handle, dbr_double_t * _val)
|
||||
{
|
||||
return cafeDoppio.getCache(handle, DBR_DOUBLE, _val);
|
||||
};
|
||||
int getCache(const unsigned int handle, dbr_double_t * _val)
|
||||
{
|
||||
return cafeDoppio.getCache(handle, DBR_DOUBLE, _val);
|
||||
};
|
||||
int getCache(const unsigned int handle, dbr_double_t * _val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity)
|
||||
{
|
||||
return cafeDoppio.getCache(handle, DBR_STS_DOUBLE, _val, alarmStatus, alarmSeverity);
|
||||
};
|
||||
int getCache(const unsigned int handle, dbr_double_t * _val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts)
|
||||
{
|
||||
return cafeDoppio.getCache(handle, DBR_TIME_DOUBLE, _val, alarmStatus, alarmSeverity, ts);
|
||||
};
|
||||
//5+ long long
|
||||
int getCache(const unsigned int handle, long long * _val);
|
||||
int getCache(const unsigned int handle, long long * _val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity);
|
||||
int getCache(const unsigned int handle, long long * _val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts);
|
||||
|
||||
//5
|
||||
int getCacheLongArray(const unsigned int handle, dbr_long_t * _val)
|
||||
{
|
||||
return cafeLatte.getCache(handle, DBR_LONG, _val);
|
||||
};
|
||||
int getCache(const unsigned int handle, dbr_long_t * _val)
|
||||
{
|
||||
return cafeLatte.getCache(handle, DBR_LONG, _val);
|
||||
};
|
||||
int getCache(const unsigned int handle, dbr_long_t * _val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity)
|
||||
{
|
||||
return cafeLatte.getCache(handle, DBR_STS_LONG, _val, alarmStatus, alarmSeverity);
|
||||
};
|
||||
int getCache(const unsigned int handle, dbr_long_t * _val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts)
|
||||
{
|
||||
return cafeLatte.getCache(handle, DBR_TIME_LONG, _val, alarmStatus, alarmSeverity, ts);
|
||||
};
|
||||
//4
|
||||
int getCache(const unsigned int handle, dbr_char_t * _val)
|
||||
{
|
||||
return cafeCappuccino.getCache(handle, DBR_CHAR, _val);
|
||||
};
|
||||
int getCache(const unsigned int handle, dbr_char_t * _val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity)
|
||||
{
|
||||
return cafeCappuccino.getCache(handle, DBR_STS_ENUM, _val, alarmStatus, alarmSeverity);
|
||||
};
|
||||
int getCache(const unsigned int handle, dbr_char_t * _val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts)
|
||||
{
|
||||
return cafeCappuccino.getCache(handle, DBR_TIME_ENUM, _val, alarmStatus, alarmSeverity, ts);
|
||||
};
|
||||
//3
|
||||
int getCache(const unsigned int handle, dbr_enum_t * _val)
|
||||
{
|
||||
return cafeEspresso.getCache(handle, DBR_ENUM, _val);
|
||||
};
|
||||
int getCache(const unsigned int handle, dbr_enum_t * _val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity)
|
||||
{
|
||||
return cafeEspresso.getCache(handle, DBR_STS_ENUM, _val, alarmStatus, alarmSeverity);
|
||||
};
|
||||
int getCache(const unsigned int handle, dbr_enum_t * _val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts)
|
||||
{
|
||||
return cafeEspresso.getCache(handle, DBR_TIME_ENUM, _val, alarmStatus, alarmSeverity, ts);
|
||||
};
|
||||
//2
|
||||
int getCacheFloatArray(const unsigned int handle, dbr_float_t * _val)
|
||||
{
|
||||
return cafeFrappuccino.getCache(handle, DBR_FLOAT, _val);
|
||||
};
|
||||
int getCache(const unsigned int handle, dbr_float_t * _val)
|
||||
{
|
||||
return cafeFrappuccino.getCache(handle, DBR_FLOAT, _val);
|
||||
};
|
||||
int getCache(const unsigned int handle, dbr_float_t * _val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity)
|
||||
{
|
||||
return cafeFrappuccino.getCache(handle, DBR_STS_FLOAT, _val, alarmStatus, alarmSeverity);
|
||||
};
|
||||
int getCache(const unsigned int handle, dbr_float_t * _val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts)
|
||||
{
|
||||
return cafeFrappuccino.getCache(handle, DBR_TIME_FLOAT, _val, alarmStatus, alarmSeverity, ts);
|
||||
};
|
||||
//1
|
||||
int getCache(const unsigned int handle, dbr_short_t * _val)
|
||||
{
|
||||
return cafeSchale.getCache(handle, DBR_SHORT, _val);
|
||||
};
|
||||
int getCache(const unsigned int handle, dbr_short_t * _val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity)
|
||||
{
|
||||
return cafeSchale.getCache(handle, DBR_STS_SHORT, _val, alarmStatus, alarmSeverity);
|
||||
};
|
||||
int getCache(const unsigned int handle, dbr_short_t * _val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts)
|
||||
{
|
||||
return cafeSchale.getCache(handle, DBR_TIME_SHORT, _val, alarmStatus, alarmSeverity, ts);
|
||||
};
|
||||
|
||||
|
||||
int getCacheDbrStringArray(const unsigned int handle, dbr_string_t * _val)
|
||||
{
|
||||
return cafeSoluble.getCache(handle, DBR_STRING, _val);
|
||||
};
|
||||
|
||||
//0
|
||||
int getCache(const unsigned int handle, dbr_string_t * _val)
|
||||
{
|
||||
return cafeSoluble.getCache(handle, DBR_STRING, _val);
|
||||
};
|
||||
int getCache(const unsigned int handle, dbr_string_t * _val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity)
|
||||
{
|
||||
return cafeSoluble.getCache(handle, DBR_STS_STRING, _val, alarmStatus, alarmSeverity);
|
||||
};
|
||||
int getCache(const unsigned int handle, dbr_string_t * _val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts)
|
||||
{
|
||||
return cafeSoluble.getCache(handle, DBR_TIME_STRING, _val, alarmStatus, alarmSeverity, ts);
|
||||
}
|
||||
//0+
|
||||
int getCacheStringArray(const unsigned int handle, string * valStr)
|
||||
{
|
||||
dbr_string_t * _val = new dbr_string_t[handleHelper.getNelemRequest(handle)];
|
||||
status=cafeSoluble.getCache(handle, DBR_STRING, _val);
|
||||
for (unsigned int i=0; i< handleHelper.getNelemRequest(handle); ++i) {
|
||||
valStr[i]=_val[i];
|
||||
}
|
||||
delete [] _val;
|
||||
return status;
|
||||
};
|
||||
int getCache(const unsigned int handle, string * valStr)
|
||||
{
|
||||
dbr_string_t * _val = new dbr_string_t[handleHelper.getNelemRequest(handle)];
|
||||
status=cafeSoluble.getCache(handle, DBR_STRING, _val);
|
||||
for (unsigned int i=0; i< handleHelper.getNelemRequest(handle); ++i) {
|
||||
valStr[i]=_val[i];
|
||||
}
|
||||
delete [] _val;
|
||||
return status;
|
||||
};
|
||||
int getCache(const unsigned int handle, string * valStr, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity)
|
||||
{
|
||||
dbr_string_t * _val = new dbr_string_t[handleHelper.getNelemRequest(handle)];
|
||||
status=cafeSoluble.getCache(handle, DBR_STS_STRING, _val, alarmStatus, alarmSeverity);
|
||||
for (unsigned int i=0; i< handleHelper.getNelemRequest(handle); ++i) {
|
||||
valStr[i]=_val[i];
|
||||
}
|
||||
delete [] _val;
|
||||
return status;
|
||||
};
|
||||
int getCache(const unsigned int handle, string * valStr, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts)
|
||||
{
|
||||
dbr_string_t * _val = new dbr_string_t[handleHelper.getNelemRequest(handle)];
|
||||
status=cafeSoluble.getCache(handle, DBR_TIME_STRING, _val, alarmStatus, alarmSeverity, ts);
|
||||
for (unsigned int i=0; i< handleHelper.getNelemRequest(handle); ++i) {
|
||||
valStr[i]=_val[i];
|
||||
}
|
||||
delete [] _val;
|
||||
return status;
|
||||
}
|
||||
//Single value
|
||||
//0+
|
||||
|
||||
int getCacheString(const unsigned int handle, string & valStr) //0
|
||||
{
|
||||
unsigned int nelemPrevious=CAFE::setNelemToRetrieveFromCacheToOne(handle);
|
||||
dbr_string_t val[1]= {""};
|
||||
status=cafeSoluble.getCache(handle, DBR_STRING, val);
|
||||
if (status==ICAFE_NORMAL) {
|
||||
valStr=val[0];
|
||||
}
|
||||
CAFE::setNelemToRetrieveFromCacheToPrevious(handle, nelemPrevious);
|
||||
return status;
|
||||
}
|
||||
|
||||
int getCache(const unsigned int handle, string & valStr) //0
|
||||
{
|
||||
unsigned int nelemPrevious=CAFE::setNelemToRetrieveFromCacheToOne(handle);
|
||||
dbr_string_t val[1]= {""};
|
||||
status=cafeSoluble.getCache(handle, DBR_STRING, val);
|
||||
if (status==ICAFE_NORMAL) {
|
||||
valStr=val[0];
|
||||
}
|
||||
CAFE::setNelemToRetrieveFromCacheToPrevious(handle, nelemPrevious);
|
||||
return status;
|
||||
}
|
||||
int getCache(const unsigned int handle, string & valStr, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity) //0
|
||||
{
|
||||
unsigned int nelemPrevious=CAFE::setNelemToRetrieveFromCacheToOne(handle);
|
||||
dbr_string_t val[1]= {""};
|
||||
status=cafeSoluble.getCache(handle, DBR_STS_STRING, val, alarmStatus, alarmSeverity);
|
||||
if (status==ICAFE_NORMAL) {
|
||||
valStr=val[0];
|
||||
}
|
||||
CAFE::setNelemToRetrieveFromCacheToPrevious(handle, nelemPrevious);
|
||||
return status;
|
||||
}
|
||||
int getCache(const unsigned int handle, string & valStr,
|
||||
dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts) //0
|
||||
{
|
||||
unsigned int nelemPrevious=CAFE::setNelemToRetrieveFromCacheToOne(handle);
|
||||
dbr_string_t val[1]= {""};
|
||||
status=cafeSoluble.getCache(handle, DBR_TIME_STRING, val, alarmStatus, alarmSeverity, ts);
|
||||
if (status==ICAFE_NORMAL) {
|
||||
valStr=val[0];
|
||||
}
|
||||
CAFE::setNelemToRetrieveFromCacheToPrevious(handle, nelemPrevious);
|
||||
return status;
|
||||
}
|
||||
int getCache(const unsigned int handle, dbr_string_t & val); //0
|
||||
int getCache(const unsigned int handle, dbr_string_t & val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity); //0
|
||||
int getCache(const unsigned int handle, dbr_string_t & val,
|
||||
dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts); //0
|
||||
int getCache(const unsigned int handle, dbr_short_t & val); //1
|
||||
int getCache(const unsigned int handle, dbr_short_t & val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity); //1
|
||||
int getCache(const unsigned int handle, dbr_short_t & val,
|
||||
dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts); //1
|
||||
int getCache(const unsigned int handle, dbr_float_t & val); //2
|
||||
int getCache(const unsigned int handle, dbr_float_t & val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity); //2
|
||||
int getCache(const unsigned int handle, dbr_float_t & val,
|
||||
dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts); //2
|
||||
int getCache(const unsigned int handle, dbr_enum_t & val); //3
|
||||
int getCache(const unsigned int handle, dbr_enum_t & val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity); //3
|
||||
int getCache(const unsigned int handle, dbr_enum_t & val,
|
||||
dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts); //3
|
||||
int getCache(const unsigned int handle, dbr_char_t & val); //4
|
||||
int getCache(const unsigned int handle, dbr_char_t & val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity); //4
|
||||
int getCache(const unsigned int handle, dbr_char_t & val,
|
||||
dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts); //4
|
||||
|
||||
int getCacheLong(const unsigned int handle, dbr_long_t & val)
|
||||
{
|
||||
return getCache(handle, val);
|
||||
}
|
||||
|
||||
int getCache(const unsigned int handle, dbr_long_t & val); //5
|
||||
int getCache(const unsigned int handle, dbr_long_t & val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity); //5
|
||||
int getCache(const unsigned int handle, dbr_long_t & val,
|
||||
dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts); //5
|
||||
int getCache(const unsigned int handle, long long & val); //5+
|
||||
int getCache(const unsigned int handle, long long & val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity); //5+
|
||||
int getCache(const unsigned int handle, long long & val,
|
||||
dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts); //5+
|
||||
int getCacheDouble(const unsigned int handle, dbr_double_t & val)
|
||||
{
|
||||
return getCache(handle, val);
|
||||
}
|
||||
|
||||
int getCache(const unsigned int handle, dbr_double_t & val); //6
|
||||
int getCache(const unsigned int handle, dbr_double_t & val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity); //6
|
||||
int getCache(const unsigned int handle, dbr_double_t & val,
|
||||
dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts); //6
|
||||
|
||||
|
||||
//getCache by array of handles
|
||||
//0+
|
||||
int getCache(const unsigned int *handleArray, unsigned int nelem, string * valStr, int *statusArray,
|
||||
dbr_short_t *alarmStatus, dbr_short_t *alarmSeverity, epicsTimeStamp *ts)
|
||||
{
|
||||
dbr_string_t * val = new dbr_string_t[nelem];
|
||||
status=cafeSoluble.getCache(handleArray, nelem, DBR_TIME_STRING, val, statusArray,
|
||||
alarmStatus, alarmSeverity, ts);
|
||||
for (unsigned int i=0; i< nelem; ++i) {
|
||||
valStr[i]=val[i];
|
||||
}
|
||||
delete [] val;
|
||||
return status;
|
||||
};
|
||||
int getCache(const unsigned int *handleArray, unsigned int nelem, string * valStr, int *statusArray,
|
||||
dbr_short_t *alarmStatus, dbr_short_t *alarmSeverity)
|
||||
{
|
||||
dbr_string_t * val = new dbr_string_t[nelem];
|
||||
status=cafeSoluble.getCache(handleArray, nelem, DBR_STS_STRING, val, statusArray,
|
||||
alarmStatus, alarmSeverity);
|
||||
for (unsigned int i=0; i< nelem; ++i) {
|
||||
valStr[i]=val[i];
|
||||
}
|
||||
delete [] val;
|
||||
return status;
|
||||
};
|
||||
int getCache (const unsigned int *handleArray, unsigned int nelem, string * valStr, int *statusArray)
|
||||
{
|
||||
dbr_string_t * val = new dbr_string_t[nelem];
|
||||
status=cafeSoluble.getCache(handleArray, nelem, DBR_STRING, val, statusArray);
|
||||
for (unsigned int i=0; i< nelem; ++i) {
|
||||
valStr[i]=val[i];
|
||||
}
|
||||
delete [] val;
|
||||
return status;
|
||||
}
|
||||
//0
|
||||
int getCache(const unsigned int *handleArray, unsigned int nelem, dbr_string_t * val, int *statusArray,
|
||||
dbr_short_t *alarmStatus, dbr_short_t *alarmSeverity, epicsTimeStamp *ts)
|
||||
{
|
||||
return cafeSoluble.getCache(handleArray, nelem, DBR_TIME_STRING, val, statusArray,
|
||||
alarmStatus, alarmSeverity, ts);
|
||||
};
|
||||
int getCache(const unsigned int *handleArray, unsigned int nelem, dbr_string_t * val, int *statusArray,
|
||||
dbr_short_t *alarmStatus, dbr_short_t *alarmSeverity)
|
||||
{
|
||||
return cafeSoluble.getCache(handleArray, nelem, DBR_STS_STRING, val, statusArray,
|
||||
alarmStatus, alarmSeverity);
|
||||
};
|
||||
int getCache (const unsigned int *handleArray, unsigned int nelem, dbr_string_t * val, int *statusArray)
|
||||
{
|
||||
return cafeSoluble.getCache(handleArray, nelem, DBR_STRING, val, statusArray);
|
||||
}
|
||||
//1
|
||||
int getCache(const unsigned int *handleArray, unsigned int nelem, dbr_short_t * val, int *statusArray,
|
||||
dbr_short_t *alarmStatus, dbr_short_t *alarmSeverity, epicsTimeStamp *ts)
|
||||
{
|
||||
return cafeSchale.getCache(handleArray, nelem, DBR_TIME_SHORT, val, statusArray,
|
||||
alarmStatus, alarmSeverity, ts);
|
||||
};
|
||||
int getCache(const unsigned int *handleArray, unsigned int nelem, dbr_short_t * val, int *statusArray,
|
||||
dbr_short_t *alarmStatus, dbr_short_t *alarmSeverity)
|
||||
{
|
||||
return cafeSchale.getCache(handleArray, nelem, DBR_STS_SHORT, val, statusArray,
|
||||
alarmStatus, alarmSeverity);
|
||||
};
|
||||
int getCache (const unsigned int *handleArray, unsigned int nelem, dbr_short_t * val, int *statusArray)
|
||||
{
|
||||
return cafeSchale.getCache(handleArray, nelem, DBR_SHORT, val, statusArray);
|
||||
}
|
||||
//2
|
||||
int getCache(const unsigned int *handleArray, unsigned int nelem, dbr_float_t * val, int *statusArray,
|
||||
dbr_short_t *alarmStatus, dbr_short_t *alarmSeverity, epicsTimeStamp *ts)
|
||||
{
|
||||
return cafeFrappuccino.getCache(handleArray, nelem, DBR_TIME_FLOAT, val, statusArray,
|
||||
alarmStatus, alarmSeverity, ts);
|
||||
};
|
||||
int getCache(const unsigned int *handleArray, unsigned int nelem, dbr_float_t * val, int *statusArray,
|
||||
dbr_short_t *alarmStatus, dbr_short_t *alarmSeverity)
|
||||
{
|
||||
return cafeFrappuccino.getCache(handleArray, nelem, DBR_STS_FLOAT, val, statusArray,
|
||||
alarmStatus, alarmSeverity);
|
||||
};
|
||||
int getCache (const unsigned int *handleArray, unsigned int nelem, dbr_float_t * val, int *statusArray)
|
||||
{
|
||||
return cafeFrappuccino.getCache(handleArray, nelem, DBR_FLOAT, val, statusArray);
|
||||
}
|
||||
//3
|
||||
int getCache(const unsigned int *handleArray, unsigned int nelem, dbr_ushort_t * val, int *statusArray,
|
||||
dbr_short_t *alarmStatus, dbr_short_t *alarmSeverity, epicsTimeStamp *ts)
|
||||
{
|
||||
return cafeEspresso.getCache(handleArray, nelem, DBR_TIME_ENUM, val, statusArray,
|
||||
alarmStatus, alarmSeverity, ts);
|
||||
};
|
||||
int getCache(const unsigned int *handleArray, unsigned int nelem, dbr_ushort_t * val, int *statusArray,
|
||||
dbr_short_t *alarmStatus, dbr_short_t *alarmSeverity)
|
||||
{
|
||||
return cafeEspresso.getCache(handleArray, nelem, DBR_STS_ENUM, val, statusArray,
|
||||
alarmStatus, alarmSeverity);
|
||||
};
|
||||
int getCache (const unsigned int *handleArray, unsigned int nelem, dbr_ushort_t * val, int *statusArray)
|
||||
{
|
||||
return cafeEspresso.getCache(handleArray, nelem, DBR_ENUM, val, statusArray);
|
||||
}
|
||||
//4
|
||||
int getCache(const unsigned int *handleArray, unsigned int nelem, dbr_char_t * val, int *statusArray,
|
||||
dbr_short_t *alarmStatus, dbr_short_t *alarmSeverity, epicsTimeStamp *ts)
|
||||
{
|
||||
return cafeCappuccino.getCache(handleArray, nelem, DBR_TIME_CHAR, val, statusArray,
|
||||
alarmStatus, alarmSeverity, ts);
|
||||
};
|
||||
int getCache(const unsigned int *handleArray, unsigned int nelem, dbr_char_t * val, int *statusArray,
|
||||
dbr_short_t *alarmStatus, dbr_short_t *alarmSeverity)
|
||||
{
|
||||
return cafeCappuccino.getCache(handleArray, nelem, DBR_STS_CHAR, val, statusArray,
|
||||
alarmStatus, alarmSeverity);
|
||||
};
|
||||
int getCache (const unsigned int *handleArray, unsigned int nelem, dbr_char_t * val, int *statusArray)
|
||||
{
|
||||
return cafeCappuccino.getCache(handleArray, nelem, DBR_CHAR, val, statusArray);
|
||||
}
|
||||
//5
|
||||
int getCache(unsigned int *handleArray, unsigned int nelem, dbr_long_t * val, int *statusArray,
|
||||
dbr_short_t *alarmStatus, dbr_short_t *alarmSeverity, epicsTimeStamp *ts)
|
||||
{
|
||||
return cafeLatte.getCache(handleArray, nelem, DBR_TIME_LONG, val, statusArray,
|
||||
alarmStatus, alarmSeverity, ts);
|
||||
};
|
||||
int getCache(const unsigned int *handleArray, unsigned int nelem, dbr_long_t * val, int *statusArray,
|
||||
dbr_short_t *alarmStatus, dbr_short_t *alarmSeverity)
|
||||
{
|
||||
return cafeLatte.getCache(handleArray, nelem, DBR_STS_LONG, val, statusArray,
|
||||
alarmStatus, alarmSeverity);
|
||||
};
|
||||
int getCache (const unsigned int *handleArray, unsigned int nelem, dbr_long_t * val, int *statusArray)
|
||||
{
|
||||
return cafeLatte.getCache(handleArray, nelem, DBR_LONG, val, statusArray);
|
||||
}
|
||||
//5+ long long
|
||||
int getCache(const unsigned int *handleArray, unsigned int nelem, long long * val, int *statusArray,
|
||||
dbr_short_t *alarmStatus, dbr_short_t *alarmSeverity, epicsTimeStamp *ts);
|
||||
|
||||
int getCache(const unsigned int *handleArray, unsigned int nelem, long long * val, int *statusArray,
|
||||
dbr_short_t *alarmStatus, dbr_short_t *alarmSeverity);
|
||||
|
||||
int getCache (const unsigned int *handleArray, unsigned int nelem, long long * val, int *statusArray);
|
||||
//6
|
||||
int getCache(const unsigned int *handleArray, unsigned int nelem, dbr_double_t * val, int *statusArray,
|
||||
dbr_short_t *alarmStatus, dbr_short_t *alarmSeverity, epicsTimeStamp *ts)
|
||||
{
|
||||
return cafeDoppio.getCache(handleArray, nelem, DBR_TIME_DOUBLE, val, statusArray,
|
||||
alarmStatus, alarmSeverity, ts);
|
||||
};
|
||||
int getCache(const unsigned int *handleArray, unsigned int nelem, dbr_double_t * val, int *statusArray,
|
||||
dbr_short_t *alarmStatus, dbr_short_t *alarmSeverity)
|
||||
{
|
||||
return cafeDoppio.getCache(handleArray, nelem, DBR_STS_DOUBLE, val, statusArray,
|
||||
alarmStatus, alarmSeverity);
|
||||
};
|
||||
int getCache (const unsigned int *handleArray, unsigned int nelem, dbr_double_t * val, int *statusArray)
|
||||
{
|
||||
return cafeDoppio.getCache(handleArray, nelem, DBR_DOUBLE, val, statusArray);
|
||||
}
|
||||
|
||||
////////////////////////////////////////////// by PV name ///////////////////////////////////
|
||||
|
||||
int getCache(const char * pv, string & valStr); //0+
|
||||
int getCache(const char * pv, string & valStr, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity); //0+
|
||||
int getCache(const char * pv, string & valStr,
|
||||
dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts); //0+
|
||||
int getCache(const char * pv, dbr_string_t & val); //0
|
||||
int getCache(const char * pv, dbr_string_t & val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity); //0
|
||||
int getCache(const char * pv, dbr_string_t & val,
|
||||
dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts); //0
|
||||
int getCache(const char * pv, dbr_short_t & val); //1
|
||||
int getCache(const char * pv, dbr_short_t & val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity); //1
|
||||
int getCache(const char * pv, dbr_short_t & val,
|
||||
dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts); //1
|
||||
int getCache(const char * pv, dbr_float_t & val); //2
|
||||
int getCache(const char * pv, dbr_float_t & val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity); //2
|
||||
int getCache(const char * pv, dbr_float_t & val,
|
||||
dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts); //2
|
||||
int getCache(const char * pv, dbr_enum_t & val); //3
|
||||
int getCache(const char * pv, dbr_enum_t & val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity); //3
|
||||
int getCache(const char * pv, dbr_enum_t & val,
|
||||
dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts); //3
|
||||
int getCache(const char * pv, dbr_char_t & val); //4
|
||||
int getCache(const char * pv, dbr_char_t & val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity); //4
|
||||
int getCache(const char * pv, dbr_char_t & val,
|
||||
dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts); //4
|
||||
int getCache(const char * pv, dbr_long_t & val); //5
|
||||
int getCache(const char * pv, dbr_long_t & val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity); //5
|
||||
int getCache(const char * pv, dbr_long_t & val,
|
||||
dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts); //5
|
||||
int getCache(const char * pv, long long & val) //5+
|
||||
{
|
||||
unsigned int handle=handleHelper.getHandleFromPV(pv);
|
||||
return CAFE::getCache(handle, val);
|
||||
}
|
||||
int getCache(const char * pv, long long & val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity) //5+
|
||||
{
|
||||
unsigned int handle=handleHelper.getHandleFromPV(pv);
|
||||
return CAFE::getCache(handle, val, alarmStatus, alarmSeverity);
|
||||
}
|
||||
int getCache(const char * pv, long long & val,
|
||||
dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts) //5+
|
||||
{
|
||||
unsigned int handle=handleHelper.getHandleFromPV(pv);
|
||||
return CAFE::getCache(handle, val, alarmStatus, alarmSeverity, ts);
|
||||
}
|
||||
int getCache(const char * pv, dbr_double_t & val); //6
|
||||
int getCache(const char * pv, dbr_double_t & val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity); //6
|
||||
int getCache(const char * pv, dbr_double_t & val,
|
||||
dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts); //6
|
||||
|
||||
|
||||
//6
|
||||
int getCache(const char * pv, dbr_double_t * _val)
|
||||
{
|
||||
unsigned int handle=handleHelper.getHandleFromPV(pv);
|
||||
return cafeDoppio.getCache(handle, DBR_DOUBLE, _val);
|
||||
};
|
||||
int getCache(const char * pv, dbr_double_t * _val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity)
|
||||
{
|
||||
unsigned int handle=handleHelper.getHandleFromPV(pv);
|
||||
return cafeDoppio.getCache(handle, DBR_STS_DOUBLE, _val, alarmStatus, alarmSeverity);
|
||||
};
|
||||
int getCache(const char * pv, dbr_double_t * _val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts)
|
||||
{
|
||||
unsigned int handle=handleHelper.getHandleFromPV(pv);
|
||||
return cafeDoppio.getCache(handle, DBR_TIME_DOUBLE, _val, alarmStatus, alarmSeverity, ts);
|
||||
};
|
||||
|
||||
//5+
|
||||
int getCache(const char * pv, long long * _val)
|
||||
{
|
||||
unsigned int handle=handleHelper.getHandleFromPV(pv);
|
||||
return CAFE::getCache(handle, _val);
|
||||
};
|
||||
int getCache(const char * pv, long long * _val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity)
|
||||
{
|
||||
unsigned int handle=handleHelper.getHandleFromPV(pv);
|
||||
return CAFE::getCache(handle, _val, alarmStatus, alarmSeverity);
|
||||
};
|
||||
int getCache(const char * pv, long long * _val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts)
|
||||
{
|
||||
unsigned int handle=handleHelper.getHandleFromPV(pv);
|
||||
return CAFE::getCache(handle, _val, alarmStatus, alarmSeverity, ts);
|
||||
};
|
||||
|
||||
//5
|
||||
int getCache(const char * pv, dbr_long_t * _val)
|
||||
{
|
||||
unsigned int handle=handleHelper.getHandleFromPV(pv);
|
||||
return cafeLatte.getCache(handle, DBR_LONG, _val);
|
||||
};
|
||||
int getCache(const char * pv, dbr_long_t * _val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity)
|
||||
{
|
||||
unsigned int handle=handleHelper.getHandleFromPV(pv);
|
||||
return cafeLatte.getCache(handle, DBR_STS_LONG, _val, alarmStatus, alarmSeverity);
|
||||
};
|
||||
int getCache(const char * pv, dbr_long_t * _val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts)
|
||||
{
|
||||
unsigned int handle=handleHelper.getHandleFromPV(pv);
|
||||
return cafeLatte.getCache(handle, DBR_TIME_LONG, _val, alarmStatus, alarmSeverity, ts);
|
||||
};
|
||||
//4
|
||||
int getCache(const char * pv, dbr_char_t * _val)
|
||||
{
|
||||
unsigned int handle=handleHelper.getHandleFromPV(pv);
|
||||
return cafeCappuccino.getCache(handle, DBR_CHAR, _val);
|
||||
};
|
||||
int getCache(const char * pv, dbr_char_t * _val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity)
|
||||
{
|
||||
unsigned int handle=handleHelper.getHandleFromPV(pv);
|
||||
return cafeCappuccino.getCache(handle, DBR_STS_ENUM, _val, alarmStatus, alarmSeverity);
|
||||
};
|
||||
int getCache(const char * pv, dbr_char_t * _val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts)
|
||||
{
|
||||
unsigned int handle=handleHelper.getHandleFromPV(pv);
|
||||
return cafeCappuccino.getCache(handle, DBR_TIME_ENUM, _val, alarmStatus, alarmSeverity, ts);
|
||||
};
|
||||
//3
|
||||
int getCache(const char * pv, dbr_enum_t * _val)
|
||||
{
|
||||
unsigned int handle=handleHelper.getHandleFromPV(pv);
|
||||
return cafeEspresso.getCache(handle, DBR_ENUM, _val);
|
||||
};
|
||||
int getCache(const char * pv, dbr_enum_t * _val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity)
|
||||
{
|
||||
unsigned int handle=handleHelper.getHandleFromPV(pv);
|
||||
return cafeEspresso.getCache(handle, DBR_STS_ENUM, _val, alarmStatus, alarmSeverity);
|
||||
};
|
||||
int getCache(const char * pv, dbr_enum_t * _val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts)
|
||||
{
|
||||
unsigned int handle=handleHelper.getHandleFromPV(pv);
|
||||
return cafeEspresso.getCache(handle, DBR_TIME_ENUM, _val, alarmStatus, alarmSeverity, ts);
|
||||
};
|
||||
//2
|
||||
int getCache(const char * pv, dbr_float_t * _val)
|
||||
{
|
||||
unsigned int handle=handleHelper.getHandleFromPV(pv);
|
||||
return cafeFrappuccino.getCache(handle, DBR_FLOAT, _val);
|
||||
};
|
||||
int getCache(const char * pv, dbr_float_t * _val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity)
|
||||
{
|
||||
unsigned int handle=handleHelper.getHandleFromPV(pv);
|
||||
return cafeFrappuccino.getCache(handle, DBR_STS_FLOAT, _val, alarmStatus, alarmSeverity);
|
||||
};
|
||||
int getCache(const char * pv, dbr_float_t * _val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts)
|
||||
{
|
||||
unsigned int handle=handleHelper.getHandleFromPV(pv);
|
||||
return cafeFrappuccino.getCache(handle, DBR_TIME_FLOAT, _val, alarmStatus, alarmSeverity, ts);
|
||||
};
|
||||
//1
|
||||
int getCache(const char * pv, dbr_short_t * _val)
|
||||
{
|
||||
unsigned int handle=handleHelper.getHandleFromPV(pv);
|
||||
return cafeSchale.getCache(handle, DBR_SHORT, _val);
|
||||
};
|
||||
int getCache(const char * pv, dbr_short_t * _val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity)
|
||||
{
|
||||
unsigned int handle=handleHelper.getHandleFromPV(pv);
|
||||
return cafeSchale.getCache(handle, DBR_STS_SHORT, _val, alarmStatus, alarmSeverity);
|
||||
};
|
||||
int getCache(const char * pv, dbr_short_t * _val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts)
|
||||
{
|
||||
unsigned int handle=handleHelper.getHandleFromPV(pv);
|
||||
return cafeSchale.getCache(handle, DBR_TIME_SHORT, _val, alarmStatus, alarmSeverity, ts);
|
||||
};
|
||||
//0
|
||||
int getCache(const char * pv, dbr_string_t * _val)
|
||||
{
|
||||
unsigned int handle=handleHelper.getHandleFromPV(pv);
|
||||
return cafeSoluble.getCache(handle, DBR_STRING, _val);
|
||||
};
|
||||
int getCache(const char * pv, dbr_string_t * _val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity)
|
||||
{
|
||||
unsigned int handle=handleHelper.getHandleFromPV(pv);
|
||||
return cafeSoluble.getCache(handle, DBR_STS_STRING, _val, alarmStatus, alarmSeverity);
|
||||
};
|
||||
int getCache(const char * pv, dbr_string_t * _val, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts)
|
||||
{
|
||||
unsigned int handle=handleHelper.getHandleFromPV(pv);
|
||||
return cafeSoluble.getCache(handle, DBR_TIME_STRING, _val, alarmStatus, alarmSeverity, ts);
|
||||
}
|
||||
//0+
|
||||
int getCache(const char * pv, string * valStr)
|
||||
{
|
||||
unsigned int handle=handleHelper.getHandleFromPV(pv);
|
||||
dbr_string_t * _val = new dbr_string_t[handleHelper.getNelemRequest(handle)];
|
||||
status=cafeSoluble.getCache(handle, DBR_STRING, _val);
|
||||
for (unsigned int i=0; i< handleHelper.getNelemRequest(handle); ++i) {
|
||||
valStr[i]=_val[i];
|
||||
}
|
||||
delete [] _val;
|
||||
return status;
|
||||
};
|
||||
int getCache(const char * pv, string * valStr, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity)
|
||||
{
|
||||
unsigned int handle=handleHelper.getHandleFromPV(pv);
|
||||
dbr_string_t * _val = new dbr_string_t[handleHelper.getNelemRequest(handle)];
|
||||
status=cafeSoluble.getCache(handle, DBR_STS_STRING, _val, alarmStatus, alarmSeverity);
|
||||
for (unsigned int i=0; i< handleHelper.getNelemRequest(handle); ++i) {
|
||||
valStr[i]=_val[i];
|
||||
}
|
||||
delete [] _val;
|
||||
return status;
|
||||
};
|
||||
int getCache(const char * pv, string * valStr, dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts)
|
||||
{
|
||||
unsigned int handle=handleHelper.getHandleFromPV(pv);
|
||||
dbr_string_t * _val = new dbr_string_t[handleHelper.getNelemRequest(handle)];
|
||||
status=cafeSoluble.getCache(handle, DBR_TIME_STRING, _val, alarmStatus, alarmSeverity, ts);
|
||||
for (unsigned int i=0; i< handleHelper.getNelemRequest(handle); ++i) {
|
||||
valStr[i]=_val[i];
|
||||
}
|
||||
delete [] _val;
|
||||
return status;
|
||||
}
|
||||
|
||||
#endif // CAFECACHE_H
|
||||
@@ -237,9 +237,12 @@ private:
|
||||
//void * PyDataEventHandler() const;
|
||||
//void * PyCtrlEventHandler() const;
|
||||
|
||||
void * CyEventHandler() const;
|
||||
void * CyDataEventHandler() const;
|
||||
void * CyCtrlEventHandler() const;
|
||||
void * CyMonitorHandler() const; //can handle all three cb signatures
|
||||
|
||||
//void * CyHandleHandler() const; //handle
|
||||
//void * CyEventHandler() const; //handle, pv
|
||||
//void * CyDataEventHandler() const; //handle, pv, pvdata
|
||||
void * CyCtrlEventHandler() const; //handle, pv, pvctrl
|
||||
|
||||
bool pyOpenCallbackFlag;
|
||||
|
||||
@@ -738,6 +741,8 @@ public:
|
||||
std::cout << "getMonitorPolicyVector(monitor_id): " << monitor_id << " NOT FOUND! " << std::endl;
|
||||
std::cout << "Could not modify entry!" << std::endl;
|
||||
}
|
||||
MonitorPolicy mp;
|
||||
return mp;
|
||||
};
|
||||
|
||||
std::vector<MonitorPolicy> getMonitorPolicyVector(void) const
|
||||
|
||||
@@ -15,6 +15,7 @@
|
||||
/**
|
||||
* Friend to Conduit/CAFEGroup records the connection_handler_args struct from callback fns
|
||||
* in hash table
|
||||
* Function is not invoked on closechannel by user
|
||||
*/
|
||||
struct change_connectionHandlerArgs
|
||||
{
|
||||
@@ -34,7 +35,7 @@ struct change_connectionHandlerArgs
|
||||
// but we do not overwrite it upon disconnect.
|
||||
|
||||
//std::cout << __FILE__ << "//" << __LINE__ << "//" << __METHOD__ << std::endl;
|
||||
|
||||
//std::cout << new_connectionHandlerArgs.op << std::endl;
|
||||
//connectFlag
|
||||
if (new_connectionHandlerArgs.op == CA_OP_CONN_UP)
|
||||
{
|
||||
|
||||
@@ -22,18 +22,19 @@ struct change_eventHandlerArgs
|
||||
#define __METHOD__ "change_eventHandlerArgs"
|
||||
change_eventHandlerArgs (const struct event_handler_args & new_eventHandlerArgs) :
|
||||
new_eventHandlerArgs(new_eventHandlerArgs) {}
|
||||
|
||||
|
||||
void operator() (Conduit& c)
|
||||
{
|
||||
|
||||
|
||||
//c.eventHandlerArgs = new_eventHandlerArgs;
|
||||
c.status= new_eventHandlerArgs.status;
|
||||
|
||||
if(c.status!=ECA_NORMAL) {
|
||||
std::cout << __METHOD__ << " STATUS IS " << c.status << std::endl;
|
||||
std::cout << __METHOD__ << " return from method enforced " << std::endl;
|
||||
std::cout << __METHOD__ << " return from method ***IS*** enforced " << std::endl;
|
||||
return;
|
||||
}
|
||||
//std::cout << __METHOD__ << " STATUS IS " << c.status << std::endl;
|
||||
|
||||
Helper helper;
|
||||
|
||||
@@ -641,9 +642,16 @@ struct change_eventHandlerArgs
|
||||
((struct dbr_ctrl_double *) new_eventHandlerArgs.dbr)->precision;
|
||||
(*(&((c.ctrlBuffer)->cdblval.RISC_pad0))) =
|
||||
(dbr_short_t) ((struct dbr_ctrl_double *) new_eventHandlerArgs.dbr)->RISC_pad0; //dbr_short_t
|
||||
//std::cout << __METHOD__ << __LINE__ << std::endl;
|
||||
|
||||
//std::cout << ((struct dbr_ctrl_double *) new_eventHandlerArgs.dbr)->units << std::endl;
|
||||
|
||||
memcpy((*(&((c.ctrlBuffer)->cdblval.units))),
|
||||
&(((struct dbr_ctrl_double *) new_eventHandlerArgs.dbr)->units),
|
||||
sizeof(char[MAX_UNITS_SIZE]));
|
||||
sizeof( char[MAX_UNITS_SIZE])); // (((struct dbr_ctrl_double *) new_eventHandlerArgs.dbr)->units) ));
|
||||
|
||||
|
||||
|
||||
(*(&((c.ctrlBuffer)->cdblval.upper_disp_limit))) =
|
||||
((struct dbr_ctrl_double *) new_eventHandlerArgs.dbr)->upper_disp_limit;
|
||||
(*(&((c.ctrlBuffer)->cdblval.lower_disp_limit))) =
|
||||
|
||||
@@ -696,7 +696,7 @@ public:
|
||||
}
|
||||
else
|
||||
{
|
||||
std::cout<< "Input handle " << handle << " does not exists! " << std::endl;
|
||||
std::cout<< "Input handle " << handle << " does not exist! " << std::endl;
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -83,6 +83,17 @@ public:
|
||||
ca_client_context * getContextFromPV (const char * _pv);
|
||||
ca_client_context * getContextFromHandle (unsigned int _handle);
|
||||
|
||||
cafeConduit_set_by_handle::iterator getIterFromHandle(unsigned int handle);
|
||||
cafeConduit_set_by_handle & getcsHandleIndex();
|
||||
int modifyHandleIndexStatus(unsigned int handle, long status);
|
||||
int modifyChannelRequestMetaDataClient(unsigned int handle,
|
||||
ChannelRequestMetaDataClient channelRequestMetaDataClient);
|
||||
int modifyChannelRequestStatusGet(unsigned int handle,
|
||||
ChannelRequestStatus channelRequestStatusGet);
|
||||
|
||||
int modifyChannelTimeoutPolicyGet(unsigned int handle,
|
||||
ChannelTimeoutPolicy channelTimeoutPolicyGet);
|
||||
|
||||
const char * getPVFromHandle (unsigned int _handle);
|
||||
const char * getPVFromHandle (unsigned int _handle, ca_client_context * ccc);
|
||||
|
||||
@@ -93,6 +104,8 @@ public:
|
||||
const char * getPVAlias (unsigned int _handle);
|
||||
const char * getPVAlias (unsigned int _handle, ca_client_context * ccc);
|
||||
|
||||
|
||||
|
||||
unsigned int getHandleFromPV (const char * _pv);
|
||||
unsigned int getHandleFromPV (const char * _pv, ca_client_context * ccc);
|
||||
unsigned int getHandleFromPVAlias(const char * _pv);
|
||||
@@ -327,6 +340,9 @@ public:
|
||||
int getMonitorAction(unsigned int _handle, std::vector<std::string> &msV);
|
||||
std::vector<std::string> getMonitorAction(bool onlyIfNewData); //all handles; false gives all
|
||||
|
||||
int updateMonitorPolicyDeltaMS(unsigned int _handle, unsigned int _monid,
|
||||
unsigned short deltaMS);
|
||||
|
||||
int getMonitorPolicyVector(unsigned int _handle, std::vector<MonitorPolicy> &mpV);
|
||||
int getMonitorPolicyInWaitingVector(unsigned int _handle, std::vector<MonitorPolicy> &mpV);
|
||||
int getNmonitor(unsigned int _handle);
|
||||
|
||||
3161
include/instant.cpp
3161
include/instant.cpp
File diff suppressed because it is too large
Load Diff
4188
include/instant.h
4188
include/instant.h
File diff suppressed because it is too large
Load Diff
61
include/instantT.h
Normal file
61
include/instantT.h
Normal file
@@ -0,0 +1,61 @@
|
||||
///
|
||||
/// \file instantT.h
|
||||
/// \author Jan Chrin, PSI
|
||||
/// \date Release: July 2021
|
||||
/// \version CAFE 1.14.2
|
||||
///
|
||||
|
||||
|
||||
#ifndef INSTANT_T_H
|
||||
#define INSTANT_T_H
|
||||
|
||||
#include <instant.h>
|
||||
|
||||
template <class CTYPE> int Instant<CTYPE>::set(const unsigned int _handle,
|
||||
const chtype _dbrType, const CTYPE * _val );
|
||||
|
||||
template <class CTYPE> int Instant<CTYPE>::get(const unsigned int _handle,
|
||||
const chtype _dbrType, CTYPE * _val,
|
||||
dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts);
|
||||
|
||||
template <class CTYPE> int Instant<CTYPE>::getCache(const unsigned int _handle,
|
||||
const chtype _dbrType, CTYPE * _val,
|
||||
dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts);
|
||||
|
||||
template <class CTYPE> int Instant<CTYPE>::getCache(const unsigned int *handleArray, const unsigned int nelem,
|
||||
const chtype _dbrType, CTYPE * val, int *statusArray,
|
||||
dbr_short_t *alarmStatus, dbr_short_t *alarmSeverity, epicsTimeStamp *ts);
|
||||
|
||||
template <class CTYPE> int Instant<CTYPE>::set(const unsigned int *handleArray, const unsigned int nelem,
|
||||
onst chtype _dbrType, const CTYPE * val, int *statusArray);
|
||||
|
||||
template <class CTYPE> int Instant<CTYPE>::clientRequests(
|
||||
const unsigned int _handle,
|
||||
const chtype _dbrType, CTYPE * _val,
|
||||
dbr_short_t &alarmStatus, dbr_short_t &alarmSeverity, epicsTimeStamp &ts, bool isCacheRequest);
|
||||
|
||||
|
||||
template <class CTYPE> int Instant<CTYPE>::clientRequests(
|
||||
const unsigned int _handle, const chtype _dbrType, const CTYPE * _val);
|
||||
|
||||
|
||||
template <class CTYPE> int Instant<CTYPE>::setAndGet(const unsigned int handleSet, const chtype dbrType, CTYPE valSet, CTYPE &valGet);
|
||||
template <class CTYPE> int Instant<CTYPE>::setMany(std::vector<unsigned int> handleSet, const chtype dbrType, std::vector<CTYPE> valSet, bool printFlag);
|
||||
template <class CTYPE> int Instant<CTYPE>::compareAndMatchMany(std::vector<unsigned int> handleSet, const chtype dbrType, std::vector<CTYPE> valSet, std::vector<unsigned int> handleMatch,
|
||||
CTYPE tolerance, double timeout, bool printFlag);
|
||||
|
||||
//template <class CTYPE> int Instant<CTYPE>::setTriggerAndMatchMany(std::vector<unsigned int> handleSet, chtype dbrType, std::vector<CTYPE> valSet,
|
||||
template <class CTYPE> int Instant<CTYPE>::setAndMatchMany(std::vector<unsigned int> handleSet, chtype dbrType, std::vector<CTYPE> valSet, std::vector<unsigned int> handleMatch,
|
||||
CTYPE tolerance, double timeout, bool printFlag);
|
||||
|
||||
template <class CTYPE> int Instant<CTYPE>::setAndMatch(const unsigned int handleSet, const chtype dbrType, CTYPE valSet, const unsigned int handleMatch,
|
||||
CTYPE tolerance, double timeout, bool printFlag);
|
||||
|
||||
template <class CTYPE> int Instant<CTYPE>::match(const chtype dbrType, CTYPE valSet, unsigned int handleMatch,
|
||||
CTYPE tolerance, double timeout, bool printFlag);
|
||||
|
||||
|
||||
template <class CTYPE> int Instant<CTYPE>::matchMany(const chtype dbrType, std::vector<CTYPE> valSet, std::vector<unsigned int> handleMatch, CTYPE tolerance, double timeout, bool printFlag);
|
||||
|
||||
|
||||
#endif
|
||||
260
include/makefile
260
include/makefile
@@ -1,9 +1,8 @@
|
||||
# makefile.in generated by automake 1.11.1 from makefile.am.
|
||||
# makefile.in generated by automake 1.13.4 from makefile.am.
|
||||
# include/makefile. Generated from makefile.in by configure.
|
||||
|
||||
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
|
||||
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
|
||||
# Inc.
|
||||
# Copyright (C) 1994-2013 Free Software Foundation, Inc.
|
||||
|
||||
# This Makefile.in is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
@@ -16,6 +15,51 @@
|
||||
|
||||
|
||||
|
||||
am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
|
||||
am__make_running_with_option = \
|
||||
case $${target_option-} in \
|
||||
?) ;; \
|
||||
*) echo "am__make_running_with_option: internal error: invalid" \
|
||||
"target option '$${target_option-}' specified" >&2; \
|
||||
exit 1;; \
|
||||
esac; \
|
||||
has_opt=no; \
|
||||
sane_makeflags=$$MAKEFLAGS; \
|
||||
if $(am__is_gnu_make); then \
|
||||
sane_makeflags=$$MFLAGS; \
|
||||
else \
|
||||
case $$MAKEFLAGS in \
|
||||
*\\[\ \ ]*) \
|
||||
bs=\\; \
|
||||
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
|
||||
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
|
||||
esac; \
|
||||
fi; \
|
||||
skip_next=no; \
|
||||
strip_trailopt () \
|
||||
{ \
|
||||
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
|
||||
}; \
|
||||
for flg in $$sane_makeflags; do \
|
||||
test $$skip_next = yes && { skip_next=no; continue; }; \
|
||||
case $$flg in \
|
||||
*=*|--*) continue;; \
|
||||
-*I) strip_trailopt 'I'; skip_next=yes;; \
|
||||
-*I?*) strip_trailopt 'I';; \
|
||||
-*O) strip_trailopt 'O'; skip_next=yes;; \
|
||||
-*O?*) strip_trailopt 'O';; \
|
||||
-*l) strip_trailopt 'l'; skip_next=yes;; \
|
||||
-*l?*) strip_trailopt 'l';; \
|
||||
-[dEDm]) skip_next=yes;; \
|
||||
-[JT]) skip_next=yes;; \
|
||||
esac; \
|
||||
case $$flg in \
|
||||
*$$target_option*) has_opt=yes; break;; \
|
||||
esac; \
|
||||
done; \
|
||||
test $$has_opt = yes
|
||||
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
|
||||
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
|
||||
pkgdatadir = $(datadir)/cafe
|
||||
pkgincludedir = $(includedir)/cafe
|
||||
pkglibdir = $(libdir)/cafe
|
||||
@@ -38,12 +82,15 @@ host_triplet = x86_64-unknown-linux-gnu
|
||||
# bitshuffle/bitshuffle_core.h bitshuffle/bitshuffle.h bitshuffle/iochain.h \
|
||||
# bitshuffle/bitshuffle_internals.h
|
||||
|
||||
#bitshuffle/bshuf_h5filter.h
|
||||
#am__append_2 = PyCafe_api.h
|
||||
#am__append_3 = PyCafe.h
|
||||
|
||||
#if HAVE_PYTHON_
|
||||
#include_HEADERS += PyCafe_api.h
|
||||
#endif
|
||||
am__append_2 = PyCafe.h
|
||||
#am__append_3 = PyCafe_api.h
|
||||
subdir = include
|
||||
DIST_COMMON = $(am__include_HEADERS_DIST) $(srcdir)/makefile.am \
|
||||
$(srcdir)/makefile.in
|
||||
DIST_COMMON = $(srcdir)/makefile.in $(srcdir)/makefile.am \
|
||||
$(am__include_HEADERS_DIST)
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
|
||||
$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
|
||||
@@ -55,8 +102,25 @@ mkinstalldirs = $(install_sh) -d
|
||||
CONFIG_HEADER = $(top_builddir)/./include/config.h
|
||||
CONFIG_CLEAN_FILES =
|
||||
CONFIG_CLEAN_VPATH_FILES =
|
||||
AM_V_P = $(am__v_P_$(V))
|
||||
am__v_P_ = $(am__v_P_$(AM_DEFAULT_VERBOSITY))
|
||||
am__v_P_0 = false
|
||||
am__v_P_1 = :
|
||||
AM_V_GEN = $(am__v_GEN_$(V))
|
||||
am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY))
|
||||
am__v_GEN_0 = @echo " GEN " $@;
|
||||
am__v_GEN_1 =
|
||||
AM_V_at = $(am__v_at_$(V))
|
||||
am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY))
|
||||
am__v_at_0 = @
|
||||
am__v_at_1 =
|
||||
SOURCES =
|
||||
DIST_SOURCES =
|
||||
am__can_run_installinfo = \
|
||||
case $$AM_UPDATE_INFO_DIR in \
|
||||
n|no|NO) false;; \
|
||||
*) (install-info --version) >/dev/null 2>&1;; \
|
||||
esac
|
||||
am__include_HEADERS_DIST = config.h cafe.h cafeCache.h cafeConvert.h \
|
||||
cafeDataType.h cafeDataTypeHelper.h cafeEnum.h \
|
||||
cafeEnumStrings.h cafeRoast.h cafeVectors.h cafeXML.h \
|
||||
@@ -65,14 +129,14 @@ am__include_HEADERS_DIST = config.h cafe.h cafeCache.h cafeConvert.h \
|
||||
conduitFriends.h connect.h defines.h deviceCollection.h \
|
||||
exceptions.h exceptionsHelper.h global.h enumStrings.h \
|
||||
granules.h handleHelper.h hashConduit.h helper.h instant.h \
|
||||
instant.cpp loadCollectionXMLParser.h loadGroupXMLParser.h \
|
||||
loadCollectionXMLParser.h loadGroupXMLParser.h \
|
||||
methodCallbacks.h policies.h policyHelper.h PVCtrlHolder.h \
|
||||
PVDataHolder.h PVGroup.h PVHolder.h statusCodes.h transpose.h \
|
||||
conduitGroup.h hashConduitGroup.h restorePVGroupXMLParser.h \
|
||||
tmDateMap.h zbsread.h zbsHash.h zbsdtHelper.h zbsDataHolders.h \
|
||||
bitshuffle/bitshuffle_core.h bitshuffle/bitshuffle.h \
|
||||
bitshuffle/iochain.h bitshuffle/bitshuffle_internals.h \
|
||||
PyCafe_api.h PyCafe.h
|
||||
PyCafe.h PyCafe_api.h
|
||||
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
|
||||
am__vpath_adj = case $$p in \
|
||||
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
|
||||
@@ -94,28 +158,52 @@ am__nobase_list = $(am__nobase_strip_setup); \
|
||||
am__base_list = \
|
||||
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
|
||||
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
|
||||
am__uninstall_files_from_dir = { \
|
||||
test -z "$$files" \
|
||||
|| { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
|
||||
|| { echo " ( cd '$$dir' && rm -f" $$files ")"; \
|
||||
$(am__cd) "$$dir" && rm -f $$files; }; \
|
||||
}
|
||||
am__installdirs = "$(DESTDIR)$(includedir)"
|
||||
HEADERS = $(include_HEADERS)
|
||||
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
|
||||
# Read a list of newline-separated strings from the standard input,
|
||||
# and print each of them once, without duplicates. Input order is
|
||||
# *not* preserved.
|
||||
am__uniquify_input = $(AWK) '\
|
||||
BEGIN { nonempty = 0; } \
|
||||
{ items[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in items) print i; }; } \
|
||||
'
|
||||
# Make sure the list of sources is unique. This is necessary because,
|
||||
# e.g., the same source file might be shared among _SOURCES variables
|
||||
# for different programs/libraries.
|
||||
am__define_uniq_tagged_files = \
|
||||
list='$(am__tagged_files)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | $(am__uniquify_input)`
|
||||
ETAGS = etags
|
||||
CTAGS = ctags
|
||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||
ACLOCAL = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing --run aclocal-1.11
|
||||
AMTAR = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing --run tar
|
||||
AM_CPPFLAGS = -fexceptions -fPIC -std=c++1z -I/usr/local/epics/base/include/ -I/usr/local/epics/base/include/os/Linux -I/opt/gfa/cafe/boost/boost_1_61_0/include/boost -I/opt/gfa/cafe/boost/boost_1_61_0/include
|
||||
AM_LDFLAGS = -L/usr/local/epics/base/lib/SL6-x86_64 -Wl,-rpath,/usr/local/epics/base/lib/SL6-x86_64
|
||||
ACLOCAL = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing aclocal-1.13
|
||||
AMTAR = $${TAR-tar}
|
||||
AM_CPPFLAGS = -fexceptions -fPIC -std=c++1z -I/usr/local/epics/base/include/ -I/usr/local/epics/base/include/os/Linux -I/opt/gfa/cafe/boost/boost_1_61_0/include/boost -I/opt/gfa/cafe/boost/boost_1_61_0/include -I/ioc/python/latest/include/python3.10 -I/ioc/python/latest/lib/python3.10/site-packages/numpy/core/include
|
||||
AM_DEFAULT_VERBOSITY = 1
|
||||
AM_LDFLAGS = -L/usr/local/epics/base/lib/RHEL7-x86_64 -Wl,-rpath,/usr/local/epics/base/lib/RHEL7-x86_64 -L/ioc/python/latest/lib -Wl,-rpath,/ioc/python/latest/lib
|
||||
AR = ar
|
||||
AUTOCONF = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing --run autoconf
|
||||
AUTOHEADER = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing --run autoheader
|
||||
AUTOMAKE = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing --run automake-1.11
|
||||
AUTOCONF = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing autoconf
|
||||
AUTOHEADER = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing autoheader
|
||||
AUTOMAKE = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing automake-1.13
|
||||
AWK = gawk
|
||||
CAFE_CPPFLAGS = -I$(top_srcdir)/include
|
||||
CC = /opt/psi/Programming/gcc/6.3.0/bin/gcc
|
||||
CC = /opt/psi/Programming/gcc/9.3.0/bin/gcc
|
||||
CCDEPMODE = depmode=gcc3
|
||||
CFLAGS = -g -O2
|
||||
CPP = /opt/psi/Programming/gcc/6.3.0/bin/gcc -E
|
||||
CPPFLAGS = -fexceptions -fPIC -std=c++1z -I/usr/local/epics/base/include/ -I/usr/local/epics/base/include/os/Linux -I/opt/gfa/cafe/boost/boost_1_61_0/include/boost -I/opt/gfa/cafe/boost/boost_1_61_0/include
|
||||
CXX = /opt/psi/Programming/gcc/6.3.0/bin/g++
|
||||
CXXCPP = /opt/psi/Programming/gcc/6.3.0/bin/g++ -E
|
||||
CPP = /opt/psi/Programming/gcc/9.3.0/bin/gcc -E
|
||||
CPPFLAGS = -fexceptions -fPIC -std=c++1z -I/usr/local/epics/base/include/ -I/usr/local/epics/base/include/os/Linux -I/opt/gfa/cafe/boost/boost_1_61_0/include/boost -I/opt/gfa/cafe/boost/boost_1_61_0/include -I/ioc/python/latest/include/python3.10 -I/ioc/python/latest/lib/python3.10/site-packages/numpy/core/include
|
||||
CXX = /opt/psi/Programming/gcc/9.3.0/bin/g++
|
||||
CXXCPP = /opt/psi/Programming/gcc/9.3.0/bin/g++ -E
|
||||
CXXDEPMODE = depmode=gcc3
|
||||
CXXFLAGS = -g -O2
|
||||
CYGPATH_W = echo
|
||||
@@ -127,27 +215,27 @@ DUMPBIN =
|
||||
ECHO_C =
|
||||
ECHO_N = -n
|
||||
ECHO_T =
|
||||
EGREP = /bin/grep -E
|
||||
EGREP = /usr/bin/grep -E
|
||||
EXEEXT =
|
||||
FGREP = /bin/grep -F
|
||||
GREP = /bin/grep
|
||||
FGREP = /usr/bin/grep -F
|
||||
GREP = /usr/bin/grep
|
||||
INSTALL = /usr/bin/install -c
|
||||
INSTALL_DATA = ${INSTALL} -m 644
|
||||
INSTALL_PROGRAM = ${INSTALL}
|
||||
INSTALL_SCRIPT = ${INSTALL}
|
||||
INSTALL_STRIP_PROGRAM = $(install_sh) -c -s
|
||||
LD = /usr/bin/ld -m elf_x86_64
|
||||
LDFLAGS = -L/usr/local/epics/base/lib/SL6-x86_64 -Wl,-rpath,/usr/local/epics/base/lib/SL6-x86_64
|
||||
LDFLAGS = -L/usr/local/epics/base/lib/RHEL7-x86_64 -Wl,-rpath,/usr/local/epics/base/lib/RHEL7-x86_64 -L/ioc/python/latest/lib -Wl,-rpath,/ioc/python/latest/lib
|
||||
LIBOBJS =
|
||||
LIBS =
|
||||
LIBS = -lpython3.10
|
||||
LIBTOOL = $(SHELL) $(top_builddir)/libtool
|
||||
LIPO =
|
||||
LN_S = ln -s
|
||||
LTLIBOBJS =
|
||||
LT_SYS_LIBRARY_PATH =
|
||||
MAKEINFO = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing --run makeinfo
|
||||
MAKEINFO = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing makeinfo
|
||||
MANIFEST_TOOL = :
|
||||
MKDIR_P = /bin/mkdir -p
|
||||
MKDIR_P = /usr/bin/mkdir -p
|
||||
NM = /usr/bin/nm -B
|
||||
NMEDIT =
|
||||
OBJDUMP = objdump
|
||||
@@ -157,29 +245,30 @@ OTOOL64 =
|
||||
PACKAGE = cafe
|
||||
PACKAGE_BUGREPORT = Bug reports to: jan.chrin@psi.ch
|
||||
PACKAGE_NAME = CAFE
|
||||
PACKAGE_STRING = CAFE 1.12.5
|
||||
PACKAGE_STRING = CAFE 1.14.4
|
||||
PACKAGE_TARNAME = cafe
|
||||
PACKAGE_VERSION = 1.12.5
|
||||
PACKAGE_URL =
|
||||
PACKAGE_VERSION = 1.14.4
|
||||
PATH_SEPARATOR = :
|
||||
RANLIB = ranlib
|
||||
SED = /bin/sed
|
||||
SED = /usr/bin/sed
|
||||
SET_MAKE =
|
||||
SHELL = /bin/sh
|
||||
STRIP = strip
|
||||
VERSION = 1.12.5
|
||||
VERSION = 1.14.4
|
||||
abs_builddir = /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/include
|
||||
abs_srcdir = /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/include
|
||||
abs_top_builddir = /afs/psi.ch/project/cafe/gitlab/CAFE/cpp
|
||||
abs_top_srcdir = /afs/psi.ch/project/cafe/gitlab/CAFE/cpp
|
||||
ac_ct_AR = ar
|
||||
ac_ct_CC = /opt/psi/Programming/gcc/6.3.0/bin/gcc
|
||||
ac_ct_CC = /opt/psi/Programming/gcc/9.3.0/bin/gcc
|
||||
ac_ct_CXX =
|
||||
ac_ct_DUMPBIN =
|
||||
am__include = include
|
||||
am__leading_dot = .
|
||||
am__quote =
|
||||
am__tar = ${AMTAR} chof - "$$tardir"
|
||||
am__untar = ${AMTAR} xf -
|
||||
am__tar = $${TAR-tar} chof - "$$tardir"
|
||||
am__untar = $${TAR-tar} xf -
|
||||
bindir = ${exec_prefix}/bin
|
||||
build = x86_64-unknown-linux-gnu
|
||||
build_alias =
|
||||
@@ -201,15 +290,15 @@ htmldir = ${docdir}
|
||||
includedir = ${prefix}/include
|
||||
infodir = ${datarootdir}/info
|
||||
install_sh = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/install-sh
|
||||
libdir = /opt/gfa/cafe/cpp/cafe-noqt-1.12.5-gcc-6.3.0/lib
|
||||
libdir = /opt/gfa/cafe/cpp/cafe-1.14.4-py310-gcc-9.3.0/lib/RHEL7-x86_64
|
||||
libexecdir = ${exec_prefix}/libexec
|
||||
localedir = ${datarootdir}/locale
|
||||
localstatedir = ${prefix}/var
|
||||
mandir = ${datarootdir}/man
|
||||
mkdir_p = /bin/mkdir -p
|
||||
mkdir_p = $(MKDIR_P)
|
||||
oldincludedir = /usr/include
|
||||
pdfdir = ${docdir}
|
||||
prefix = /opt/gfa/cafe/cpp/cafe-noqt-1.12.5-gcc-6.3.0
|
||||
prefix = /opt/gfa/cafe/cpp/cafe-1.14.4-py310-gcc-9.3.0
|
||||
program_transform_name = s,x,x,
|
||||
psdir = ${docdir}
|
||||
sbindir = ${exec_prefix}/sbin
|
||||
@@ -228,7 +317,7 @@ include_HEADERS = config.h cafe.h cafeCache.h cafeConvert.h \
|
||||
conduitFriends.h connect.h defines.h deviceCollection.h \
|
||||
exceptions.h exceptionsHelper.h global.h enumStrings.h \
|
||||
granules.h handleHelper.h hashConduit.h helper.h instant.h \
|
||||
instant.cpp loadCollectionXMLParser.h loadGroupXMLParser.h \
|
||||
loadCollectionXMLParser.h loadGroupXMLParser.h \
|
||||
methodCallbacks.h policies.h policyHelper.h PVCtrlHolder.h \
|
||||
PVDataHolder.h PVGroup.h PVHolder.h statusCodes.h transpose.h \
|
||||
conduitGroup.h hashConduitGroup.h restorePVGroupXMLParser.h \
|
||||
@@ -274,8 +363,11 @@ clean-libtool:
|
||||
-rm -rf .libs _libs
|
||||
install-includeHEADERS: $(include_HEADERS)
|
||||
@$(NORMAL_INSTALL)
|
||||
test -z "$(includedir)" || $(MKDIR_P) "$(DESTDIR)$(includedir)"
|
||||
@list='$(include_HEADERS)'; test -n "$(includedir)" || list=; \
|
||||
if test -n "$$list"; then \
|
||||
echo " $(MKDIR_P) '$(DESTDIR)$(includedir)'"; \
|
||||
$(MKDIR_P) "$(DESTDIR)$(includedir)" || exit 1; \
|
||||
fi; \
|
||||
for p in $$list; do \
|
||||
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
|
||||
echo "$$d$$p"; \
|
||||
@@ -289,30 +381,17 @@ uninstall-includeHEADERS:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@list='$(include_HEADERS)'; test -n "$(includedir)" || list=; \
|
||||
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
|
||||
test -n "$$files" || exit 0; \
|
||||
echo " ( cd '$(DESTDIR)$(includedir)' && rm -f" $$files ")"; \
|
||||
cd "$(DESTDIR)$(includedir)" && rm -f $$files
|
||||
dir='$(DESTDIR)$(includedir)'; $(am__uninstall_files_from_dir)
|
||||
|
||||
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
||||
mkid -fID $$unique
|
||||
tags: TAGS
|
||||
ID: $(am__tagged_files)
|
||||
$(am__define_uniq_tagged_files); mkid -fID $$unique
|
||||
tags: tags-am
|
||||
TAGS: tags
|
||||
|
||||
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||
$(TAGS_FILES) $(LISP)
|
||||
tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
|
||||
set x; \
|
||||
here=`pwd`; \
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
||||
$(am__define_uniq_tagged_files); \
|
||||
shift; \
|
||||
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
|
||||
test -n "$$unique" || unique=$$empty_fix; \
|
||||
@@ -324,15 +403,11 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||
$$unique; \
|
||||
fi; \
|
||||
fi
|
||||
ctags: CTAGS
|
||||
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||
$(TAGS_FILES) $(LISP)
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
||||
ctags: ctags-am
|
||||
|
||||
CTAGS: ctags
|
||||
ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
|
||||
$(am__define_uniq_tagged_files); \
|
||||
test -z "$(CTAGS_ARGS)$$unique" \
|
||||
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
|
||||
$$unique
|
||||
@@ -341,6 +416,21 @@ GTAGS:
|
||||
here=`$(am__cd) $(top_builddir) && pwd` \
|
||||
&& $(am__cd) $(top_srcdir) \
|
||||
&& gtags -i $(GTAGS_ARGS) "$$here"
|
||||
cscopelist: cscopelist-am
|
||||
|
||||
cscopelist-am: $(am__tagged_files)
|
||||
list='$(am__tagged_files)'; \
|
||||
case "$(srcdir)" in \
|
||||
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
|
||||
*) sdir=$(subdir)/$(srcdir) ;; \
|
||||
esac; \
|
||||
for i in $$list; do \
|
||||
if test -f "$$i"; then \
|
||||
echo "$(subdir)/$$i"; \
|
||||
else \
|
||||
echo "$$sdir/$$i"; \
|
||||
fi; \
|
||||
done >> $(top_builddir)/cscope.files
|
||||
|
||||
distclean-tags:
|
||||
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
||||
@@ -392,10 +482,15 @@ install-am: all-am
|
||||
|
||||
installcheck: installcheck-am
|
||||
install-strip:
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
`test -z '$(STRIP)' || \
|
||||
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
|
||||
if test -z '$(STRIP)'; then \
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
install; \
|
||||
else \
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
|
||||
fi
|
||||
mostlyclean-generic:
|
||||
|
||||
clean-generic:
|
||||
@@ -475,18 +570,19 @@ uninstall-am: uninstall-includeHEADERS
|
||||
|
||||
.MAKE: install-am install-strip
|
||||
|
||||
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
|
||||
clean-libtool ctags distclean distclean-generic \
|
||||
distclean-libtool distclean-tags distdir dvi dvi-am html \
|
||||
html-am info info-am install install-am install-data \
|
||||
install-data-am install-dvi install-dvi-am install-exec \
|
||||
install-exec-am install-html install-html-am \
|
||||
.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
|
||||
clean-libtool cscopelist-am ctags ctags-am distclean \
|
||||
distclean-generic distclean-libtool distclean-tags distdir dvi \
|
||||
dvi-am html html-am info info-am install install-am \
|
||||
install-data install-data-am install-dvi install-dvi-am \
|
||||
install-exec install-exec-am install-html install-html-am \
|
||||
install-includeHEADERS install-info install-info-am \
|
||||
install-man install-pdf install-pdf-am install-ps \
|
||||
install-ps-am install-strip installcheck installcheck-am \
|
||||
installdirs maintainer-clean maintainer-clean-generic \
|
||||
mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
|
||||
ps ps-am tags uninstall uninstall-am uninstall-includeHEADERS
|
||||
ps ps-am tags tags-am uninstall uninstall-am \
|
||||
uninstall-includeHEADERS
|
||||
|
||||
|
||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||
|
||||
@@ -7,7 +7,7 @@ include_HEADERS = config.h cafe.h cafeCache.h cafeConvert.h cafeDataType.h cafeD
|
||||
cafeEnumStrings.h cafeRoast.h cafeVectors.h cafeXML.h caopCodes.h channelRegalia.h \
|
||||
conduit.h conduitConnectionHandlerArgs.h conduitEventHandlerArgs.h conduitFriends.h \
|
||||
connect.h defines.h deviceCollection.h exceptions.h exceptionsHelper.h global.h \
|
||||
enumStrings.h granules.h handleHelper.h hashConduit.h helper.h instant.h instant.cpp \
|
||||
enumStrings.h granules.h handleHelper.h hashConduit.h helper.h instant.h \
|
||||
loadCollectionXMLParser.h loadGroupXMLParser.h methodCallbacks.h policies.h policyHelper.h \
|
||||
PVCtrlHolder.h PVDataHolder.h PVGroup.h PVHolder.h statusCodes.h transpose.h \
|
||||
conduitGroup.h hashConduitGroup.h restorePVGroupXMLParser.h tmDateMap.h
|
||||
@@ -18,12 +18,13 @@ include_HEADERS += zbsread.h zbsHash.h zbsdtHelper.h zbsDataHolders.h \
|
||||
bitshuffle/bitshuffle_core.h bitshuffle/bitshuffle.h bitshuffle/iochain.h \
|
||||
bitshuffle/bitshuffle_internals.h
|
||||
endif
|
||||
#bitshuffle/bshuf_h5filter.h
|
||||
|
||||
if HAVE_PYTHON_
|
||||
include_HEADERS += PyCafe_api.h
|
||||
endif
|
||||
#if HAVE_PYTHON_
|
||||
#include_HEADERS += PyCafe_api.h
|
||||
#endif
|
||||
|
||||
if HAVE_PYCAFE_EXT_
|
||||
include_HEADERS += PyCafe.h
|
||||
else
|
||||
include_HEADERS += PyCafe_api.h
|
||||
endif
|
||||
|
||||
@@ -506,7 +506,7 @@ private:
|
||||
|
||||
pCallback handler; // for blockingKind=WITH_CALLBACK_DEFAULT or WITH_CALLBACK_USER_SUPPLIED
|
||||
int callbackStatus; // used by CAFE::waitForGetEvent() to record status of callback
|
||||
|
||||
void * cyCallback; // callback provide by python client
|
||||
public:
|
||||
|
||||
ChannelWhenToFlushSendBufferPolicyKind getWhenToFlushSendBuffer() const
|
||||
@@ -533,6 +533,7 @@ public:
|
||||
return callbackStatus;
|
||||
};
|
||||
|
||||
|
||||
void setHandler(pCallback h)
|
||||
{
|
||||
if (h!=NULL)
|
||||
@@ -543,16 +544,26 @@ public:
|
||||
};
|
||||
|
||||
#if HAVE_PYTHON_H
|
||||
void setPyHandlerGet()
|
||||
void setPyHandlerGet(void * cythonCallback)
|
||||
{
|
||||
cyCallback=cythonCallback;
|
||||
handler= CALLBACK_CAFE::PyHandlerGet;
|
||||
methodKind=WITH_CALLBACK_USER_SUPPLIED;
|
||||
}; //CAFE_CALLBACK::PyHandlerGet
|
||||
void setPyHandlerPut()
|
||||
};
|
||||
//CAFE_CALLBACK::PyHandlerGet
|
||||
void setPyHandlerPut(void * cythonCallback)
|
||||
{
|
||||
cyCallback=cythonCallback;
|
||||
handler= CALLBACK_CAFE::PyHandlerPut;
|
||||
methodKind=WITH_CALLBACK_USER_SUPPLIED;
|
||||
}; //CAFE_CALLBACK::PyHandlerPut
|
||||
};
|
||||
//CAFE_CALLBACK::PyHandlerPut
|
||||
|
||||
void * getCyCallback() const
|
||||
{
|
||||
return cyCallback;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
void setMethodKind(ChannelRequestPolicyKind m)
|
||||
@@ -642,7 +653,7 @@ public:
|
||||
//Constructors
|
||||
ChannelRequestPolicy():
|
||||
whenKind(FLUSH_AFTER_EACH_MESSAGE),waitKind(WAIT),methodKind(WITH_CALLBACK_DEFAULT), //WITHOUT_CALLBACK),
|
||||
callbackStatus(ICAFE_NORMAL)
|
||||
callbackStatus(ICAFE_NORMAL), cyCallback(NULL)
|
||||
{
|
||||
handler=NULL;
|
||||
|
||||
@@ -659,6 +670,7 @@ public:
|
||||
std::cout << b << " is anINVALID ChannelRequestPolicyKind" << std::endl;
|
||||
}
|
||||
handler=NULL;
|
||||
cyCallback=NULL;
|
||||
callbackStatus=ICAFE_NORMAL;
|
||||
whenKind=FLUSH_AFTER_EACH_MESSAGE;
|
||||
waitKind=WAIT;
|
||||
@@ -667,6 +679,7 @@ public:
|
||||
ChannelRequestPolicy(pCallback h)
|
||||
{
|
||||
handler=h;
|
||||
cyCallback=NULL;
|
||||
methodKind=WITH_CALLBACK_DEFAULT;
|
||||
whenKind=FLUSH_AFTER_EACH_MESSAGE;
|
||||
waitKind=WAIT;
|
||||
@@ -699,6 +712,7 @@ private:
|
||||
unsigned int mask; //4
|
||||
pCallback handler; //5
|
||||
void * cyCallback;
|
||||
unsigned short nCyCallbackParameters; // 1=handle, 2=handle,pv 3=handle,pv,pvdata
|
||||
void * userArgs; //6 handle
|
||||
evid eventID; //output
|
||||
int status; //output
|
||||
@@ -706,8 +720,10 @@ private:
|
||||
unsigned short notifyDeltaMilliSeconds; // Nov. 2020; push to Python Widgets
|
||||
ptime lastUpdate;
|
||||
|
||||
static void PyCallbackHandlerMonitorData(struct event_handler_args args); //pushes pvd,handle,pvname
|
||||
static void PyCallbackHandlerMonitor(struct event_handler_args args); //pushes handle
|
||||
static void PyCallbackHandlerMonitorData(struct event_handler_args args); //pushes handle, pvname, pvdata
|
||||
static void PyCallbackHandlerMonitor(struct event_handler_args args); //pushes handle, pvname
|
||||
//static void PyCallbackHandlerHandle(struct event_handler_args args); //pushes handle
|
||||
|
||||
|
||||
void setEventID(evid e)
|
||||
{
|
||||
@@ -720,8 +736,8 @@ public:
|
||||
cafeDbrType((CAFENUM::DBR_TYPE) CAFENUM::DBR_TIME),
|
||||
nelem(0), mask(DBE_VALUE | DBE_LOG | DBE_ALARM),
|
||||
handler(callbackHandlerMonitor), cyCallback(NULL),
|
||||
userArgs(NULL), eventID(NULL), status(ICAFE_NORMAL),
|
||||
notifyDeltaMilliSeconds(0)
|
||||
nCyCallbackParameters(1), userArgs(NULL), eventID(NULL),
|
||||
status(ICAFE_NORMAL), notifyDeltaMilliSeconds(0)
|
||||
{
|
||||
++idNext;
|
||||
id = idNext;
|
||||
@@ -785,6 +801,11 @@ public:
|
||||
return cyCallback;
|
||||
};
|
||||
|
||||
unsigned short getNoCyCallbackParameters() const
|
||||
{
|
||||
return nCyCallbackParameters;
|
||||
};
|
||||
|
||||
pCallback getHandler() const
|
||||
{
|
||||
return handler;
|
||||
@@ -849,6 +870,18 @@ public:
|
||||
cyCallback=cythonCallback;
|
||||
}
|
||||
|
||||
void setNoCyCallbackParameters(unsigned int nCyCbParam){
|
||||
nCyCallbackParameters = nCyCbParam;
|
||||
}
|
||||
|
||||
|
||||
//void setPyCyHandlerHandle(void * cythonCallback)
|
||||
//{
|
||||
// handler= PyCallbackHandlerHandle;
|
||||
// cyCallback=cythonCallback;
|
||||
//};
|
||||
|
||||
|
||||
void setPyCyHandler(void * cythonCallback)
|
||||
{
|
||||
handler= PyCallbackHandlerMonitor;
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
template <class CTYPE> class Transpose {
|
||||
|
||||
public:
|
||||
Transpose () {};
|
||||
Transpose () {useHandleHelper = true;};
|
||||
~Transpose () {};
|
||||
|
||||
HandleHelper handleHelper;
|
||||
@@ -109,6 +109,8 @@ private:
|
||||
chtype _dataTypeClient;
|
||||
char stig [MAX_ENUM_STATES][MAX_ENUM_STRING_SIZE];
|
||||
|
||||
bool useHandleHelper; //instantiating global extern cs for use in pybind11
|
||||
|
||||
};
|
||||
|
||||
|
||||
@@ -269,8 +271,15 @@ template <class CTYPE> int Transpose<CTYPE>::put(const unsigned int _handle,
|
||||
cafeConduit_set_by_handle & handle_index = cs.get<by_handle> ();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
|
||||
|
||||
|
||||
if (useHandleHelper) {
|
||||
it_handle = handleHelper.getIterFromHandle(_handle);
|
||||
}
|
||||
else {
|
||||
it_handle = handle_index.find(_handle);
|
||||
}
|
||||
|
||||
it_handle = handle_index.find(_handle);
|
||||
|
||||
if (it_handle != handle_index.end()) {
|
||||
|
||||
@@ -711,7 +720,7 @@ template <class CTYPE> int Transpose<CTYPE>::put(const unsigned int _handle,
|
||||
//long Transpose<CAFE_DATATYPE_UNION>::put( const unsigned int _handle,
|
||||
// CAFE_DATATYPE_UNION_SEQ val, CAFE_DATATYPE cdt)
|
||||
|
||||
template <class CTYPE> int Transpose<CTYPE>::put( const unsigned int _handle,
|
||||
template <class CTYPE> int Transpose<CTYPE>::put( const unsigned int _handle,
|
||||
CAFE_DATATYPE_UNION_SEQ val, CAFE_DATATYPE cdt)
|
||||
{
|
||||
#define __METHOD__ "Transpose<CTYPE>::put()"
|
||||
@@ -720,7 +729,13 @@ template <class CTYPE> int Transpose<CTYPE>::put( const unsigned int _handle,
|
||||
|
||||
cafeConduit_set_by_handle & handle_index=cs.get<by_handle>();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
it_handle = handle_index.find(_handle);
|
||||
|
||||
if (useHandleHelper) {
|
||||
it_handle = handleHelper.getIterFromHandle(_handle);
|
||||
}
|
||||
else {
|
||||
it_handle = handle_index.find(_handle);
|
||||
}
|
||||
|
||||
if (it_handle != handle_index.end()) {
|
||||
|
||||
@@ -987,7 +1002,14 @@ template <class CTYPE> int Transpose<CTYPE>::putString
|
||||
|
||||
cafeConduit_set_by_handle & handle_index=cs.get<by_handle>();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
it_handle = handle_index.find(_handle);
|
||||
|
||||
|
||||
if (useHandleHelper) {
|
||||
it_handle = handleHelper.getIterFromHandle(_handle);
|
||||
}
|
||||
else {
|
||||
it_handle = handle_index.find(_handle);
|
||||
}
|
||||
|
||||
if (it_handle != handle_index.end()) {
|
||||
|
||||
@@ -1264,7 +1286,7 @@ template <class CTYPE> int Transpose<CTYPE>::putString
|
||||
|
||||
/**
|
||||
* \brief Retrieves data transmitted by CA with dbrTypeRequest_DataBuffer
|
||||
* and then converts to CTYPE i.e. _dataTypeClient
|
||||
* and then converts to CTYPE i.e. _dataTypeClient
|
||||
* \param _handle input: handle to Conduit object
|
||||
* \param val output: CTYPE datatype
|
||||
* \param alarmStatus output: dbr_short_t
|
||||
@@ -1281,7 +1303,19 @@ template <class CTYPE> int Transpose<CTYPE>::get(
|
||||
|
||||
cafeConduit_set_by_handle & handle_index=cs.get<by_handle>();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
it_handle = handle_index.find(_handle);
|
||||
|
||||
|
||||
//pybind11 fix
|
||||
//cafeConduit_set_by_handle & handle_index = helper.getcsHandleIndex();
|
||||
|
||||
|
||||
if (useHandleHelper) {
|
||||
it_handle = handleHelper.getIterFromHandle(_handle);
|
||||
}
|
||||
else {
|
||||
it_handle = handle_index.find(_handle);
|
||||
}
|
||||
|
||||
|
||||
//std::cout << __FILE__ << "//" << __METHOD__ << std::endl;
|
||||
|
||||
@@ -1840,7 +1874,14 @@ template <class CTYPE> int Transpose<CTYPE>::getCtrl (
|
||||
|
||||
cafeConduit_set_by_handle & handle_index=cs.get<by_handle>();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
it_handle = handle_index.find(_handle);
|
||||
|
||||
|
||||
if (useHandleHelper) {
|
||||
it_handle = handleHelper.getIterFromHandle(_handle);
|
||||
}
|
||||
else {
|
||||
it_handle = handle_index.find(_handle);
|
||||
}
|
||||
|
||||
|
||||
if (it_handle != handle_index.end()) {
|
||||
|
||||
34
libtool
34
libtool
@@ -1,6 +1,6 @@
|
||||
#! /bin/sh
|
||||
# Generated automatically by config.status (cafe) 1.12.5
|
||||
# Libtool was configured on host gfa-lc6-64:
|
||||
# Generated automatically by config.status (cafe) 1.14.4
|
||||
# Libtool was configured on host sf-lc7a.psi.ch:
|
||||
# NOTE: Changes made to this file will be lost: look at ltmain.sh.
|
||||
|
||||
# Provide generalized library-building support services.
|
||||
@@ -76,19 +76,19 @@ build=x86_64-unknown-linux-gnu
|
||||
build_os=linux-gnu
|
||||
|
||||
# A sed program that does not truncate output.
|
||||
SED="/bin/sed"
|
||||
SED="/usr/bin/sed"
|
||||
|
||||
# Sed that helps us avoid accidentally triggering echo(1) options like -n.
|
||||
Xsed="$SED -e 1s/^X//"
|
||||
|
||||
# A grep program that handles long lines.
|
||||
GREP="/bin/grep"
|
||||
GREP="/usr/bin/grep"
|
||||
|
||||
# An ERE matcher.
|
||||
EGREP="/bin/grep -E"
|
||||
EGREP="/usr/bin/grep -E"
|
||||
|
||||
# A literal string matcher.
|
||||
FGREP="/bin/grep -F"
|
||||
FGREP="/usr/bin/grep -F"
|
||||
|
||||
# A BSD- or MS-compatible name lister.
|
||||
NM="/usr/bin/nm -B"
|
||||
@@ -97,7 +97,7 @@ NM="/usr/bin/nm -B"
|
||||
LN_S="ln -s"
|
||||
|
||||
# What is the maximum length of a command?
|
||||
max_cmd_len=1966080
|
||||
max_cmd_len=1572864
|
||||
|
||||
# Object file suffix (normally "o").
|
||||
objext=o
|
||||
@@ -162,7 +162,7 @@ old_postuninstall_cmds=""
|
||||
lock_old_archive_extraction=no
|
||||
|
||||
# A C compiler.
|
||||
LTCC="/opt/psi/Programming/gcc/6.3.0/bin/gcc"
|
||||
LTCC="/opt/psi/Programming/gcc/9.3.0/bin/gcc"
|
||||
|
||||
# LTCC compiler flags.
|
||||
LTCFLAGS="-g -O2"
|
||||
@@ -192,7 +192,7 @@ nm_file_list_spec="@"
|
||||
lt_sysroot=
|
||||
|
||||
# Command to truncate a binary pipe.
|
||||
lt_truncate_bin="/bin/dd bs=4096 count=1"
|
||||
lt_truncate_bin="/usr/bin/dd bs=4096 count=1"
|
||||
|
||||
# The name of the directory that contains temporary libtool files.
|
||||
objdir=.libs
|
||||
@@ -282,10 +282,10 @@ finish_eval=""
|
||||
hardcode_into_libs=yes
|
||||
|
||||
# Compile-time system search path for libraries.
|
||||
sys_lib_search_path_spec="/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/6.3.0/lib/gcc/x86_64-pc-linux-gnu/6.3.0 /afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/6.3.0/lib/gcc /opt/psi/Programming/gcc/6.3.0/lib64 /afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/6.3.0/lib64 /lib64 /usr/lib64 /opt/psi/Programming/gcc/6.3.0/lib /afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/6.3.0/lib /lib /usr/lib "
|
||||
sys_lib_search_path_spec="/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/9.3.0/lib/gcc/x86_64-pc-linux-gnu/9.3.0 /afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/9.3.0/lib/gcc /opt/psi/Programming/gcc/9.3.0/lib64 /afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/9.3.0/lib64 /lib64 /usr/lib64 /opt/psi/Programming/gcc/9.3.0/lib /afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/9.3.0/lib /lib /usr/lib "
|
||||
|
||||
# Detected run-time system search path for libraries.
|
||||
sys_lib_dlsearch_path_spec="/lib /usr/lib /usr/lib64/atlas /usr/lib64/ctapi /usr/lib64/llvm /usr/lib64/mysql /usr/lib64/papi-4.1.3 /usr/lib64/papi-5.1.1/usr/lib /usr/lib/qt-3.3/lib /usr/lib64/qt-3.3/lib /usr/lib64/tcl8.5/tclx8.4 /usr/lib64/tcl8.5 /usr/lib64/xulrunner "
|
||||
sys_lib_dlsearch_path_spec="/lib /usr/lib /usr/lib64/atlas /usr/lib64//bind9-export/ /usr/lib64/dyninst /usr/lib64/mysql /usr/lib/oracle/12.2/client64/lib /usr/lib64/tcl8.5/tclx8.4 "
|
||||
|
||||
# Explicit LT_SYS_LIBRARY_PATH set during ./configure time.
|
||||
configure_time_lt_sys_library_path=""
|
||||
@@ -315,7 +315,7 @@ reload_cmds="\$LD\$reload_flag -o \$output\$reload_objs"
|
||||
old_archive_cmds="\$AR \$AR_FLAGS \$oldlib\$oldobjs~\$RANLIB \$tool_oldlib"
|
||||
|
||||
# A language specific compiler.
|
||||
CC="/opt/psi/Programming/gcc/6.3.0/bin/gcc"
|
||||
CC="/opt/psi/Programming/gcc/9.3.0/bin/gcc"
|
||||
|
||||
# Is the compiler the GNU compiler?
|
||||
with_gcc=yes
|
||||
@@ -11694,7 +11694,7 @@ reload_cmds="\$LD\$reload_flag -o \$output\$reload_objs"
|
||||
old_archive_cmds="\$AR \$AR_FLAGS \$oldlib\$oldobjs~\$RANLIB \$tool_oldlib"
|
||||
|
||||
# A language specific compiler.
|
||||
CC="/opt/psi/Programming/gcc/6.3.0/bin/g++"
|
||||
CC="/opt/psi/Programming/gcc/9.3.0/bin/g++"
|
||||
|
||||
# Is the compiler the GNU compiler?
|
||||
with_gcc=yes
|
||||
@@ -11815,17 +11815,17 @@ file_list_spec=""
|
||||
hardcode_action=immediate
|
||||
|
||||
# The directories searched by this compiler when creating a shared library.
|
||||
compiler_lib_search_dirs="/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/6.3.0/bin/../lib/gcc/x86_64-pc-linux-gnu/6.3.0 /afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/6.3.0/bin/../lib/gcc /opt/psi/Programming/gcc/6.3.0/lib64/../lib64 /opt/psi/Programming/gcc/6.3.0/lib/../lib64 /afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/6.3.0/bin/../lib/gcc/x86_64-pc-linux-gnu/6.3.0/../../../../lib64 /lib/../lib64 /usr/lib/../lib64 /opt/psi/Programming/gcc/6.3.0/lib64 /opt/psi/Programming/gcc/6.3.0/lib /afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/6.3.0/bin/../lib/gcc/x86_64-pc-linux-gnu/6.3.0/../../.."
|
||||
compiler_lib_search_dirs="/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/9.3.0/bin/../lib/gcc/x86_64-pc-linux-gnu/9.3.0 /afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/9.3.0/bin/../lib/gcc /opt/psi/Programming/gcc/9.3.0/lib64/../lib64 /opt/psi/Programming/gcc/9.3.0/lib/../lib64 /afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/9.3.0/bin/../lib/gcc/x86_64-pc-linux-gnu/9.3.0/../../../../lib64 /lib/../lib64 /usr/lib/../lib64 /opt/psi/Programming/gcc/9.3.0/lib64 /opt/psi/Programming/gcc/9.3.0/lib /afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/9.3.0/bin/../lib/gcc/x86_64-pc-linux-gnu/9.3.0/../../.."
|
||||
|
||||
# Dependencies to place before and after the objects being linked to
|
||||
# create a shared library.
|
||||
predep_objects="/usr/lib/../lib64/crti.o /afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/6.3.0/bin/../lib/gcc/x86_64-pc-linux-gnu/6.3.0/crtbeginS.o"
|
||||
postdep_objects="/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/6.3.0/bin/../lib/gcc/x86_64-pc-linux-gnu/6.3.0/crtendS.o /usr/lib/../lib64/crtn.o"
|
||||
predep_objects="/lib/../lib64/crti.o /afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/9.3.0/bin/../lib/gcc/x86_64-pc-linux-gnu/9.3.0/crtbeginS.o"
|
||||
postdep_objects="/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/9.3.0/bin/../lib/gcc/x86_64-pc-linux-gnu/9.3.0/crtendS.o /lib/../lib64/crtn.o"
|
||||
predeps=""
|
||||
postdeps="-lstdc++ -lm -lgcc_s -lc -lgcc_s"
|
||||
|
||||
# The library search path used internally by the compiler when linking
|
||||
# a shared library.
|
||||
compiler_lib_search_path="-L/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/6.3.0/bin/../lib/gcc/x86_64-pc-linux-gnu/6.3.0 -L/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/6.3.0/bin/../lib/gcc -L/opt/psi/Programming/gcc/6.3.0/lib64/../lib64 -L/opt/psi/Programming/gcc/6.3.0/lib/../lib64 -L/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/6.3.0/bin/../lib/gcc/x86_64-pc-linux-gnu/6.3.0/../../../../lib64 -L/lib/../lib64 -L/usr/lib/../lib64 -L/opt/psi/Programming/gcc/6.3.0/lib64 -L/opt/psi/Programming/gcc/6.3.0/lib -L/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/6.3.0/bin/../lib/gcc/x86_64-pc-linux-gnu/6.3.0/../../.."
|
||||
compiler_lib_search_path="-L/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/9.3.0/bin/../lib/gcc/x86_64-pc-linux-gnu/9.3.0 -L/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/9.3.0/bin/../lib/gcc -L/opt/psi/Programming/gcc/9.3.0/lib64/../lib64 -L/opt/psi/Programming/gcc/9.3.0/lib/../lib64 -L/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/9.3.0/bin/../lib/gcc/x86_64-pc-linux-gnu/9.3.0/../../../../lib64 -L/lib/../lib64 -L/usr/lib/../lib64 -L/opt/psi/Programming/gcc/9.3.0/lib64 -L/opt/psi/Programming/gcc/9.3.0/lib -L/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/9.3.0/bin/../lib/gcc/x86_64-pc-linux-gnu/9.3.0/../../.."
|
||||
|
||||
# ### END LIBTOOL TAG CONFIG: CXX
|
||||
|
||||
466
makefile
466
makefile
@@ -1,9 +1,8 @@
|
||||
# makefile.in generated by automake 1.11.1 from makefile.am.
|
||||
# makefile.in generated by automake 1.13.4 from makefile.am.
|
||||
# makefile. Generated from makefile.in by configure.
|
||||
|
||||
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
|
||||
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
|
||||
# Inc.
|
||||
# Copyright (C) 1994-2013 Free Software Foundation, Inc.
|
||||
|
||||
# This Makefile.in is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
@@ -16,6 +15,51 @@
|
||||
|
||||
|
||||
|
||||
am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
|
||||
am__make_running_with_option = \
|
||||
case $${target_option-} in \
|
||||
?) ;; \
|
||||
*) echo "am__make_running_with_option: internal error: invalid" \
|
||||
"target option '$${target_option-}' specified" >&2; \
|
||||
exit 1;; \
|
||||
esac; \
|
||||
has_opt=no; \
|
||||
sane_makeflags=$$MAKEFLAGS; \
|
||||
if $(am__is_gnu_make); then \
|
||||
sane_makeflags=$$MFLAGS; \
|
||||
else \
|
||||
case $$MAKEFLAGS in \
|
||||
*\\[\ \ ]*) \
|
||||
bs=\\; \
|
||||
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
|
||||
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
|
||||
esac; \
|
||||
fi; \
|
||||
skip_next=no; \
|
||||
strip_trailopt () \
|
||||
{ \
|
||||
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
|
||||
}; \
|
||||
for flg in $$sane_makeflags; do \
|
||||
test $$skip_next = yes && { skip_next=no; continue; }; \
|
||||
case $$flg in \
|
||||
*=*|--*) continue;; \
|
||||
-*I) strip_trailopt 'I'; skip_next=yes;; \
|
||||
-*I?*) strip_trailopt 'I';; \
|
||||
-*O) strip_trailopt 'O'; skip_next=yes;; \
|
||||
-*O?*) strip_trailopt 'O';; \
|
||||
-*l) strip_trailopt 'l'; skip_next=yes;; \
|
||||
-*l?*) strip_trailopt 'l';; \
|
||||
-[dEDm]) skip_next=yes;; \
|
||||
-[JT]) skip_next=yes;; \
|
||||
esac; \
|
||||
case $$flg in \
|
||||
*$$target_option*) has_opt=yes; break;; \
|
||||
esac; \
|
||||
done; \
|
||||
test $$has_opt = yes
|
||||
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
|
||||
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
|
||||
pkgdatadir = $(datadir)/cafe
|
||||
pkgincludedir = $(includedir)/cafe
|
||||
pkglibdir = $(libdir)/cafe
|
||||
@@ -35,14 +79,17 @@ POST_UNINSTALL = :
|
||||
build_triplet = x86_64-unknown-linux-gnu
|
||||
host_triplet = x86_64-unknown-linux-gnu
|
||||
subdir = .
|
||||
DIST_COMMON = README $(am__configure_deps) $(include_HEADERS) \
|
||||
$(srcdir)/makefile.am $(srcdir)/makefile.in \
|
||||
$(top_srcdir)/./include/config.in $(top_srcdir)/configure \
|
||||
.//AUTHORS .//COPYING .//ChangeLog .//INSTALL .//NEWS \
|
||||
.//README .//config.guess .//config.sub .//depcomp \
|
||||
.//install-sh .//ltmain.sh .//missing AUTHORS COPYING \
|
||||
ChangeLog INSTALL NEWS config.guess config.sub depcomp \
|
||||
install-sh ltmain.sh missing
|
||||
DIST_COMMON = INSTALL NEWS README AUTHORS ChangeLog \
|
||||
$(srcdir)/makefile.in $(srcdir)/makefile.am \
|
||||
$(top_srcdir)/configure $(am__configure_deps) \
|
||||
$(top_srcdir)/./include/config.in $(include_HEADERS) \
|
||||
.//AUTHORS COPYING .//COPYING .//ChangeLog .//INSTALL .//NEWS \
|
||||
.//README config.guess .//config.guess config.sub \
|
||||
.//config.sub depcomp .//depcomp install-sh .//install-sh \
|
||||
missing .//missing ltmain.sh .//ltmain.sh \
|
||||
$(top_srcdir)/./config.guess $(top_srcdir)/./config.sub \
|
||||
$(top_srcdir)/./install-sh $(top_srcdir)/./ltmain.sh \
|
||||
$(top_srcdir)/./missing
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
|
||||
$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
|
||||
@@ -56,15 +103,33 @@ mkinstalldirs = $(install_sh) -d
|
||||
CONFIG_HEADER = $(top_builddir)/./include/config.h
|
||||
CONFIG_CLEAN_FILES =
|
||||
CONFIG_CLEAN_VPATH_FILES =
|
||||
AM_V_P = $(am__v_P_$(V))
|
||||
am__v_P_ = $(am__v_P_$(AM_DEFAULT_VERBOSITY))
|
||||
am__v_P_0 = false
|
||||
am__v_P_1 = :
|
||||
AM_V_GEN = $(am__v_GEN_$(V))
|
||||
am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY))
|
||||
am__v_GEN_0 = @echo " GEN " $@;
|
||||
am__v_GEN_1 =
|
||||
AM_V_at = $(am__v_at_$(V))
|
||||
am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY))
|
||||
am__v_at_0 = @
|
||||
am__v_at_1 =
|
||||
SOURCES =
|
||||
DIST_SOURCES =
|
||||
RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
|
||||
html-recursive info-recursive install-data-recursive \
|
||||
install-dvi-recursive install-exec-recursive \
|
||||
install-html-recursive install-info-recursive \
|
||||
install-pdf-recursive install-ps-recursive install-recursive \
|
||||
installcheck-recursive installdirs-recursive pdf-recursive \
|
||||
ps-recursive uninstall-recursive
|
||||
RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
|
||||
ctags-recursive dvi-recursive html-recursive info-recursive \
|
||||
install-data-recursive install-dvi-recursive \
|
||||
install-exec-recursive install-html-recursive \
|
||||
install-info-recursive install-pdf-recursive \
|
||||
install-ps-recursive install-recursive installcheck-recursive \
|
||||
installdirs-recursive pdf-recursive ps-recursive \
|
||||
tags-recursive uninstall-recursive
|
||||
am__can_run_installinfo = \
|
||||
case $$AM_UPDATE_INFO_DIR in \
|
||||
n|no|NO) false;; \
|
||||
*) (install-info --version) >/dev/null 2>&1;; \
|
||||
esac
|
||||
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
|
||||
am__vpath_adj = case $$p in \
|
||||
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
|
||||
@@ -86,23 +151,53 @@ am__nobase_list = $(am__nobase_strip_setup); \
|
||||
am__base_list = \
|
||||
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
|
||||
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
|
||||
am__uninstall_files_from_dir = { \
|
||||
test -z "$$files" \
|
||||
|| { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
|
||||
|| { echo " ( cd '$$dir' && rm -f" $$files ")"; \
|
||||
$(am__cd) "$$dir" && rm -f $$files; }; \
|
||||
}
|
||||
am__installdirs = "$(DESTDIR)$(includedir)"
|
||||
HEADERS = $(include_HEADERS)
|
||||
RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
|
||||
distclean-recursive maintainer-clean-recursive
|
||||
AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
|
||||
$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
|
||||
distdir dist dist-all distcheck
|
||||
am__recursive_targets = \
|
||||
$(RECURSIVE_TARGETS) \
|
||||
$(RECURSIVE_CLEAN_TARGETS) \
|
||||
$(am__extra_recursive_targets)
|
||||
AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
|
||||
cscope distdir dist dist-all distcheck
|
||||
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
|
||||
# Read a list of newline-separated strings from the standard input,
|
||||
# and print each of them once, without duplicates. Input order is
|
||||
# *not* preserved.
|
||||
am__uniquify_input = $(AWK) '\
|
||||
BEGIN { nonempty = 0; } \
|
||||
{ items[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in items) print i; }; } \
|
||||
'
|
||||
# Make sure the list of sources is unique. This is necessary because,
|
||||
# e.g., the same source file might be shared among _SOURCES variables
|
||||
# for different programs/libraries.
|
||||
am__define_uniq_tagged_files = \
|
||||
list='$(am__tagged_files)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | $(am__uniquify_input)`
|
||||
ETAGS = etags
|
||||
CTAGS = ctags
|
||||
CSCOPE = cscope
|
||||
DIST_SUBDIRS = $(SUBDIRS)
|
||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||
distdir = $(PACKAGE)-$(VERSION)
|
||||
top_distdir = $(distdir)
|
||||
am__remove_distdir = \
|
||||
{ test ! -d "$(distdir)" \
|
||||
|| { find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
|
||||
&& rm -fr "$(distdir)"; }; }
|
||||
if test -d "$(distdir)"; then \
|
||||
find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
|
||||
&& rm -rf "$(distdir)" \
|
||||
|| { sleep 5 && rm -rf "$(distdir)"; }; \
|
||||
else :; fi
|
||||
am__post_remove_distdir = $(am__remove_distdir)
|
||||
am__relativize = \
|
||||
dir0=`pwd`; \
|
||||
sed_first='s,^\([^/]*\)/.*$$,\1,'; \
|
||||
@@ -130,25 +225,29 @@ am__relativize = \
|
||||
reldir="$$dir2"
|
||||
DIST_ARCHIVES = $(distdir).tar.gz
|
||||
GZIP_ENV = --best
|
||||
DIST_TARGETS = dist-gzip
|
||||
distuninstallcheck_listfiles = find . -type f -print
|
||||
am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \
|
||||
| sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$'
|
||||
distcleancheck_listfiles = find . -type f -print
|
||||
ACLOCAL = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing --run aclocal-1.11
|
||||
AMTAR = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing --run tar
|
||||
AM_CPPFLAGS = -fexceptions -fPIC -std=c++1z -I/usr/local/epics/base/include/ -I/usr/local/epics/base/include/os/Linux -I/opt/gfa/cafe/boost/boost_1_61_0/include/boost -I/opt/gfa/cafe/boost/boost_1_61_0/include -I$(top_srcdir)/include
|
||||
AM_LDFLAGS = -L/usr/local/epics/base/lib/SL6-x86_64 -Wl,-rpath,/usr/local/epics/base/lib/SL6-x86_64 @CAFE_LIBS@
|
||||
ACLOCAL = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing aclocal-1.13
|
||||
AMTAR = $${TAR-tar}
|
||||
AM_CPPFLAGS = -fexceptions -fPIC -std=c++1z -I/usr/local/epics/base/include/ -I/usr/local/epics/base/include/os/Linux -I/opt/gfa/cafe/boost/boost_1_61_0/include/boost -I/opt/gfa/cafe/boost/boost_1_61_0/include -I/ioc/python/latest/include/python3.10 -I/ioc/python/latest/lib/python3.10/site-packages/numpy/core/include -I$(top_srcdir)/include
|
||||
AM_DEFAULT_VERBOSITY = 1
|
||||
AM_LDFLAGS = -L/usr/local/epics/base/lib/RHEL7-x86_64 -Wl,-rpath,/usr/local/epics/base/lib/RHEL7-x86_64 -L/ioc/python/latest/lib -Wl,-rpath,/ioc/python/latest/lib @CAFE_LIBS@
|
||||
AR = ar
|
||||
AUTOCONF = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing --run autoconf
|
||||
AUTOHEADER = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing --run autoheader
|
||||
AUTOMAKE = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing --run automake-1.11
|
||||
AUTOCONF = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing autoconf
|
||||
AUTOHEADER = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing autoheader
|
||||
AUTOMAKE = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing automake-1.13
|
||||
AWK = gawk
|
||||
CAFE_CPPFLAGS = -I$(top_srcdir)/include
|
||||
CC = /opt/psi/Programming/gcc/6.3.0/bin/gcc
|
||||
CC = /opt/psi/Programming/gcc/9.3.0/bin/gcc
|
||||
CCDEPMODE = depmode=gcc3
|
||||
CFLAGS = -g -O2
|
||||
CPP = /opt/psi/Programming/gcc/6.3.0/bin/gcc -E
|
||||
CPPFLAGS = -fexceptions -fPIC -std=c++1z -I/usr/local/epics/base/include/ -I/usr/local/epics/base/include/os/Linux -I/opt/gfa/cafe/boost/boost_1_61_0/include/boost -I/opt/gfa/cafe/boost/boost_1_61_0/include
|
||||
CXX = /opt/psi/Programming/gcc/6.3.0/bin/g++
|
||||
CXXCPP = /opt/psi/Programming/gcc/6.3.0/bin/g++ -E
|
||||
CPP = /opt/psi/Programming/gcc/9.3.0/bin/gcc -E
|
||||
CPPFLAGS = -fexceptions -fPIC -std=c++1z -I/usr/local/epics/base/include/ -I/usr/local/epics/base/include/os/Linux -I/opt/gfa/cafe/boost/boost_1_61_0/include/boost -I/opt/gfa/cafe/boost/boost_1_61_0/include -I/ioc/python/latest/include/python3.10 -I/ioc/python/latest/lib/python3.10/site-packages/numpy/core/include
|
||||
CXX = /opt/psi/Programming/gcc/9.3.0/bin/g++
|
||||
CXXCPP = /opt/psi/Programming/gcc/9.3.0/bin/g++ -E
|
||||
CXXDEPMODE = depmode=gcc3
|
||||
CXXFLAGS = -g -O2
|
||||
CYGPATH_W = echo
|
||||
@@ -160,27 +259,27 @@ DUMPBIN =
|
||||
ECHO_C =
|
||||
ECHO_N = -n
|
||||
ECHO_T =
|
||||
EGREP = /bin/grep -E
|
||||
EGREP = /usr/bin/grep -E
|
||||
EXEEXT =
|
||||
FGREP = /bin/grep -F
|
||||
GREP = /bin/grep
|
||||
FGREP = /usr/bin/grep -F
|
||||
GREP = /usr/bin/grep
|
||||
INSTALL = /usr/bin/install -c
|
||||
INSTALL_DATA = ${INSTALL} -m 644
|
||||
INSTALL_PROGRAM = ${INSTALL}
|
||||
INSTALL_SCRIPT = ${INSTALL}
|
||||
INSTALL_STRIP_PROGRAM = $(install_sh) -c -s
|
||||
LD = /usr/bin/ld -m elf_x86_64
|
||||
LDFLAGS = -L/usr/local/epics/base/lib/SL6-x86_64 -Wl,-rpath,/usr/local/epics/base/lib/SL6-x86_64
|
||||
LDFLAGS = -L/usr/local/epics/base/lib/RHEL7-x86_64 -Wl,-rpath,/usr/local/epics/base/lib/RHEL7-x86_64 -L/ioc/python/latest/lib -Wl,-rpath,/ioc/python/latest/lib
|
||||
LIBOBJS =
|
||||
LIBS =
|
||||
LIBS = -lpython3.10
|
||||
LIBTOOL = $(SHELL) $(top_builddir)/libtool
|
||||
LIPO =
|
||||
LN_S = ln -s
|
||||
LTLIBOBJS =
|
||||
LT_SYS_LIBRARY_PATH =
|
||||
MAKEINFO = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing --run makeinfo
|
||||
MAKEINFO = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing makeinfo
|
||||
MANIFEST_TOOL = :
|
||||
MKDIR_P = /bin/mkdir -p
|
||||
MKDIR_P = /usr/bin/mkdir -p
|
||||
NM = /usr/bin/nm -B
|
||||
NMEDIT =
|
||||
OBJDUMP = objdump
|
||||
@@ -190,29 +289,30 @@ OTOOL64 =
|
||||
PACKAGE = cafe
|
||||
PACKAGE_BUGREPORT = Bug reports to: jan.chrin@psi.ch
|
||||
PACKAGE_NAME = CAFE
|
||||
PACKAGE_STRING = CAFE 1.12.5
|
||||
PACKAGE_STRING = CAFE 1.14.4
|
||||
PACKAGE_TARNAME = cafe
|
||||
PACKAGE_VERSION = 1.12.5
|
||||
PACKAGE_URL =
|
||||
PACKAGE_VERSION = 1.14.4
|
||||
PATH_SEPARATOR = :
|
||||
RANLIB = ranlib
|
||||
SED = /bin/sed
|
||||
SED = /usr/bin/sed
|
||||
SET_MAKE =
|
||||
SHELL = /bin/sh
|
||||
STRIP = strip
|
||||
VERSION = 1.12.5
|
||||
VERSION = 1.14.4
|
||||
abs_builddir = /afs/psi.ch/project/cafe/gitlab/CAFE/cpp
|
||||
abs_srcdir = /afs/psi.ch/project/cafe/gitlab/CAFE/cpp
|
||||
abs_top_builddir = /afs/psi.ch/project/cafe/gitlab/CAFE/cpp
|
||||
abs_top_srcdir = /afs/psi.ch/project/cafe/gitlab/CAFE/cpp
|
||||
ac_ct_AR = ar
|
||||
ac_ct_CC = /opt/psi/Programming/gcc/6.3.0/bin/gcc
|
||||
ac_ct_CC = /opt/psi/Programming/gcc/9.3.0/bin/gcc
|
||||
ac_ct_CXX =
|
||||
ac_ct_DUMPBIN =
|
||||
am__include = include
|
||||
am__leading_dot = .
|
||||
am__quote =
|
||||
am__tar = ${AMTAR} chof - "$$tardir"
|
||||
am__untar = ${AMTAR} xf -
|
||||
am__tar = $${TAR-tar} chof - "$$tardir"
|
||||
am__untar = $${TAR-tar} xf -
|
||||
bindir = ${exec_prefix}/bin
|
||||
build = x86_64-unknown-linux-gnu
|
||||
build_alias =
|
||||
@@ -234,15 +334,15 @@ htmldir = ${docdir}
|
||||
includedir = ${prefix}/include
|
||||
infodir = ${datarootdir}/info
|
||||
install_sh = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/install-sh
|
||||
libdir = /opt/gfa/cafe/cpp/cafe-noqt-1.12.5-gcc-6.3.0/lib
|
||||
libdir = /opt/gfa/cafe/cpp/cafe-1.14.4-py310-gcc-9.3.0/lib/RHEL7-x86_64
|
||||
libexecdir = ${exec_prefix}/libexec
|
||||
localedir = ${datarootdir}/locale
|
||||
localstatedir = ${prefix}/var
|
||||
mandir = ${datarootdir}/man
|
||||
mkdir_p = /bin/mkdir -p
|
||||
mkdir_p = $(MKDIR_P)
|
||||
oldincludedir = /usr/include
|
||||
pdfdir = ${docdir}
|
||||
prefix = /opt/gfa/cafe/cpp/cafe-noqt-1.12.5-gcc-6.3.0
|
||||
prefix = /opt/gfa/cafe/cpp/cafe-1.14.4-py310-gcc-9.3.0
|
||||
program_transform_name = s,x,x,
|
||||
psdir = ${docdir}
|
||||
sbindir = ${exec_prefix}/sbin
|
||||
@@ -259,7 +359,7 @@ ACLOCAL_AMFLAGS = -I m4
|
||||
all: all-recursive
|
||||
|
||||
.SUFFIXES:
|
||||
am--refresh:
|
||||
am--refresh: makefile
|
||||
@:
|
||||
$(srcdir)/makefile.in: $(srcdir)/makefile.am $(am__configure_deps)
|
||||
@for dep in $?; do \
|
||||
@@ -295,10 +395,8 @@ $(ACLOCAL_M4): $(am__aclocal_m4_deps)
|
||||
$(am__aclocal_m4_deps):
|
||||
|
||||
./include/config.h: ./include/stamp-h1
|
||||
@if test ! -f $@; then \
|
||||
rm -f ./include/stamp-h1; \
|
||||
$(MAKE) $(AM_MAKEFLAGS) ./include/stamp-h1; \
|
||||
else :; fi
|
||||
@if test ! -f $@; then rm -f ./include/stamp-h1; else :; fi
|
||||
@if test ! -f $@; then $(MAKE) $(AM_MAKEFLAGS) ./include/stamp-h1; else :; fi
|
||||
|
||||
./include/stamp-h1: $(top_srcdir)/./include/config.in $(top_builddir)/config.status
|
||||
@rm -f ./include/stamp-h1
|
||||
@@ -321,8 +419,11 @@ distclean-libtool:
|
||||
-rm -f libtool config.lt
|
||||
install-includeHEADERS: $(include_HEADERS)
|
||||
@$(NORMAL_INSTALL)
|
||||
test -z "$(includedir)" || $(MKDIR_P) "$(DESTDIR)$(includedir)"
|
||||
@list='$(include_HEADERS)'; test -n "$(includedir)" || list=; \
|
||||
if test -n "$$list"; then \
|
||||
echo " $(MKDIR_P) '$(DESTDIR)$(includedir)'"; \
|
||||
$(MKDIR_P) "$(DESTDIR)$(includedir)" || exit 1; \
|
||||
fi; \
|
||||
for p in $$list; do \
|
||||
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
|
||||
echo "$$d$$p"; \
|
||||
@@ -336,27 +437,28 @@ uninstall-includeHEADERS:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@list='$(include_HEADERS)'; test -n "$(includedir)" || list=; \
|
||||
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
|
||||
test -n "$$files" || exit 0; \
|
||||
echo " ( cd '$(DESTDIR)$(includedir)' && rm -f" $$files ")"; \
|
||||
cd "$(DESTDIR)$(includedir)" && rm -f $$files
|
||||
dir='$(DESTDIR)$(includedir)'; $(am__uninstall_files_from_dir)
|
||||
|
||||
# This directory's subdirectories are mostly independent; you can cd
|
||||
# into them and run `make' without going through this Makefile.
|
||||
# To change the values of `make' variables: instead of editing Makefiles,
|
||||
# (1) if the variable is set in `config.status', edit `config.status'
|
||||
# (which will cause the Makefiles to be regenerated when you run `make');
|
||||
# (2) otherwise, pass the desired values on the `make' command line.
|
||||
$(RECURSIVE_TARGETS):
|
||||
@fail= failcom='exit 1'; \
|
||||
for f in x $$MAKEFLAGS; do \
|
||||
case $$f in \
|
||||
*=* | --[!k]*);; \
|
||||
*k*) failcom='fail=yes';; \
|
||||
esac; \
|
||||
done; \
|
||||
# into them and run 'make' without going through this Makefile.
|
||||
# To change the values of 'make' variables: instead of editing Makefiles,
|
||||
# (1) if the variable is set in 'config.status', edit 'config.status'
|
||||
# (which will cause the Makefiles to be regenerated when you run 'make');
|
||||
# (2) otherwise, pass the desired values on the 'make' command line.
|
||||
$(am__recursive_targets):
|
||||
@fail=; \
|
||||
if $(am__make_keepgoing); then \
|
||||
failcom='fail=yes'; \
|
||||
else \
|
||||
failcom='exit 1'; \
|
||||
fi; \
|
||||
dot_seen=no; \
|
||||
target=`echo $@ | sed s/-recursive//`; \
|
||||
list='$(SUBDIRS)'; for subdir in $$list; do \
|
||||
case "$@" in \
|
||||
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
|
||||
*) list='$(SUBDIRS)' ;; \
|
||||
esac; \
|
||||
for subdir in $$list; do \
|
||||
echo "Making $$target in $$subdir"; \
|
||||
if test "$$subdir" = "."; then \
|
||||
dot_seen=yes; \
|
||||
@@ -371,57 +473,12 @@ $(RECURSIVE_TARGETS):
|
||||
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
|
||||
fi; test -z "$$fail"
|
||||
|
||||
$(RECURSIVE_CLEAN_TARGETS):
|
||||
@fail= failcom='exit 1'; \
|
||||
for f in x $$MAKEFLAGS; do \
|
||||
case $$f in \
|
||||
*=* | --[!k]*);; \
|
||||
*k*) failcom='fail=yes';; \
|
||||
esac; \
|
||||
done; \
|
||||
dot_seen=no; \
|
||||
case "$@" in \
|
||||
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
|
||||
*) list='$(SUBDIRS)' ;; \
|
||||
esac; \
|
||||
rev=''; for subdir in $$list; do \
|
||||
if test "$$subdir" = "."; then :; else \
|
||||
rev="$$subdir $$rev"; \
|
||||
fi; \
|
||||
done; \
|
||||
rev="$$rev ."; \
|
||||
target=`echo $@ | sed s/-recursive//`; \
|
||||
for subdir in $$rev; do \
|
||||
echo "Making $$target in $$subdir"; \
|
||||
if test "$$subdir" = "."; then \
|
||||
local_target="$$target-am"; \
|
||||
else \
|
||||
local_target="$$target"; \
|
||||
fi; \
|
||||
($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|
||||
|| eval $$failcom; \
|
||||
done && test -z "$$fail"
|
||||
tags-recursive:
|
||||
list='$(SUBDIRS)'; for subdir in $$list; do \
|
||||
test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
|
||||
done
|
||||
ctags-recursive:
|
||||
list='$(SUBDIRS)'; for subdir in $$list; do \
|
||||
test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
|
||||
done
|
||||
ID: $(am__tagged_files)
|
||||
$(am__define_uniq_tagged_files); mkid -fID $$unique
|
||||
tags: tags-recursive
|
||||
TAGS: tags
|
||||
|
||||
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
||||
mkid -fID $$unique
|
||||
tags: TAGS
|
||||
|
||||
TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||
$(TAGS_FILES) $(LISP)
|
||||
tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
|
||||
set x; \
|
||||
here=`pwd`; \
|
||||
if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
|
||||
@@ -437,12 +494,7 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||
set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
|
||||
fi; \
|
||||
done; \
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
||||
$(am__define_uniq_tagged_files); \
|
||||
shift; \
|
||||
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
|
||||
test -n "$$unique" || unique=$$empty_fix; \
|
||||
@@ -454,15 +506,11 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||
$$unique; \
|
||||
fi; \
|
||||
fi
|
||||
ctags: CTAGS
|
||||
CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||
$(TAGS_FILES) $(LISP)
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
||||
ctags: ctags-recursive
|
||||
|
||||
CTAGS: ctags
|
||||
ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
|
||||
$(am__define_uniq_tagged_files); \
|
||||
test -z "$(CTAGS_ARGS)$$unique" \
|
||||
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
|
||||
$$unique
|
||||
@@ -471,9 +519,31 @@ GTAGS:
|
||||
here=`$(am__cd) $(top_builddir) && pwd` \
|
||||
&& $(am__cd) $(top_srcdir) \
|
||||
&& gtags -i $(GTAGS_ARGS) "$$here"
|
||||
cscope: cscope.files
|
||||
test ! -s cscope.files \
|
||||
|| $(CSCOPE) -b -q $(AM_CSCOPEFLAGS) $(CSCOPEFLAGS) -i cscope.files $(CSCOPE_ARGS)
|
||||
clean-cscope:
|
||||
-rm -f cscope.files
|
||||
cscope.files: clean-cscope cscopelist
|
||||
cscopelist: cscopelist-recursive
|
||||
|
||||
cscopelist-am: $(am__tagged_files)
|
||||
list='$(am__tagged_files)'; \
|
||||
case "$(srcdir)" in \
|
||||
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
|
||||
*) sdir=$(subdir)/$(srcdir) ;; \
|
||||
esac; \
|
||||
for i in $$list; do \
|
||||
if test -f "$$i"; then \
|
||||
echo "$(subdir)/$$i"; \
|
||||
else \
|
||||
echo "$$sdir/$$i"; \
|
||||
fi; \
|
||||
done >> $(top_builddir)/cscope.files
|
||||
|
||||
distclean-tags:
|
||||
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
||||
-rm -f cscope.out cscope.in.out cscope.po.out cscope.files
|
||||
|
||||
distdir: $(DISTFILES)
|
||||
$(am__remove_distdir)
|
||||
@@ -509,13 +579,10 @@ distdir: $(DISTFILES)
|
||||
done
|
||||
@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
|
||||
if test "$$subdir" = .; then :; else \
|
||||
test -d "$(distdir)/$$subdir" \
|
||||
|| $(MKDIR_P) "$(distdir)/$$subdir" \
|
||||
|| exit 1; \
|
||||
fi; \
|
||||
done
|
||||
@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
|
||||
if test "$$subdir" = .; then :; else \
|
||||
$(am__make_dryrun) \
|
||||
|| test -d "$(distdir)/$$subdir" \
|
||||
|| $(MKDIR_P) "$(distdir)/$$subdir" \
|
||||
|| exit 1; \
|
||||
dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
|
||||
$(am__relativize); \
|
||||
new_distdir=$$reldir; \
|
||||
@@ -544,36 +611,36 @@ distdir: $(DISTFILES)
|
||||
|| chmod -R a+r "$(distdir)"
|
||||
dist-gzip: distdir
|
||||
tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
|
||||
$(am__remove_distdir)
|
||||
$(am__post_remove_distdir)
|
||||
|
||||
dist-bzip2: distdir
|
||||
tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
|
||||
$(am__remove_distdir)
|
||||
tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2
|
||||
$(am__post_remove_distdir)
|
||||
|
||||
dist-lzma: distdir
|
||||
tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma
|
||||
$(am__remove_distdir)
|
||||
dist-lzip: distdir
|
||||
tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz
|
||||
$(am__post_remove_distdir)
|
||||
|
||||
dist-xz: distdir
|
||||
tardir=$(distdir) && $(am__tar) | xz -c >$(distdir).tar.xz
|
||||
$(am__remove_distdir)
|
||||
tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
|
||||
$(am__post_remove_distdir)
|
||||
|
||||
dist-tarZ: distdir
|
||||
tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
|
||||
$(am__remove_distdir)
|
||||
$(am__post_remove_distdir)
|
||||
|
||||
dist-shar: distdir
|
||||
shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
|
||||
$(am__remove_distdir)
|
||||
$(am__post_remove_distdir)
|
||||
|
||||
dist-zip: distdir
|
||||
-rm -f $(distdir).zip
|
||||
zip -rq $(distdir).zip $(distdir)
|
||||
$(am__remove_distdir)
|
||||
$(am__post_remove_distdir)
|
||||
|
||||
dist dist-all: distdir
|
||||
tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
|
||||
$(am__remove_distdir)
|
||||
dist dist-all:
|
||||
$(MAKE) $(AM_MAKEFLAGS) $(DIST_TARGETS) am__post_remove_distdir='@:'
|
||||
$(am__post_remove_distdir)
|
||||
|
||||
# This target untars the dist file and tries a VPATH configuration. Then
|
||||
# it guarantees that the distribution is self-contained by making another
|
||||
@@ -584,8 +651,8 @@ distcheck: dist
|
||||
GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\
|
||||
*.tar.bz2*) \
|
||||
bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
|
||||
*.tar.lzma*) \
|
||||
lzma -dc $(distdir).tar.lzma | $(am__untar) ;;\
|
||||
*.tar.lz*) \
|
||||
lzip -dc $(distdir).tar.lz | $(am__untar) ;;\
|
||||
*.tar.xz*) \
|
||||
xz -dc $(distdir).tar.xz | $(am__untar) ;;\
|
||||
*.tar.Z*) \
|
||||
@@ -595,9 +662,9 @@ distcheck: dist
|
||||
*.zip*) \
|
||||
unzip $(distdir).zip ;;\
|
||||
esac
|
||||
chmod -R a-w $(distdir); chmod u+w $(distdir)
|
||||
mkdir $(distdir)/_build
|
||||
mkdir $(distdir)/_inst
|
||||
chmod -R a-w $(distdir)
|
||||
chmod u+w $(distdir)
|
||||
mkdir $(distdir)/_build $(distdir)/_inst
|
||||
chmod a-w $(distdir)
|
||||
test -d $(distdir)/_build || exit 0; \
|
||||
dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
|
||||
@@ -605,6 +672,7 @@ distcheck: dist
|
||||
&& am__cwd=`pwd` \
|
||||
&& $(am__cd) $(distdir)/_build \
|
||||
&& ../configure --srcdir=.. --prefix="$$dc_install_base" \
|
||||
$(AM_DISTCHECK_CONFIGURE_FLAGS) \
|
||||
$(DISTCHECK_CONFIGURE_FLAGS) \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) \
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) dvi \
|
||||
@@ -628,13 +696,21 @@ distcheck: dist
|
||||
&& $(MAKE) $(AM_MAKEFLAGS) distcleancheck \
|
||||
&& cd "$$am__cwd" \
|
||||
|| exit 1
|
||||
$(am__remove_distdir)
|
||||
$(am__post_remove_distdir)
|
||||
@(echo "$(distdir) archives ready for distribution: "; \
|
||||
list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
|
||||
sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
|
||||
distuninstallcheck:
|
||||
@$(am__cd) '$(distuninstallcheck_dir)' \
|
||||
&& test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
|
||||
@test -n '$(distuninstallcheck_dir)' || { \
|
||||
echo 'ERROR: trying to run $@ with an empty' \
|
||||
'$$(distuninstallcheck_dir)' >&2; \
|
||||
exit 1; \
|
||||
}; \
|
||||
$(am__cd) '$(distuninstallcheck_dir)' || { \
|
||||
echo 'ERROR: cannot chdir into $(distuninstallcheck_dir)' >&2; \
|
||||
exit 1; \
|
||||
}; \
|
||||
test `$(am__distuninstallcheck_listfiles) | wc -l` -eq 0 \
|
||||
|| { echo "ERROR: files left after uninstall:" ; \
|
||||
if test -n "$(DESTDIR)"; then \
|
||||
echo " (check DESTDIR support)"; \
|
||||
@@ -668,10 +744,15 @@ install-am: all-am
|
||||
|
||||
installcheck: installcheck-recursive
|
||||
install-strip:
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
`test -z '$(STRIP)' || \
|
||||
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
|
||||
if test -z '$(STRIP)'; then \
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
install; \
|
||||
else \
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
|
||||
fi
|
||||
mostlyclean-generic:
|
||||
|
||||
clean-generic:
|
||||
@@ -753,25 +834,24 @@ ps-am:
|
||||
|
||||
uninstall-am: uninstall-includeHEADERS
|
||||
|
||||
.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
|
||||
install-am install-strip tags-recursive
|
||||
.MAKE: $(am__recursive_targets) install-am install-strip
|
||||
|
||||
.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
|
||||
all all-am am--refresh check check-am clean clean-generic \
|
||||
clean-libtool ctags ctags-recursive dist dist-all dist-bzip2 \
|
||||
dist-gzip dist-lzma dist-shar dist-tarZ dist-xz dist-zip \
|
||||
distcheck distclean distclean-generic distclean-hdr \
|
||||
distclean-libtool distclean-tags distcleancheck distdir \
|
||||
distuninstallcheck dvi dvi-am html html-am info info-am \
|
||||
install install-am install-data install-data-am install-dvi \
|
||||
install-dvi-am install-exec install-exec-am install-html \
|
||||
install-html-am install-includeHEADERS install-info \
|
||||
install-info-am install-man install-pdf install-pdf-am \
|
||||
install-ps install-ps-am install-strip installcheck \
|
||||
installcheck-am installdirs installdirs-am maintainer-clean \
|
||||
maintainer-clean-generic mostlyclean mostlyclean-generic \
|
||||
mostlyclean-libtool pdf pdf-am ps ps-am tags tags-recursive \
|
||||
uninstall uninstall-am uninstall-includeHEADERS
|
||||
.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \
|
||||
am--refresh check check-am clean clean-cscope clean-generic \
|
||||
clean-libtool cscope cscopelist-am ctags ctags-am dist \
|
||||
dist-all dist-bzip2 dist-gzip dist-lzip dist-shar dist-tarZ \
|
||||
dist-xz dist-zip distcheck distclean distclean-generic \
|
||||
distclean-hdr distclean-libtool distclean-tags distcleancheck \
|
||||
distdir distuninstallcheck dvi dvi-am html html-am info \
|
||||
info-am install install-am install-data install-data-am \
|
||||
install-dvi install-dvi-am install-exec install-exec-am \
|
||||
install-html install-html-am install-includeHEADERS \
|
||||
install-info install-info-am install-man install-pdf \
|
||||
install-pdf-am install-ps install-ps-am install-strip \
|
||||
installcheck installcheck-am installdirs installdirs-am \
|
||||
maintainer-clean maintainer-clean-generic mostlyclean \
|
||||
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
|
||||
tags tags-am uninstall uninstall-am uninstall-includeHEADERS
|
||||
|
||||
|
||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||
|
||||
@@ -1 +1 @@
|
||||
PyCafe3.cpp
|
||||
PyCafe_sls.cpp
|
||||
129051
src/PyCafe2.cpp
129051
src/PyCafe2.cpp
File diff suppressed because it is too large
Load Diff
68149
src/PyCafe2_March7.cpp
68149
src/PyCafe2_March7.cpp
File diff suppressed because it is too large
Load Diff
101266
src/PyCafe3_April.cpp
101266
src/PyCafe3_April.cpp
File diff suppressed because it is too large
Load Diff
103919
src/PyCafe3_March7.cpp
103919
src/PyCafe3_March7.cpp
File diff suppressed because it is too large
Load Diff
156764
src/PyCafe_sls.cpp
Normal file
156764
src/PyCafe_sls.cpp
Normal file
File diff suppressed because it is too large
Load Diff
0
src/bitshuffle/.deps/.dirstamp
Normal file
0
src/bitshuffle/.deps/.dirstamp
Normal file
116
src/bitshuffle/.deps/bitshuffle.Plo
Normal file
116
src/bitshuffle/.deps/bitshuffle.Plo
Normal file
@@ -0,0 +1,116 @@
|
||||
bitshuffle/bitshuffle.lo: bitshuffle/bitshuffle.c \
|
||||
/usr/include/stdc-predef.h bitshuffle/bitshuffle.h /usr/include/stdlib.h \
|
||||
/usr/include/features.h /usr/include/sys/cdefs.h \
|
||||
/usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
|
||||
/usr/include/gnu/stubs-64.h \
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/stddef.h \
|
||||
/usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
|
||||
/usr/include/endian.h /usr/include/bits/endian.h \
|
||||
/usr/include/bits/byteswap.h /usr/include/bits/types.h \
|
||||
/usr/include/bits/typesizes.h /usr/include/bits/byteswap-16.h \
|
||||
/usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \
|
||||
/usr/include/bits/select.h /usr/include/bits/sigset.h \
|
||||
/usr/include/bits/time.h /usr/include/sys/sysmacros.h \
|
||||
/usr/include/bits/pthreadtypes.h /usr/include/alloca.h \
|
||||
/usr/include/bits/stdlib-float.h bitshuffle/bitshuffle_core.h \
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/stdint.h \
|
||||
/usr/include/stdint.h /usr/include/bits/wchar.h \
|
||||
bitshuffle/bitshuffle_internals.h bitshuffle/iochain.h \
|
||||
.././include/lz4.h /usr/include/stdio.h /usr/include/libio.h \
|
||||
/usr/include/_G_config.h /usr/include/wchar.h \
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/stdarg.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
|
||||
/usr/include/bits/stdio.h /usr/include/string.h /usr/include/xlocale.h \
|
||||
/usr/include/bits/string.h /usr/include/bits/string2.h
|
||||
|
||||
/usr/include/stdc-predef.h:
|
||||
|
||||
bitshuffle/bitshuffle.h:
|
||||
|
||||
/usr/include/stdlib.h:
|
||||
|
||||
/usr/include/features.h:
|
||||
|
||||
/usr/include/sys/cdefs.h:
|
||||
|
||||
/usr/include/bits/wordsize.h:
|
||||
|
||||
/usr/include/gnu/stubs.h:
|
||||
|
||||
/usr/include/gnu/stubs-64.h:
|
||||
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/stddef.h:
|
||||
|
||||
/usr/include/bits/waitflags.h:
|
||||
|
||||
/usr/include/bits/waitstatus.h:
|
||||
|
||||
/usr/include/endian.h:
|
||||
|
||||
/usr/include/bits/endian.h:
|
||||
|
||||
/usr/include/bits/byteswap.h:
|
||||
|
||||
/usr/include/bits/types.h:
|
||||
|
||||
/usr/include/bits/typesizes.h:
|
||||
|
||||
/usr/include/bits/byteswap-16.h:
|
||||
|
||||
/usr/include/sys/types.h:
|
||||
|
||||
/usr/include/time.h:
|
||||
|
||||
/usr/include/sys/select.h:
|
||||
|
||||
/usr/include/bits/select.h:
|
||||
|
||||
/usr/include/bits/sigset.h:
|
||||
|
||||
/usr/include/bits/time.h:
|
||||
|
||||
/usr/include/sys/sysmacros.h:
|
||||
|
||||
/usr/include/bits/pthreadtypes.h:
|
||||
|
||||
/usr/include/alloca.h:
|
||||
|
||||
/usr/include/bits/stdlib-float.h:
|
||||
|
||||
bitshuffle/bitshuffle_core.h:
|
||||
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/stdint.h:
|
||||
|
||||
/usr/include/stdint.h:
|
||||
|
||||
/usr/include/bits/wchar.h:
|
||||
|
||||
bitshuffle/bitshuffle_internals.h:
|
||||
|
||||
bitshuffle/iochain.h:
|
||||
|
||||
.././include/lz4.h:
|
||||
|
||||
/usr/include/stdio.h:
|
||||
|
||||
/usr/include/libio.h:
|
||||
|
||||
/usr/include/_G_config.h:
|
||||
|
||||
/usr/include/wchar.h:
|
||||
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/stdarg.h:
|
||||
|
||||
/usr/include/bits/stdio_lim.h:
|
||||
|
||||
/usr/include/bits/sys_errlist.h:
|
||||
|
||||
/usr/include/bits/stdio.h:
|
||||
|
||||
/usr/include/string.h:
|
||||
|
||||
/usr/include/xlocale.h:
|
||||
|
||||
/usr/include/bits/string.h:
|
||||
|
||||
/usr/include/bits/string2.h:
|
||||
123
src/bitshuffle/.deps/bitshuffle_core.Plo
Normal file
123
src/bitshuffle/.deps/bitshuffle_core.Plo
Normal file
@@ -0,0 +1,123 @@
|
||||
bitshuffle/bitshuffle_core.lo: bitshuffle/bitshuffle_core.c \
|
||||
/usr/include/stdc-predef.h bitshuffle/bitshuffle_core.h \
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/stdint.h \
|
||||
/usr/include/stdint.h /usr/include/features.h /usr/include/sys/cdefs.h \
|
||||
/usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
|
||||
/usr/include/gnu/stubs-64.h /usr/include/bits/wchar.h \
|
||||
/usr/include/stdlib.h \
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/stddef.h \
|
||||
/usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
|
||||
/usr/include/endian.h /usr/include/bits/endian.h \
|
||||
/usr/include/bits/byteswap.h /usr/include/bits/types.h \
|
||||
/usr/include/bits/typesizes.h /usr/include/bits/byteswap-16.h \
|
||||
/usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \
|
||||
/usr/include/bits/select.h /usr/include/bits/sigset.h \
|
||||
/usr/include/bits/time.h /usr/include/sys/sysmacros.h \
|
||||
/usr/include/bits/pthreadtypes.h /usr/include/alloca.h \
|
||||
/usr/include/bits/stdlib-float.h bitshuffle/bitshuffle_internals.h \
|
||||
bitshuffle/iochain.h /usr/include/stdio.h /usr/include/libio.h \
|
||||
/usr/include/_G_config.h /usr/include/wchar.h \
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/stdarg.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
|
||||
/usr/include/bits/stdio.h /usr/include/string.h /usr/include/xlocale.h \
|
||||
/usr/include/bits/string.h /usr/include/bits/string2.h \
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/emmintrin.h \
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/xmmintrin.h \
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/mmintrin.h \
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/mm_malloc.h
|
||||
|
||||
/usr/include/stdc-predef.h:
|
||||
|
||||
bitshuffle/bitshuffle_core.h:
|
||||
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/stdint.h:
|
||||
|
||||
/usr/include/stdint.h:
|
||||
|
||||
/usr/include/features.h:
|
||||
|
||||
/usr/include/sys/cdefs.h:
|
||||
|
||||
/usr/include/bits/wordsize.h:
|
||||
|
||||
/usr/include/gnu/stubs.h:
|
||||
|
||||
/usr/include/gnu/stubs-64.h:
|
||||
|
||||
/usr/include/bits/wchar.h:
|
||||
|
||||
/usr/include/stdlib.h:
|
||||
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/stddef.h:
|
||||
|
||||
/usr/include/bits/waitflags.h:
|
||||
|
||||
/usr/include/bits/waitstatus.h:
|
||||
|
||||
/usr/include/endian.h:
|
||||
|
||||
/usr/include/bits/endian.h:
|
||||
|
||||
/usr/include/bits/byteswap.h:
|
||||
|
||||
/usr/include/bits/types.h:
|
||||
|
||||
/usr/include/bits/typesizes.h:
|
||||
|
||||
/usr/include/bits/byteswap-16.h:
|
||||
|
||||
/usr/include/sys/types.h:
|
||||
|
||||
/usr/include/time.h:
|
||||
|
||||
/usr/include/sys/select.h:
|
||||
|
||||
/usr/include/bits/select.h:
|
||||
|
||||
/usr/include/bits/sigset.h:
|
||||
|
||||
/usr/include/bits/time.h:
|
||||
|
||||
/usr/include/sys/sysmacros.h:
|
||||
|
||||
/usr/include/bits/pthreadtypes.h:
|
||||
|
||||
/usr/include/alloca.h:
|
||||
|
||||
/usr/include/bits/stdlib-float.h:
|
||||
|
||||
bitshuffle/bitshuffle_internals.h:
|
||||
|
||||
bitshuffle/iochain.h:
|
||||
|
||||
/usr/include/stdio.h:
|
||||
|
||||
/usr/include/libio.h:
|
||||
|
||||
/usr/include/_G_config.h:
|
||||
|
||||
/usr/include/wchar.h:
|
||||
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/stdarg.h:
|
||||
|
||||
/usr/include/bits/stdio_lim.h:
|
||||
|
||||
/usr/include/bits/sys_errlist.h:
|
||||
|
||||
/usr/include/bits/stdio.h:
|
||||
|
||||
/usr/include/string.h:
|
||||
|
||||
/usr/include/xlocale.h:
|
||||
|
||||
/usr/include/bits/string.h:
|
||||
|
||||
/usr/include/bits/string2.h:
|
||||
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/emmintrin.h:
|
||||
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/xmmintrin.h:
|
||||
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/mmintrin.h:
|
||||
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/mm_malloc.h:
|
||||
68
src/bitshuffle/.deps/iochain.Plo
Normal file
68
src/bitshuffle/.deps/iochain.Plo
Normal file
@@ -0,0 +1,68 @@
|
||||
bitshuffle/iochain.lo: bitshuffle/iochain.c /usr/include/stdc-predef.h \
|
||||
/usr/include/stdlib.h /usr/include/features.h /usr/include/sys/cdefs.h \
|
||||
/usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
|
||||
/usr/include/gnu/stubs-64.h \
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/stddef.h \
|
||||
/usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
|
||||
/usr/include/endian.h /usr/include/bits/endian.h \
|
||||
/usr/include/bits/byteswap.h /usr/include/bits/types.h \
|
||||
/usr/include/bits/typesizes.h /usr/include/bits/byteswap-16.h \
|
||||
/usr/include/sys/types.h /usr/include/time.h /usr/include/sys/select.h \
|
||||
/usr/include/bits/select.h /usr/include/bits/sigset.h \
|
||||
/usr/include/bits/time.h /usr/include/sys/sysmacros.h \
|
||||
/usr/include/bits/pthreadtypes.h /usr/include/alloca.h \
|
||||
/usr/include/bits/stdlib-float.h bitshuffle/iochain.h
|
||||
|
||||
/usr/include/stdc-predef.h:
|
||||
|
||||
/usr/include/stdlib.h:
|
||||
|
||||
/usr/include/features.h:
|
||||
|
||||
/usr/include/sys/cdefs.h:
|
||||
|
||||
/usr/include/bits/wordsize.h:
|
||||
|
||||
/usr/include/gnu/stubs.h:
|
||||
|
||||
/usr/include/gnu/stubs-64.h:
|
||||
|
||||
/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0/include/stddef.h:
|
||||
|
||||
/usr/include/bits/waitflags.h:
|
||||
|
||||
/usr/include/bits/waitstatus.h:
|
||||
|
||||
/usr/include/endian.h:
|
||||
|
||||
/usr/include/bits/endian.h:
|
||||
|
||||
/usr/include/bits/byteswap.h:
|
||||
|
||||
/usr/include/bits/types.h:
|
||||
|
||||
/usr/include/bits/typesizes.h:
|
||||
|
||||
/usr/include/bits/byteswap-16.h:
|
||||
|
||||
/usr/include/sys/types.h:
|
||||
|
||||
/usr/include/time.h:
|
||||
|
||||
/usr/include/sys/select.h:
|
||||
|
||||
/usr/include/bits/select.h:
|
||||
|
||||
/usr/include/bits/sigset.h:
|
||||
|
||||
/usr/include/bits/time.h:
|
||||
|
||||
/usr/include/sys/sysmacros.h:
|
||||
|
||||
/usr/include/bits/pthreadtypes.h:
|
||||
|
||||
/usr/include/alloca.h:
|
||||
|
||||
/usr/include/bits/stdlib-float.h:
|
||||
|
||||
bitshuffle/iochain.h:
|
||||
0
src/bitshuffle/.dirstamp
Normal file
0
src/bitshuffle/.dirstamp
Normal file
BIN
src/bitshuffle/.libs/bitshuffle.o
Normal file
BIN
src/bitshuffle/.libs/bitshuffle.o
Normal file
Binary file not shown.
BIN
src/bitshuffle/.libs/bitshuffle_core.o
Normal file
BIN
src/bitshuffle/.libs/bitshuffle_core.o
Normal file
Binary file not shown.
BIN
src/bitshuffle/.libs/iochain.o
Normal file
BIN
src/bitshuffle/.libs/iochain.o
Normal file
Binary file not shown.
12
src/bitshuffle/bitshuffle.lo
Normal file
12
src/bitshuffle/bitshuffle.lo
Normal file
@@ -0,0 +1,12 @@
|
||||
# bitshuffle/bitshuffle.lo - a libtool object file
|
||||
# Generated by libtool (GNU libtool) 2.4.6
|
||||
#
|
||||
# Please DO NOT delete this file!
|
||||
# It is necessary for linking the library.
|
||||
|
||||
# Name of the PIC object.
|
||||
pic_object='.libs/bitshuffle.o'
|
||||
|
||||
# Name of the non-PIC object
|
||||
non_pic_object='bitshuffle.o'
|
||||
|
||||
BIN
src/bitshuffle/bitshuffle.o
Normal file
BIN
src/bitshuffle/bitshuffle.o
Normal file
Binary file not shown.
12
src/bitshuffle/bitshuffle_core.lo
Normal file
12
src/bitshuffle/bitshuffle_core.lo
Normal file
@@ -0,0 +1,12 @@
|
||||
# bitshuffle/bitshuffle_core.lo - a libtool object file
|
||||
# Generated by libtool (GNU libtool) 2.4.6
|
||||
#
|
||||
# Please DO NOT delete this file!
|
||||
# It is necessary for linking the library.
|
||||
|
||||
# Name of the PIC object.
|
||||
pic_object='.libs/bitshuffle_core.o'
|
||||
|
||||
# Name of the non-PIC object
|
||||
non_pic_object='bitshuffle_core.o'
|
||||
|
||||
BIN
src/bitshuffle/bitshuffle_core.o
Normal file
BIN
src/bitshuffle/bitshuffle_core.o
Normal file
Binary file not shown.
12
src/bitshuffle/iochain.lo
Normal file
12
src/bitshuffle/iochain.lo
Normal file
@@ -0,0 +1,12 @@
|
||||
# bitshuffle/iochain.lo - a libtool object file
|
||||
# Generated by libtool (GNU libtool) 2.4.6
|
||||
#
|
||||
# Please DO NOT delete this file!
|
||||
# It is necessary for linking the library.
|
||||
|
||||
# Name of the PIC object.
|
||||
pic_object='.libs/iochain.o'
|
||||
|
||||
# Name of the non-PIC object
|
||||
non_pic_object='iochain.o'
|
||||
|
||||
BIN
src/bitshuffle/iochain.o
Normal file
BIN
src/bitshuffle/iochain.o
Normal file
Binary file not shown.
@@ -650,6 +650,27 @@ int CAFE::getCache(const unsigned int handle, PVDataHolder & pvd)
|
||||
if (it_handle != handle_index.end())
|
||||
{
|
||||
|
||||
|
||||
//Reset any possible put error that preceded call to getCache
|
||||
if ( (*it_handle).getStatus() == ECAFE_NOWTACCESS ||
|
||||
(*it_handle).getStatus() == ECA_PUTFAIL ||
|
||||
(*it_handle).getStatus() == ECA_PUTCBINPROG) {
|
||||
if(MUTEX)
|
||||
{
|
||||
cafeMutex.lock();
|
||||
}; //lock
|
||||
//std::cout << "getStatus - before:" << (*it_handle).getStatus() << std::endl;
|
||||
handle_index.modify(it_handle, change_status(ICAFE_NORMAL));
|
||||
pvd.status = ICAFE_NORMAL;
|
||||
//std::cout << "getStatus - after:" << (*it_handle).getStatus() << std::endl;
|
||||
if(MUTEX)
|
||||
{
|
||||
cafeMutex.unlock();
|
||||
}; //unlock
|
||||
}
|
||||
|
||||
|
||||
|
||||
//meant for use in callbacks in monitors!
|
||||
if ( (*it_handle).getChannelGetCacheWaitPolicy().getWaitKind() == CAFENUM::GET_CACHE_NO_CHECK)
|
||||
{
|
||||
|
||||
@@ -25,8 +25,9 @@ using namespace std;
|
||||
/**
|
||||
* \brief Callback function for ca_create_channel.
|
||||
* Modifies Conduit object accordingly
|
||||
* Function is not invoked on closechannel by user
|
||||
* \param args returns connection handler parameters \n
|
||||
* i.e. args.chid, args.op{CA_OP_CONN_UP, CA_OP_CONN_DOWN}
|
||||
* i.e. args.chid, args.op{CA_OP_CONN_UP, CA_OP_CONN_DOWN}
|
||||
*/
|
||||
void ChannelCreatePolicy::callbackHandlerCreate(struct connection_handler_args args)
|
||||
{
|
||||
@@ -315,6 +316,8 @@ void ChannelCreatePolicy::callbackHandlerCreate(struct connection_handler_args a
|
||||
cafeMutex.unlock();
|
||||
}
|
||||
|
||||
//std::cout << "DISCONNECT - has pycafe " << (*it_handle).getPyCafe() << std::endl;
|
||||
|
||||
#if HAVE_PYTHON_H
|
||||
// monitors
|
||||
if ((*it_handle).getPyCafe() )
|
||||
@@ -339,7 +342,8 @@ void ChannelCreatePolicy::callbackHandlerCreate(struct connection_handler_args a
|
||||
//std::cout << __METHOD__ << __LINE__ << " (*it_handle).CyDataeventHandler(); at DISCCONNECT " << (*it_handle).pv << std::endl;
|
||||
//cout << "(*it_handle).PyEventHandler(); " << (*itmp).getMonitorID() << endl;
|
||||
//(*it_handle).PyEventHandler((*itmp).getMonitorID());
|
||||
(*it_handle).CyDataEventHandler();
|
||||
//(*it_handle).CyDataEventHandler();
|
||||
(*it_handle).CyMonitorHandler();
|
||||
}
|
||||
//Disconnect signal
|
||||
if ( (*it_handle).getPyOpenCallbackFlag() )
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
#include <methodCallbacks.h>
|
||||
#include <granules.h>
|
||||
|
||||
#define RETURN_ON_ERROR false
|
||||
|
||||
using namespace std;
|
||||
using namespace boost::posix_time;
|
||||
@@ -31,7 +32,7 @@ void MonitorPolicy::callbackHandlerMonitor( struct event_handler_args args)
|
||||
{
|
||||
cout << __FILE__ << "//" << __LINE__ << "//" << __METHOD__ << endl;
|
||||
cout << "Status=" << args.status << " for channel " << ca_name (args.chid) << endl;
|
||||
//return;
|
||||
if (RETURN_ON_ERROR == true) return;
|
||||
}
|
||||
|
||||
unsigned int _handle = (unsigned long) ca_puser(args.chid);// args.usr; // ca_puser(args.chid);
|
||||
@@ -80,7 +81,6 @@ void MonitorPolicy::callbackHandlerMonitor( struct event_handler_args args)
|
||||
#if HAVE_ZEROMQ
|
||||
if (SF_WITH_PULSE_ID)
|
||||
{
|
||||
|
||||
cafeConduit_set::iterator itcs;
|
||||
unsigned long long pulseID=0;
|
||||
PVDataHolder pvd;
|
||||
@@ -136,6 +136,91 @@ void MonitorPolicy::callbackHandlerMonitor( struct event_handler_args args)
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* \brief Callback function for monitor method is invoked
|
||||
* with a pointer to the retrieved value; also fires a user supplied Python callback.
|
||||
* \param args input: event handler arguments
|
||||
*/
|
||||
void MonitorPolicy::PyCallbackHandlerMonitor (struct event_handler_args args)
|
||||
{
|
||||
#define __METHOD__ "MonitorPolicy::PyCallbackHandlerMonitor"
|
||||
|
||||
|
||||
if (args.status !=ECA_NORMAL)
|
||||
{
|
||||
cout << __FILE__ << "//" << __LINE__ << "//" << __METHOD__ << endl;
|
||||
cout << "Status=" << args.status << " for channel " << ca_name (args.chid) << endl;
|
||||
if (RETURN_ON_ERROR == true) return;
|
||||
}
|
||||
|
||||
unsigned int _handle = (unsigned long) ca_puser(args.chid);// args.usr; // ca_puser(args.chid);
|
||||
|
||||
cafeConduit_set_by_handle & handle_index = cs.get<by_handle> ();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
|
||||
it_handle = handle_index.find((unsigned int)_handle);
|
||||
|
||||
if (it_handle != handle_index.end())
|
||||
{
|
||||
|
||||
if(MUTEX)
|
||||
{
|
||||
cafeMutex.lock();
|
||||
}
|
||||
|
||||
handle_index.modify(it_handle, change_eventHandlerArgs (args));
|
||||
|
||||
if(MUTEX)
|
||||
{
|
||||
cafeMutex.unlock();
|
||||
}
|
||||
|
||||
#if HAVE_PYTHON_H
|
||||
unsigned long monid = (unsigned long) (*it_handle).getUsrArgs();
|
||||
MonitorPolicy mp = (*it_handle).getMonitorPolicy(monid);
|
||||
ptime timeNow(microsec_clock::local_time());
|
||||
|
||||
//Get time of last update as recorded in cache
|
||||
ptime timePrevious = mp.getLastUpdate(); //(*it_handle).getCallback_ptime();
|
||||
|
||||
//Compare times and if delta is greater than requested - fire event
|
||||
time_duration duration(timeNow-timePrevious);
|
||||
double timeElapsedMilliseconds= (double) duration.total_milliseconds();
|
||||
double updateDeltaMillioseconds = mp.getNotifyDeltaMilliSeconds();
|
||||
|
||||
//if ( (*it_handle).pv == "SIN-TIMAST-EVG0:TX-PULSEID " ) {
|
||||
//std::cout << (*it_handle).pv <<" time elapses " << timeElapsedMilliseconds << std::endl;
|
||||
//std::cout << "monitorID// " << monid << " wait" << mp.getNotifyDeltaMilliSeconds() << std::endl;
|
||||
//}
|
||||
|
||||
if (timeElapsedMilliseconds < (updateDeltaMillioseconds-5.61)) {
|
||||
return;
|
||||
}
|
||||
else {
|
||||
mp.setLastUpdate(timeNow);
|
||||
handle_index.modify(it_handle, change_monitorPolicy(mp));
|
||||
}
|
||||
//cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
//(*it_handle).PyEventHandler();
|
||||
//(*it_handle).CyEventHandler(); //pushes handle, pvname
|
||||
(*it_handle).CyMonitorHandler();
|
||||
#endif
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
cout << " Internal CAFE ERROR! Unknown Handle! handle=" << _handle << endl;
|
||||
}
|
||||
return;
|
||||
#undef __METHOD__
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* \brief Callback function for monitor method is invoked
|
||||
* with a pointer to the retrieved value; also fires a user supplied Python callback.
|
||||
@@ -152,7 +237,7 @@ void MonitorPolicy::PyCallbackHandlerMonitorData (struct event_handler_args args
|
||||
{
|
||||
cout << __FILE__ << "//" << __LINE__ << "//" << __METHOD__ << endl;
|
||||
cout << "Status=" << args.status << " for channel " << ca_name (args.chid) << endl;
|
||||
// return;
|
||||
if (RETURN_ON_ERROR == true) return;
|
||||
}
|
||||
|
||||
unsigned int _handle = (unsigned long) ca_puser(args.chid);// args.usr; // ca_puser(args.chid);
|
||||
@@ -181,7 +266,7 @@ void MonitorPolicy::PyCallbackHandlerMonitorData (struct event_handler_args args
|
||||
#if HAVE_PYTHON_H
|
||||
|
||||
//For monitors args.usr is the id of the monitorpolicy class
|
||||
//std::cout << "usrArgs == " << args.usr << std::endl;
|
||||
//std::cout << "HAS PYTHON usrArgs == " << args.usr << std::endl;
|
||||
//Place timecheck here
|
||||
//Get present timestamp
|
||||
unsigned long monid = (unsigned long) (*it_handle).getUsrArgs();
|
||||
@@ -190,7 +275,6 @@ void MonitorPolicy::PyCallbackHandlerMonitorData (struct event_handler_args args
|
||||
//std::cout << "monitorID " << mp.getNotifyDeltaMilliSeconds() << std::endl;
|
||||
//mp.setNotifyDeltaMilliSeconds(1000);
|
||||
|
||||
|
||||
ptime timeNow(microsec_clock::local_time());
|
||||
|
||||
//Get time of last update as recorded in cache
|
||||
@@ -199,31 +283,31 @@ void MonitorPolicy::PyCallbackHandlerMonitorData (struct event_handler_args args
|
||||
//Compare times and if delta is greater than requested - fire event
|
||||
time_duration duration(timeNow-timePrevious);
|
||||
double timeElapsedMilliseconds= (double) duration.total_milliseconds();
|
||||
double updateDeltaMillioseconds = mp.getNotifyDeltaMilliSeconds(); //1000; //1Hz
|
||||
|
||||
double updateDeltaMilliseconds = mp.getNotifyDeltaMilliSeconds(); //1000; //1Hz
|
||||
|
||||
//if ( (*it_handle).pv == "SINSB03-DSCR110:ENERGY-OP" ) {
|
||||
|
||||
//if ( (*it_handle).pv == "S10BC01-DBPM050:Q1" ) {
|
||||
//std::cout << (*it_handle).pv <<" time elapses " << timeElapsedMilliseconds << std::endl;
|
||||
//std::cout << "monitorID " << monid << " wait" << mp.getNotifyDeltaMilliSeconds() << std::endl;
|
||||
//}
|
||||
|
||||
|
||||
if (timeElapsedMilliseconds < updateDeltaMillioseconds*0.998) {
|
||||
if (timeElapsedMilliseconds < (updateDeltaMilliseconds-5.61)) {
|
||||
return;
|
||||
}
|
||||
else {
|
||||
//update cache with timeNow
|
||||
// handle_index.modify(it_handle, change_callback_ptime(timeNow));
|
||||
mp.setLastUpdate(timeNow);
|
||||
if(MUTEX) { cafeMutex.lock();}
|
||||
handle_index.modify(it_handle, change_monitorPolicy(mp));
|
||||
if(MUTEX) { cafeMutex.unlock();}
|
||||
//std::cout << (*it_handle).pv <<" time elapses " << timeElapsedMilliseconds << std::endl;
|
||||
}
|
||||
|
||||
if (args.type < DBR_GR_STRING)
|
||||
{
|
||||
//(*it_handle).PyDataEventHandler();
|
||||
(*it_handle).CyDataEventHandler();
|
||||
//(*it_handle).PyDataEventHandler();
|
||||
//(*it_handle).CyDataEventHandler();
|
||||
(*it_handle).CyMonitorHandler();
|
||||
//std::cout << (*it_handle).pv <<" time elapses " << timeElapsedMilliseconds << std::endl;
|
||||
}
|
||||
else if (args.type < DBR_PUT_ACKT)
|
||||
@@ -244,12 +328,14 @@ void MonitorPolicy::PyCallbackHandlerMonitorData (struct event_handler_args args
|
||||
};
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* \brief Callback function for monitor method is invoked
|
||||
* with a pointer to the retrieved value; also fires a user supplied Python callback.
|
||||
* \param args input: event handler arguments
|
||||
*/
|
||||
void MonitorPolicy::PyCallbackHandlerMonitor (struct event_handler_args args)
|
||||
/*
|
||||
void MonitorPolicy::PyCallbackHandlerHandle (struct event_handler_args args)
|
||||
{
|
||||
#define __METHOD__ "MonitorPolicy::PyCallbackHandlerMonitor"
|
||||
|
||||
@@ -284,7 +370,6 @@ void MonitorPolicy::PyCallbackHandlerMonitor (struct event_handler_args args)
|
||||
}
|
||||
|
||||
#if HAVE_PYTHON_H
|
||||
|
||||
unsigned long monid = (unsigned long) (*it_handle).getUsrArgs();
|
||||
MonitorPolicy mp = (*it_handle).getMonitorPolicy(monid);
|
||||
ptime timeNow(microsec_clock::local_time());
|
||||
@@ -296,11 +381,13 @@ void MonitorPolicy::PyCallbackHandlerMonitor (struct event_handler_args args)
|
||||
time_duration duration(timeNow-timePrevious);
|
||||
double timeElapsedMilliseconds= (double) duration.total_milliseconds();
|
||||
double updateDeltaMillioseconds = mp.getNotifyDeltaMilliSeconds();
|
||||
|
||||
|
||||
//if ( (*it_handle).pv == "SIN-TIMAST-EVG0:TX-PULSEID " ) {
|
||||
//std::cout << (*it_handle).pv <<" time elapses " << timeElapsedMilliseconds << std::endl;
|
||||
//std::cout << "monitorID// " << monid << " wait" << mp.getNotifyDeltaMilliSeconds() << std::endl;
|
||||
//}
|
||||
|
||||
|
||||
|
||||
if (timeElapsedMilliseconds < updateDeltaMillioseconds*0.998) {
|
||||
if (timeElapsedMilliseconds < (updateDeltaMillioseconds-5.61)) {
|
||||
return;
|
||||
}
|
||||
else {
|
||||
@@ -309,7 +396,7 @@ void MonitorPolicy::PyCallbackHandlerMonitor (struct event_handler_args args)
|
||||
}
|
||||
|
||||
//(*it_handle).PyEventHandler();
|
||||
(*it_handle).CyEventHandler();
|
||||
(*it_handle).CyHandleHandler(); //pushes handle only
|
||||
#endif
|
||||
|
||||
}
|
||||
@@ -318,11 +405,8 @@ void MonitorPolicy::PyCallbackHandlerMonitor (struct event_handler_args args)
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
cout << " Internal CAFE ERROR! Unknown Handle! handle=" << _handle << endl;
|
||||
}
|
||||
|
||||
|
||||
return;
|
||||
#undef __METHOD__
|
||||
}
|
||||
|
||||
|
||||
|
||||
*/
|
||||
|
||||
146
src/conduit.cpp
146
src/conduit.cpp
@@ -277,19 +277,29 @@ void * Conduit::PyConnectHandler() const
|
||||
|
||||
void * Conduit::PyGetHandler() const
|
||||
{
|
||||
//PVDataHolder pvd(channelRequestMetaData.nelem);
|
||||
//size is set in conduitEventHandlerArgs.h
|
||||
//getPVDataHolder(pvd);
|
||||
//std::cout << "PyGetHandler" << pvd.getAsString(0) << std::endl;
|
||||
py_cb_handle_get_wrapper(handle);
|
||||
void * cythonCallback=channelRequestPolicyGet.getCyCallback();
|
||||
if (cythonCallback == NULL) {
|
||||
std::cout << " NO CYTHON CALLBACK MATCH FOUND in Conduit::PyGetHandler()" << std::endl;
|
||||
return (void *) 0; ;
|
||||
}
|
||||
|
||||
cy_cb_handle_get_wrapper(cythonCallback, handle);
|
||||
//py_cb_handle_get_wrapper(handle);
|
||||
|
||||
return (void *) 0;
|
||||
}
|
||||
|
||||
void * Conduit::PyPutHandler() const
|
||||
{
|
||||
|
||||
void * cythonCallback=channelRequestPolicyPut.getCyCallback();
|
||||
if (cythonCallback == NULL) {
|
||||
std::cout << " NO CYTHON CALLBACK MATCH FOUND in Conduit::PyPutHandler()" << std::endl;
|
||||
return (void *) 0; ;
|
||||
}
|
||||
|
||||
py_cb_handle_put_wrapper(handle);
|
||||
cy_cb_handle_put_wrapper(cythonCallback, handle);
|
||||
//py_cb_handle_put_wrapper(handle);
|
||||
|
||||
return (void *) 0;
|
||||
}
|
||||
@@ -302,7 +312,8 @@ void * Conduit::PyPutHandler() const
|
||||
py_cb_handle_monid_wrapper(handle, (unsigned long) usrArgs);
|
||||
|
||||
return (void *) 0;
|
||||
}*/
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
/*void * Conduit::PyEventHandler(unsigned int monid) const
|
||||
@@ -312,7 +323,30 @@ void * Conduit::PyPutHandler() const
|
||||
py_cb_handle_monid_wrapper(handle, monid);
|
||||
|
||||
return (void *) 0;
|
||||
}*/
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
|
||||
void * Conduit::CyHandleHandler() const
|
||||
{
|
||||
void * cythonCallback = NULL;
|
||||
|
||||
for (int i=0; i < mpV.size(); ++i) {
|
||||
if ((unsigned long) mpV[i].getID() == (unsigned long) usrArgs) {
|
||||
cythonCallback = mpV[i].getCyCallback();
|
||||
break;
|
||||
}
|
||||
}
|
||||
//std::cout << " cythonCallback " << cythonCallback << std:: endl;
|
||||
if (cythonCallback == NULL) {
|
||||
//std::cout << " NO CYTHON CALLBACK MATCH FOUND in Conduit::CyEventHandler()" << std::endl;
|
||||
return (void *) 0; ;
|
||||
}
|
||||
cy_handle_handler_wrapper(cythonCallback, handle);
|
||||
return (void *) 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
void * Conduit::CyEventHandler() const
|
||||
@@ -335,6 +369,41 @@ void * Conduit::CyEventHandler() const
|
||||
}
|
||||
|
||||
|
||||
void * Conduit::CyDataEventHandler() const
|
||||
{
|
||||
|
||||
//std::cout << " void * Conduit::CyDataEventHandler() " << std::endl;
|
||||
PVDataHolder pvd(channelRequestMetaData.nelem);
|
||||
//size is set in conduitEventHandlerArgs.h
|
||||
void * cythonCallback = NULL;
|
||||
|
||||
for (int i=0; i < mpV.size(); ++i) {
|
||||
//std::cout << i << " " << mpV[i].getCyCallback()
|
||||
// << " " << mpV[i].getID() << " " << pv << " " << handle
|
||||
// << std::endl;
|
||||
//std::cout << "user args " << (unsigned long) usrArgs << std::endl;
|
||||
if ((unsigned long) mpV[i].getID() == (unsigned long) usrArgs) {
|
||||
|
||||
cythonCallback = mpV[i].getCyCallback();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (cythonCallback == NULL) {
|
||||
std::cout << " NO CYTHON CALLBACK MATCH FOUND Conduit::CyDataEventHandler()" << std::endl;
|
||||
return (void *) 0;
|
||||
}
|
||||
|
||||
getPVDataHolder(pvd);
|
||||
|
||||
cy_data_event_handler_wrapper(cythonCallback, handle, pv, pvd);
|
||||
//std::cout << " CYTHON CALLBACK MATCH FOUND Conduit::CyDataEventHandler()" << std::endl;
|
||||
return (void *) 0;
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
/*void * Conduit::PyDataEventHandler() const
|
||||
{
|
||||
PVDataHolder pvd(channelRequestMetaData.nelem);
|
||||
@@ -344,38 +413,64 @@ void * Conduit::CyEventHandler() const
|
||||
return (void *) 0;
|
||||
}*/
|
||||
|
||||
void * Conduit::CyDataEventHandler() const
|
||||
void * Conduit::CyMonitorHandler() const
|
||||
{
|
||||
|
||||
PVDataHolder pvd(channelRequestMetaData.nelem);
|
||||
//size is set in conduitEventHandlerArgs.h
|
||||
#define __METHOD__ "Conduit::CyMonitorHandler( "
|
||||
|
||||
void * cythonCallback = NULL;
|
||||
unsigned int ncbparameters = 1;
|
||||
|
||||
for (int i=0; i < mpV.size(); ++i) {
|
||||
//std::cout << i << " " << mpV[i].getCyCallback()
|
||||
// << " " << mpV[i].getID()
|
||||
// << std::endl;
|
||||
if ((unsigned long) mpV[i].getID() == (unsigned long) usrArgs) {
|
||||
if ((unsigned long) mpV[i].getID() == (unsigned long) usrArgs) {
|
||||
cythonCallback = mpV[i].getCyCallback();
|
||||
ncbparameters = mpV[i].getNoCyCallbackParameters();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
if (cythonCallback == NULL) {
|
||||
//std::cout << " NO CYTHON CALLBACK MATCH FOUND Conduit::CyDataEventHandler()" << std::endl;
|
||||
std::cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << std::endl;
|
||||
std::cout << " NO CYTHON CALLBACK MATCH FOUND " << std::endl;
|
||||
return (void *) 0; ;
|
||||
}
|
||||
|
||||
getPVDataHolder(pvd);
|
||||
|
||||
cy_data_event_handler_wrapper(cythonCallback, handle, pv, pvd);
|
||||
//std::cout << " CYTHON CALLBACK MATCH FOUND Conduit::CyDataEventHandler()" << std::endl;
|
||||
return (void *) 0;
|
||||
//ptime timeStart(microsec_clock::local_time());
|
||||
//double timeElapsed=0;
|
||||
|
||||
if (ncbparameters == 0) {
|
||||
cy_monitor_handler_wrapper(cythonCallback);
|
||||
}
|
||||
|
||||
else if (ncbparameters == 1) {
|
||||
cy_handle_handler_wrapper(cythonCallback, handle);
|
||||
}
|
||||
else if (ncbparameters == 2) {
|
||||
cy_event_handler_wrapper(cythonCallback, handle, pv);
|
||||
}
|
||||
else if (ncbparameters == 3) {
|
||||
PVDataHolder pvd(channelRequestMetaData.nelem);
|
||||
getPVDataHolder(pvd);
|
||||
cy_data_event_handler_wrapper(cythonCallback, handle, pv, pvd);
|
||||
}
|
||||
else {
|
||||
std::cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << std::endl;
|
||||
std::cout << " Wrong no. cb parameters " << ncbparameters << std::endl;
|
||||
std::cout << " Allowed are 1 (handle) 2 (+pv) 3 (+pvdata) " << std::endl;
|
||||
}
|
||||
|
||||
//ptime timeEnd(microsec_clock::local_time());
|
||||
//time_duration duration(timeEnd-timeStart);
|
||||
//timeElapsed= (double) duration.total_microseconds()/1000000.0;
|
||||
//std::cout << "timeElapsed " << timeElapsed << std::endl;
|
||||
|
||||
return (void *) 0;
|
||||
|
||||
#undef __METHOD__
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/*void * Conduit::PyCtrlEventHandler() const
|
||||
{
|
||||
|
||||
@@ -1163,7 +1258,8 @@ int Conduit::monitorStart(MonitorPolicy &mp) const
|
||||
}
|
||||
|
||||
evid eventID;
|
||||
int status = ca_create_subscription(mp.getDbrDataType(), mp.getNelem(), channelRegalia.channelID, mp.getMask(),
|
||||
int status = ca_create_subscription(mp.getDbrDataType(), mp.getNelem(),
|
||||
channelRegalia.channelID, mp.getMask(),
|
||||
mp.getHandler(), (void *) mp.getUserArgs(), &eventID);
|
||||
|
||||
mp.setEventID(eventID);
|
||||
|
||||
100
src/connect.cpp
100
src/connect.cpp
@@ -61,7 +61,8 @@ int Connect::createChannel(unsigned int handle, const char * pv, chid &pCh)
|
||||
|
||||
cafeConduit_set_by_handle & handle_index= cs.get<by_handle>();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
|
||||
int _status = ICAFE_NORMAL;
|
||||
|
||||
it_handle =handle_index.find(handle);
|
||||
|
||||
if (it_handle != handle_index.end())
|
||||
@@ -73,7 +74,7 @@ int Connect::createChannel(unsigned int handle, const char * pv, chid &pCh)
|
||||
//
|
||||
Moved to create Handle
|
||||
*/
|
||||
status = ca_create_channel(pv, channelCreatePolicy.getHandler(), (void *) (unsigned long) handle,
|
||||
_status = ca_create_channel(pv, channelCreatePolicy.getHandler(), (void *) (unsigned long) handle,
|
||||
channelCreatePolicy.getPriority(), &pCh);
|
||||
|
||||
if (pCh!=NULL)
|
||||
@@ -119,25 +120,25 @@ int Connect::createChannel(unsigned int handle, const char * pv, chid &pCh)
|
||||
ca_replace_access_rights_event(pCh, callbackHandlerAccessRights);
|
||||
}
|
||||
|
||||
if (status != ECA_NORMAL)
|
||||
if (_status != ECA_NORMAL)
|
||||
{
|
||||
cout << __FILE__ << ":" << __LINE__ << endl;
|
||||
cout << __METHOD__ << " ca_create_channel failed: " << endl;
|
||||
if (status == ECA_EVDISALLOW)
|
||||
if (_status == ECA_EVDISALLOW)
|
||||
{
|
||||
cout << " due to inappropriate function " << endl;
|
||||
}
|
||||
cafeStatus.report(status);
|
||||
cafeStatus.report(_status);
|
||||
if(MUTEX)
|
||||
{
|
||||
cafeMutex.lock(); //lock
|
||||
}
|
||||
handle_index.modify(it_handle, change_status (status) );
|
||||
handle_index.modify(it_handle, change_status (_status) );
|
||||
if(MUTEX)
|
||||
{
|
||||
cafeMutex.unlock(); //unlock
|
||||
}
|
||||
return (int) status;
|
||||
return (int) _status;
|
||||
}
|
||||
|
||||
//To Flush Send Buffer or not? Examine channelOpenPolicy.
|
||||
@@ -218,7 +219,8 @@ int Connect::createChannel(unsigned int handle, const char * pv, chid &pCh)
|
||||
{
|
||||
return ECAFE_INVALID_HANDLE;
|
||||
}
|
||||
return (int) status;
|
||||
|
||||
return (int) _status;
|
||||
|
||||
#undef __METHOD__
|
||||
};
|
||||
@@ -238,6 +240,7 @@ int Connect::createHandle(const char * pv, ca_client_context * ccc, unsigned in
|
||||
|
||||
chid pCh = NULL;
|
||||
std::pair<cafeConduit_set::iterator, bool> p;
|
||||
int _status = ICAFE_NORMAL;
|
||||
|
||||
// CAFEConduit object initialized and placed into hash map
|
||||
|
||||
@@ -346,8 +349,9 @@ int Connect::createHandle(const char * pv, ca_client_context * ccc, unsigned in
|
||||
#endif
|
||||
|
||||
// Normal return is ECA_TIMEOUT if pend_io/pend_event is instigated!!
|
||||
status=createChannel(handle, pv, pCh);
|
||||
_status=createChannel(handle, pv, pCh);
|
||||
|
||||
|
||||
// Channel Access will spit out an Invalid String Error if pv not a string!
|
||||
// Possible Errors from ca_create_channel: ECA_NORMAL, ECA_BADTYPE, ECA_STRTOBIG, ECA_ALLOCMEM
|
||||
// Possible Error from ca_pend_event: ECA_EVDISALLOW
|
||||
@@ -355,27 +359,28 @@ int Connect::createHandle(const char * pv, ca_client_context * ccc, unsigned in
|
||||
|
||||
// IF FAILED THROW EXCEPTION
|
||||
|
||||
if (status == ECA_BADSTR)
|
||||
if (_status == ECA_BADSTR)
|
||||
{
|
||||
//Cannot Connect::close(handle) in this event else segmentation fault
|
||||
CAFEException_pv e;
|
||||
e = exceptionsHelper.prepareCAFEException_pv("empty", "empty", (*(p.first)).getHandle(), pCh, status,
|
||||
__METHOD__, __LINE__);
|
||||
e = exceptionsHelper.prepareCAFEException_pv("empty", "empty", (*(p.first)).getHandle(),
|
||||
pCh, _status, __METHOD__, __LINE__);
|
||||
throw (e);
|
||||
return status;
|
||||
return _status;
|
||||
}
|
||||
else if (status != ECA_NORMAL && status != ECA_TIMEOUT)
|
||||
else if (_status != ECA_NORMAL && _status != ECA_TIMEOUT)
|
||||
{
|
||||
//Connect::close(handle);
|
||||
CAFEException_pv e;
|
||||
e = exceptionsHelper.prepareCAFEException_pv((*(p.first)).pv.c_str(), (*(p.first)).pvAlias.c_str(),
|
||||
(*(p.first)).getHandle(), pCh, status,
|
||||
(*(p.first)).getHandle(), pCh, _status,
|
||||
__METHOD__, __LINE__);
|
||||
throw (e);
|
||||
return status;
|
||||
return _status;
|
||||
}
|
||||
else if (pCh == NULL)
|
||||
{
|
||||
|
||||
//Connect::close(handle); Close channel in createHandle
|
||||
CAFEException_pv e;
|
||||
e = exceptionsHelper.prepareCAFEException_pv( (*(p.first)).pv.c_str(), (*(p.first)).pvAlias.c_str(),
|
||||
@@ -387,7 +392,7 @@ int Connect::createHandle(const char * pv, ca_client_context * ccc, unsigned in
|
||||
return ECAFE_NULLCHID;
|
||||
}
|
||||
|
||||
return status;
|
||||
return _status;
|
||||
|
||||
#undef __METHOD__
|
||||
};
|
||||
@@ -407,6 +412,8 @@ int Connect::init() //throw (CAFEException_init)
|
||||
{
|
||||
#define __METHOD__ "Connect::init()"
|
||||
|
||||
int status=ICAFE_NORMAL;
|
||||
|
||||
try
|
||||
{
|
||||
status=init(ca_enable_preemptive_callback);
|
||||
@@ -441,8 +448,8 @@ int Connect::init() //throw (CAFEException_init)
|
||||
int Connect::init(ca_preemptive_callback_select select) //throw (CAFEException_init)
|
||||
{
|
||||
#define __METHOD__ "Connect::init(ca_preemptive_callback_select)"
|
||||
|
||||
|
||||
int status=ICAFE_NORMAL;
|
||||
|
||||
#if HAVE_PYTHON_H
|
||||
#if HAVE_PYCAFE_EXT
|
||||
int pyStatus = PyImport_AppendInittab("PyCafe", PyInit_PyCafe); //Python 3
|
||||
@@ -456,7 +463,8 @@ int Connect::init(ca_preemptive_callback_select select) //throw (CAFEException_
|
||||
std::cout << "PyCafe import failed!!" << std::endl;
|
||||
exit(1);
|
||||
}
|
||||
PyInit_PyCafe();
|
||||
PyInit_PyCafe;
|
||||
//PyInit_PyCafe_sf();
|
||||
//Py_Finalize();
|
||||
//Python 2
|
||||
//Py_Initialize();
|
||||
@@ -516,6 +524,8 @@ bool Connect::initCallbackComplete(unsigned int * hArray, unsigned int nHandles)
|
||||
{
|
||||
#define __METHOD__ "Connect:initCallbackComplete(unsigned int * hArray, unsigned int nHandle) "
|
||||
|
||||
int status=ICAFE_NORMAL;
|
||||
|
||||
ChannelRequestStatus cre, crc, crs, crn;
|
||||
for (unsigned int i=0; i < nHandles; ++i)
|
||||
{
|
||||
@@ -573,7 +583,7 @@ int Connect::open(const char ** pvArray, unsigned int * handleArray, const unsig
|
||||
//throw (CAFEException_open)
|
||||
{
|
||||
#define __METHOD__ "Connect::open(const char **, unsigned int *, const unsigned int)"
|
||||
|
||||
int status=ICAFE_NORMAL;
|
||||
bool flushAtEndFlag=false;
|
||||
|
||||
if (channelOpenPolicy.getWhenToFlushSendBuffer()==FLUSH_AFTER_EACH_CHANNEL_CREATION)
|
||||
@@ -630,7 +640,7 @@ int Connect::open(const std::string *pvArrayS, unsigned int *handleArray, const
|
||||
//throw (CAFEException_open)
|
||||
{
|
||||
#define __METHOD__ "Connect::open(const std::string *, unsigned int *, unsigned int)"
|
||||
|
||||
int status=ICAFE_NORMAL;
|
||||
bool flushAtEndFlag=false;
|
||||
if (channelOpenPolicy.getWhenToFlushSendBuffer()==FLUSH_AFTER_EACH_CHANNEL_CREATION)
|
||||
{
|
||||
@@ -687,7 +697,7 @@ int Connect::open(std::vector<std::string> pvV, std::vector<unsigned int> &hand
|
||||
//throw (CAFEException_open)
|
||||
{
|
||||
#define __METHOD__ "Connect::open(vector<string>, vector<unsigned int> &)"
|
||||
|
||||
int status=ICAFE_NORMAL;
|
||||
unsigned int _h=0;
|
||||
bool flushAtEndFlag=false;
|
||||
handleV.clear();
|
||||
@@ -746,7 +756,7 @@ int Connect::open(std::vector<const char *> pvV, std::vector<unsigned int> &hand
|
||||
//throw (CAFEException_open)
|
||||
{
|
||||
#define __METHOD__ "Connect::open(vector<char *>, vector<unsigned int> &)"
|
||||
|
||||
int status=ICAFE_NORMAL;
|
||||
unsigned int _h=0;
|
||||
bool flushAtEndFlag=false;
|
||||
handleV.clear();
|
||||
@@ -806,7 +816,7 @@ int Connect::open(const char * _pv, const char * _pvAlias, unsigned int & handl
|
||||
//throw (CAFEException_open)
|
||||
{
|
||||
#define __METHOD__ "Connect::open(const char * pv, const char * _pvAlias, unsigned int & _handle)"
|
||||
|
||||
int status=ICAFE_NORMAL;
|
||||
try
|
||||
{
|
||||
status = open (_pv, handle);
|
||||
@@ -850,14 +860,13 @@ int Connect::open(const char * _pv, unsigned int &handle)
|
||||
//throw (CAFEException_open)
|
||||
{
|
||||
#define __METHOD__ "Connect::open(const char * _pv, unsigned int &handle)"
|
||||
|
||||
int status=ICAFE_NORMAL;
|
||||
char pv[PVNAME_SIZE];
|
||||
helper.removeLeadingAndTrailingSpaces(_pv, pv);
|
||||
|
||||
// Determine ca-client context
|
||||
ca_client_context * ccc = ca_current_context();
|
||||
|
||||
|
||||
if (ccc == NULL)
|
||||
{
|
||||
try
|
||||
@@ -885,7 +894,7 @@ int Connect::open(const char * _pv, unsigned int &handle)
|
||||
// Handles for pvs that are members of a group are treated separately!
|
||||
|
||||
handle = handleHelper.getHandleFromPV(pv,ccc);
|
||||
|
||||
|
||||
if (handle != 0)
|
||||
{
|
||||
return ICAFE_NORMAL;
|
||||
@@ -899,7 +908,8 @@ int Connect::open(const char * _pv, unsigned int &handle)
|
||||
}
|
||||
catch (CAFEException_pv & e)
|
||||
{
|
||||
|
||||
std::cout << __METHOD__ << " EXCEPTION " << std::endl;
|
||||
|
||||
if (e.statusCode != ECA_BADSTR)
|
||||
{
|
||||
//ca_flush_io(); // Better Flush or not. Seems that there is not a need.
|
||||
@@ -916,7 +926,7 @@ int Connect::open(const char * _pv, unsigned int &handle)
|
||||
|
||||
std::string ewhat ="CAFEException_open," + std::string(e.pv) + "," + std::to_string(e.handle) + "," \
|
||||
+ std::to_string(e.statusCode) + "," + e.statusCodeText + "," + e.statusMessage;
|
||||
|
||||
|
||||
CAFEException_open badpv(ewhat);
|
||||
badpv.pvEx=e;
|
||||
|
||||
@@ -940,7 +950,7 @@ int Connect::open(const char * _pv, unsigned int &handle)
|
||||
int Connect::setPVAlias(unsigned int handle, const char * _pvAlias) //throw(CAFEException_open)
|
||||
{
|
||||
#define __METHOD__ "Connect::setPVAlias(unsigned int * _handle, const char * _pv)"
|
||||
|
||||
int status=ICAFE_NORMAL;
|
||||
Helper helper;
|
||||
char pvAlias[PVNAME_SIZE];
|
||||
helper.removeLeadingAndTrailingSpaces(_pvAlias, pvAlias);
|
||||
@@ -1033,7 +1043,7 @@ int Connect::setPVAlias(unsigned int handle, const char * _pvAlias) //throw(CAFE
|
||||
int Connect::closeChannels(unsigned int * handleArray, unsigned int nHandles)
|
||||
{
|
||||
#define __METHOD__ "Connect::closeChannels(unsigned int * handleArray, unsigned int nHandles)"
|
||||
|
||||
|
||||
ca_client_context * cctLocal= ca_current_context();
|
||||
if (cctLocal == NULL )
|
||||
{
|
||||
@@ -1137,7 +1147,7 @@ int Connect::close(unsigned int handle)
|
||||
// We do not know if this channel belongs to this context!
|
||||
return ECAFE_NULLCONTEXT;
|
||||
}
|
||||
status=ICAFE_NORMAL;
|
||||
int status=ICAFE_NORMAL;
|
||||
|
||||
cafeConduit_set_by_handle & handle_index = cs.get<by_handle> ();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
@@ -1271,7 +1281,7 @@ int Connect::closeChannels(ca_client_context * cctLocal)
|
||||
{
|
||||
return ECAFE_NULLCONTEXT;
|
||||
}
|
||||
|
||||
int status = ICAFE_NORMAL;
|
||||
int statusGroup = ICAFE_NORMAL;
|
||||
bool isClearChannel=false;
|
||||
|
||||
@@ -1361,7 +1371,7 @@ int Connect::closeChannels(ca_client_context * cctLocal)
|
||||
int Connect::closeHandle(unsigned int handle)
|
||||
{
|
||||
#define __METHOD__ "Connect::closeHandle(unsigned int handle)"
|
||||
|
||||
int status = ICAFE_NORMAL;
|
||||
//We can close handle irrespective of ca_current_context!
|
||||
ca_client_context * cctLocal= ca_current_context();
|
||||
status=ICAFE_NORMAL;
|
||||
@@ -1574,7 +1584,7 @@ int Connect::closeHandles(unsigned int * handleArray, unsigned int nHandles)
|
||||
int Connect::closeHandles()
|
||||
{
|
||||
#define __METHOD__ "Connect::closeHandles()"
|
||||
|
||||
int status = ICAFE_NORMAL;
|
||||
int statusGroup = ECA_NORMAL;
|
||||
bool isClearChannel =false;
|
||||
bool isCS =false;
|
||||
@@ -1649,7 +1659,7 @@ int Connect::closeChannelKeepHandle(unsigned int handle)
|
||||
{
|
||||
#define __METHOD__ "Connect::closeChannelKeepHandle(unsigned int handle)"
|
||||
|
||||
status=ICAFE_NORMAL;
|
||||
int status=ICAFE_NORMAL;
|
||||
//We can close handle irrespective of ca_current_context!
|
||||
ca_client_context * cctLocal= ca_current_context();
|
||||
ChannelRegalia channelRegalia;
|
||||
@@ -2437,7 +2447,7 @@ int Connect::monitorStart(unsigned int handle, MonitorPolicy &mp)
|
||||
{
|
||||
#define __METHOD__ "monitorStart(unsigned int handle, MonitorPolicy &mp)"
|
||||
|
||||
status = ICAFE_NORMAL;
|
||||
int status = ICAFE_NORMAL;
|
||||
|
||||
cafeConduit_set_by_handle & handle_index = cs.get<by_handle> ();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
@@ -2602,7 +2612,7 @@ int Connect::monitorStart(unsigned int handle, unsigned int & monitorID)
|
||||
{
|
||||
#define __METHOD__ "monitorStart(unsigned int handle, unsigned int & monitorID)"
|
||||
|
||||
status = ICAFE_NORMAL;
|
||||
int status = ICAFE_NORMAL;
|
||||
evid eventID = NULL;
|
||||
monitorID = (unsigned int) 0;
|
||||
|
||||
@@ -2711,7 +2721,7 @@ int Connect::monitorPulseID()
|
||||
throw(e);
|
||||
}
|
||||
|
||||
status = ICAFE_NORMAL;
|
||||
int status = ICAFE_NORMAL;
|
||||
MonitorPolicy mp;
|
||||
|
||||
mp.setUserArgs((void *) (long long) (hPulseID));
|
||||
@@ -2738,7 +2748,7 @@ int Connect::monitorStopPulseID()
|
||||
#define __METHOD__ "monitorStopPulseID()"
|
||||
|
||||
std::string pulseID=SF_PULSE_ID_PV;
|
||||
status = ICAFE_NORMAL;
|
||||
int status = ICAFE_NORMAL;
|
||||
status = monitorStop(handleHelper.getHandleFromPV(pulseID.c_str()));
|
||||
return status;
|
||||
|
||||
@@ -2755,7 +2765,7 @@ int Connect::monitorStop()
|
||||
#define __METHOD__ "monitorStop()"
|
||||
|
||||
int statusGroup = ECA_NORMAL;
|
||||
|
||||
int status = ICAFE_NORMAL;
|
||||
bool isClearChannel =false;
|
||||
|
||||
if (ca_current_context() != NULL)
|
||||
@@ -2804,7 +2814,7 @@ int Connect::monitorStop(ca_client_context * cctLocal)
|
||||
{
|
||||
return ECAFE_NULLCONTEXT;
|
||||
}
|
||||
|
||||
int status = ICAFE_NORMAL;
|
||||
int statusGroup = ECA_NORMAL;
|
||||
bool isClearChannel =false;
|
||||
|
||||
@@ -2913,7 +2923,7 @@ int Connect::monitorStop(unsigned int handle)
|
||||
{
|
||||
#define __METHOD__ "monitorStop(unsigned int _handle)"
|
||||
|
||||
status = ICAFE_NORMAL;
|
||||
int status = ICAFE_NORMAL;
|
||||
|
||||
cafeConduit_set_by_handle & handle_index = cs.get<by_handle> ();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
@@ -3035,7 +3045,7 @@ int Connect::monitorStop (unsigned int handle, unsigned int monitorID)
|
||||
{
|
||||
#define __METHOD__ "monitorStop(unsigned int handle, unsigned int monitorID)"
|
||||
|
||||
status = ICAFE_NORMAL;
|
||||
int status = ICAFE_NORMAL;
|
||||
|
||||
cafeConduit_set_by_handle & handle_index = cs.get<by_handle> ();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
|
||||
3043
src/connect.cpp-
3043
src/connect.cpp-
File diff suppressed because it is too large
Load Diff
@@ -1077,6 +1077,8 @@ int HandleHelper::getUnits(unsigned int _handle, std::string & units)
|
||||
if (it_handle != handle_index.end())
|
||||
{
|
||||
units = (*it_handle).getUnits();
|
||||
//cout << __FILE__ << "//" << __LINE__ << "//" << __METHOD__ << endl;
|
||||
//cout << "units" << units << endl;
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -1657,6 +1659,123 @@ const char * HandleHelper::getPVAlias(unsigned int handle, ca_client_context * c
|
||||
#undef __METHOD__
|
||||
}
|
||||
|
||||
cafeConduit_set_by_handle::iterator HandleHelper::getIterFromHandle(unsigned int handle)
|
||||
{
|
||||
#define __METHOD__ "HandleHelper::getIterFromHandle(unsigned int handle)"
|
||||
|
||||
cafeConduit_set_by_handle & handle_index=cs.get<by_handle>();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
it_handle = handle_index.find(handle);
|
||||
if (it_handle != handle_index.end()) {
|
||||
//std::cout << __METHOD__ << " pv " << (*it_handle).getPV() << " // " << (*it_handle).handle << std::endl;
|
||||
return it_handle;
|
||||
}
|
||||
else {return it_handle;}
|
||||
|
||||
#undef __METHOD__
|
||||
}
|
||||
|
||||
|
||||
cafeConduit_set_by_handle & HandleHelper::getcsHandleIndex()
|
||||
{
|
||||
#define __METHOD__ "HandleHelper::getcsHandleIndex()"
|
||||
|
||||
return cs.get<by_handle>();
|
||||
|
||||
#undef __METHOD__
|
||||
}
|
||||
|
||||
|
||||
int HandleHelper::modifyHandleIndexStatus(unsigned int handle, long status)
|
||||
{
|
||||
#define __METHOD__ "HandleHelper::modifyHandleIndexStatus()"
|
||||
|
||||
cafeConduit_set_by_handle & handle_index=cs.get<by_handle>();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
it_handle = handle_index.find(handle);
|
||||
if (it_handle != handle_index.end()) {
|
||||
handle_index.modify(it_handle, change_status(status));
|
||||
}
|
||||
else
|
||||
{
|
||||
std::cout << "Handle=" << handle << " either never existed or no longer exists " << std::endl;
|
||||
return ECAFE_INVALID_HANDLE;
|
||||
}
|
||||
return ICAFE_NORMAL;
|
||||
|
||||
#undef __METHOD__
|
||||
}
|
||||
|
||||
|
||||
int HandleHelper::modifyChannelTimeoutPolicyGet(unsigned int handle,
|
||||
ChannelTimeoutPolicy channelTimeoutPolicyGet)
|
||||
{
|
||||
#define __METHOD__ "HandleHelper::modifyChannelTimeoutPolicyGet()"
|
||||
|
||||
cafeConduit_set_by_handle & handle_index=cs.get<by_handle>();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
it_handle = handle_index.find(handle);
|
||||
if (it_handle != handle_index.end()) {
|
||||
handle_index.modify(it_handle,
|
||||
change_channelTimeoutPolicyGet(channelTimeoutPolicyGet));
|
||||
}
|
||||
else
|
||||
{
|
||||
std::cout << "Handle=" << handle << " either never existed or no longer exists " << std::endl;
|
||||
return ECAFE_INVALID_HANDLE;
|
||||
}
|
||||
return ICAFE_NORMAL;
|
||||
|
||||
#undef __METHOD__
|
||||
}
|
||||
|
||||
|
||||
int HandleHelper::modifyChannelRequestStatusGet(unsigned int handle,
|
||||
ChannelRequestStatus channelRequestStatusGet)
|
||||
{
|
||||
#define __METHOD__ "HandleHelper::modifyChannelRequestStatusGet()"
|
||||
|
||||
cafeConduit_set_by_handle & handle_index=cs.get<by_handle>();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
it_handle = handle_index.find(handle);
|
||||
if (it_handle != handle_index.end()) {
|
||||
handle_index.modify(it_handle,
|
||||
change_channelRequestStatusGet(channelRequestStatusGet));
|
||||
}
|
||||
else
|
||||
{
|
||||
std::cout << "Handle=" << handle << " either never existed or no longer exists " << std::endl;
|
||||
return ECAFE_INVALID_HANDLE;
|
||||
}
|
||||
return ICAFE_NORMAL;
|
||||
|
||||
#undef __METHOD__
|
||||
}
|
||||
|
||||
|
||||
int HandleHelper::modifyChannelRequestMetaDataClient(unsigned int handle,
|
||||
ChannelRequestMetaDataClient channelRequestMetaDataClient)
|
||||
{
|
||||
#define __METHOD__ "HandleHelper::modifyChannelRequestMetaDataClient()"
|
||||
|
||||
cafeConduit_set_by_handle & handle_index=cs.get<by_handle>();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
it_handle = handle_index.find(handle);
|
||||
if (it_handle != handle_index.end()) {
|
||||
handle_index.modify(it_handle,
|
||||
change_channelRequestMetaDataClient(channelRequestMetaDataClient));
|
||||
}
|
||||
else
|
||||
{
|
||||
std::cout << "Handle=" << handle << " either never existed or no longer exists " << std::endl;
|
||||
return ECAFE_INVALID_HANDLE;
|
||||
}
|
||||
return ICAFE_NORMAL;
|
||||
|
||||
#undef __METHOD__
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* \brief Retrieves the process variable from a given handle
|
||||
@@ -1689,9 +1808,14 @@ const char * HandleHelper::getPVFromHandle(unsigned int handle, ca_client_contex
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
it_handle = handle_index.find(handle);
|
||||
|
||||
//std::cout << __METHOD__ << "handle_index ==> " << &handle_index << std::endl;
|
||||
//std::cout << __METHOD__ << "handle_index ==> " << &handle_index << std::endl;
|
||||
//std::cout << __METHOD__ << "cs " << &cs << std::endl;
|
||||
|
||||
if (it_handle != handle_index.end())
|
||||
{
|
||||
//std::cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << std::endl;
|
||||
//std::cout << "Client context: " << ccc << std::endl;
|
||||
return (*it_handle).getPV();
|
||||
}
|
||||
else
|
||||
@@ -1706,9 +1830,9 @@ const char * HandleHelper::getPVFromHandle(unsigned int handle, ca_client_contex
|
||||
|
||||
if ( (*itcs).getHandle()==handle && (*itcs).getClientContext() == ccc)
|
||||
{
|
||||
//cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
//cout << " INFORMATION to author: MATCHed Handle= " << handle << " to PV= " << (*itcs).getPV() << endl;
|
||||
//cout << " by looping through tcs::iterator, while the by_handle::iterator was NOT found! " << endl;
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
cout << " INFORMATION to author: MATCHed Handle= " << handle << " to PV= " << (*itcs).getPV() << endl;
|
||||
cout << " by looping through tcs::iterator, while the by_handle::iterator was NOT found! " << endl;
|
||||
return (*itcs).getPV();
|
||||
}
|
||||
}
|
||||
@@ -2253,10 +2377,11 @@ bool HandleHelper::hasAlarmStatusSeverity(unsigned int _handle)
|
||||
|
||||
//Only these have alarm/severity
|
||||
std::vector<std::string>alarmSeverityRecordTypes;
|
||||
alarmSeverityRecordTypes.reserve(10);
|
||||
alarmSeverityRecordTypes.reserve(12);
|
||||
alarmSeverityRecordTypes.push_back( std::string ( "ai"));
|
||||
alarmSeverityRecordTypes.push_back( std::string ( "ao"));
|
||||
alarmSeverityRecordTypes.push_back( std::string ( "calc"));
|
||||
alarmSeverityRecordTypes.push_back( std::string ( "calcout"));
|
||||
alarmSeverityRecordTypes.push_back( std::string ( "dfanout"));
|
||||
alarmSeverityRecordTypes.push_back( std::string ( "longin"));
|
||||
alarmSeverityRecordTypes.push_back( std::string ( "longout"));
|
||||
@@ -2266,6 +2391,8 @@ bool HandleHelper::hasAlarmStatusSeverity(unsigned int _handle)
|
||||
alarmSeverityRecordTypes.push_back( std::string ( "steppermotor"));
|
||||
alarmSeverityRecordTypes.push_back( std::string ( "sub"));
|
||||
|
||||
//else use RTYP to get true type
|
||||
alarmSeverityRecordTypes.push_back( std::string ( "Not Supported by Gateway"));
|
||||
|
||||
if (it_handle != handle_index.end())
|
||||
{
|
||||
@@ -2320,8 +2447,8 @@ bool HandleHelper::hasAlarmStatusSeverity(unsigned int _handle)
|
||||
|
||||
|
||||
// if never connected getStatus is 600 ICAFE_CS_NEVER_CONN
|
||||
// std::cout << (*it_handle).getPV() << " is Connected " << (*it_handle).isConnected() << std::endl;
|
||||
// std::cout << "getStatus " << (*it_handle).getStatus() << std::endl;
|
||||
//std::cout << (*it_handle).getPV() << " is Connected " << (*it_handle).isConnected() << std::endl;
|
||||
//std::cout << "getStatus " << (*it_handle).getStatus() << std::endl;
|
||||
|
||||
// Check if handle has already been supplemented
|
||||
if ((*it_handle).hasAlarmSeverityStruct())
|
||||
@@ -2336,6 +2463,7 @@ bool HandleHelper::hasAlarmStatusSeverity(unsigned int _handle)
|
||||
return false;
|
||||
}
|
||||
|
||||
//std::cout << "------ " << std::endl;
|
||||
|
||||
PVCtrlHolder _pvc;
|
||||
|
||||
@@ -2357,8 +2485,7 @@ bool HandleHelper::hasAlarmStatusSeverity(unsigned int _handle)
|
||||
}
|
||||
|
||||
// if Never connected getStatus is 600 ICAFE_CS_NEVER_CONN
|
||||
// std::cout << "status from getPVCtrlHolder // " << _stat << std::endl;
|
||||
// std::cout << "status from getPVCtrlHolder // " << _pvc.getStatus() << std::endl;
|
||||
|
||||
//_pvc.print();
|
||||
|
||||
//return to previous
|
||||
@@ -2368,8 +2495,6 @@ bool HandleHelper::hasAlarmStatusSeverity(unsigned int _handle)
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
if (_stat==ICAFE_NORMAL)
|
||||
{
|
||||
//Special test for ENUM value - should never reach here as is mbbi/o record
|
||||
@@ -2379,32 +2504,34 @@ bool HandleHelper::hasAlarmStatusSeverity(unsigned int _handle)
|
||||
//}
|
||||
//enums can have alarms states!!!
|
||||
|
||||
|
||||
if (!((boost::math::isnan)(_pvc.getLowerAlarmLimit_AsDouble())))
|
||||
{
|
||||
if (_pvc.getLowerAlarmLimit_AsDouble() != 0) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
else if (!((boost::math::isnan)(_pvc.getLowerWarningLimit_AsDouble())))
|
||||
if (!((boost::math::isnan)(_pvc.getLowerWarningLimit_AsDouble())))
|
||||
{
|
||||
if (_pvc.getLowerWarningLimit_AsDouble() != 0) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
else if (!((boost::math::isnan)(_pvc.getUpperWarningLimit_AsDouble())))
|
||||
if (!((boost::math::isnan)(_pvc.getUpperWarningLimit_AsDouble())))
|
||||
{
|
||||
if (_pvc.getUpperWarningLimit_AsDouble() != 0) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
else if (!((boost::math::isnan)(_pvc.getUpperAlarmLimit_AsDouble())))
|
||||
if (!((boost::math::isnan)(_pvc.getUpperAlarmLimit_AsDouble())))
|
||||
{
|
||||
if (_pvc.getUpperAlarmLimit_AsDouble() != 0) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
return false;
|
||||
}
|
||||
else
|
||||
@@ -2491,7 +2618,6 @@ int HandleHelper::getAlarmStatusSeverityAsString(unsigned int _handle, std::stri
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* \brief Rerieves vector of handles for given vector of PVs
|
||||
* \param pvV input: vector of PVS
|
||||
@@ -3891,7 +4017,35 @@ int HandleHelper::getMonitorHandlesAndActions(std::vector<unsigned int> & handle
|
||||
}
|
||||
|
||||
|
||||
int HandleHelper::updateMonitorPolicyDeltaMS(unsigned int _handle, unsigned int _monid,
|
||||
unsigned short _deltaMS)
|
||||
{
|
||||
cafeConduit_set_by_handle & handle_index=cs.get<by_handle>();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
it_handle = handle_index.find(_handle);
|
||||
|
||||
int status=ICAFE_NORMAL;
|
||||
|
||||
if (it_handle != handle_index.end())
|
||||
{
|
||||
MonitorPolicy mp = (*it_handle).getMonitorPolicy(_monid);
|
||||
mp.setNotifyDeltaMilliSeconds(_deltaMS);
|
||||
if(MUTEX) { cafeMutex.lock();}
|
||||
handle_index.modify(it_handle, change_monitorPolicy(mp));
|
||||
if(MUTEX) { cafeMutex.unlock();}
|
||||
}
|
||||
else
|
||||
{
|
||||
status=ECAFE_INVALID_HANDLE;
|
||||
if (printErrorPolicy.getInvalidHandle())
|
||||
{
|
||||
cafeStatus.report(status);
|
||||
cout << "Handle=" << _handle << " either never existed or no longer exists " << endl;
|
||||
}
|
||||
|
||||
}
|
||||
return status;
|
||||
}
|
||||
|
||||
/**
|
||||
* \brief Gets vector of MonitorIDs in waiting (value=0), i.e., waiting for channel connection
|
||||
|
||||
455
src/makefile
455
src/makefile
@@ -1,9 +1,8 @@
|
||||
# makefile.in generated by automake 1.11.1 from makefile.am.
|
||||
# makefile.in generated by automake 1.13.4 from makefile.am.
|
||||
# src/makefile. Generated from makefile.in by configure.
|
||||
|
||||
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
|
||||
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
|
||||
# Inc.
|
||||
# Copyright (C) 1994-2013 Free Software Foundation, Inc.
|
||||
|
||||
# This Makefile.in is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
@@ -16,6 +15,51 @@
|
||||
|
||||
|
||||
|
||||
am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
|
||||
am__make_running_with_option = \
|
||||
case $${target_option-} in \
|
||||
?) ;; \
|
||||
*) echo "am__make_running_with_option: internal error: invalid" \
|
||||
"target option '$${target_option-}' specified" >&2; \
|
||||
exit 1;; \
|
||||
esac; \
|
||||
has_opt=no; \
|
||||
sane_makeflags=$$MAKEFLAGS; \
|
||||
if $(am__is_gnu_make); then \
|
||||
sane_makeflags=$$MFLAGS; \
|
||||
else \
|
||||
case $$MAKEFLAGS in \
|
||||
*\\[\ \ ]*) \
|
||||
bs=\\; \
|
||||
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
|
||||
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
|
||||
esac; \
|
||||
fi; \
|
||||
skip_next=no; \
|
||||
strip_trailopt () \
|
||||
{ \
|
||||
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
|
||||
}; \
|
||||
for flg in $$sane_makeflags; do \
|
||||
test $$skip_next = yes && { skip_next=no; continue; }; \
|
||||
case $$flg in \
|
||||
*=*|--*) continue;; \
|
||||
-*I) strip_trailopt 'I'; skip_next=yes;; \
|
||||
-*I?*) strip_trailopt 'I';; \
|
||||
-*O) strip_trailopt 'O'; skip_next=yes;; \
|
||||
-*O?*) strip_trailopt 'O';; \
|
||||
-*l) strip_trailopt 'l'; skip_next=yes;; \
|
||||
-*l?*) strip_trailopt 'l';; \
|
||||
-[dEDm]) skip_next=yes;; \
|
||||
-[JT]) skip_next=yes;; \
|
||||
esac; \
|
||||
case $$flg in \
|
||||
*$$target_option*) has_opt=yes; break;; \
|
||||
esac; \
|
||||
done; \
|
||||
test $$has_opt = yes
|
||||
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
|
||||
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
|
||||
pkgdatadir = $(datadir)/cafe
|
||||
pkgincludedir = $(includedir)/cafe
|
||||
pkglibdir = $(libdir)/cafe
|
||||
@@ -34,12 +78,16 @@ PRE_UNINSTALL = :
|
||||
POST_UNINSTALL = :
|
||||
build_triplet = x86_64-unknown-linux-gnu
|
||||
host_triplet = x86_64-unknown-linux-gnu
|
||||
#am__append_1 = PyCafe.cpp
|
||||
#am__append_2 = zbsCafeService.cpp zbsDataHolders.cpp \
|
||||
# bitshuffle/bitshuffle_core.c bitshuffle/bitshuffle.c bitshuffle/iochain.c
|
||||
|
||||
#if HAVE_PYCAFE_EXT_
|
||||
#libcafe_la_SOURCES += PyCafe.cpp
|
||||
#endif
|
||||
#am__append_1 = zbsCafeService.cpp zbsDataHolders.cpp \
|
||||
# bitshuffle/bitshuffle_core.c bitshuffle/bitshuffle.c bitshuffle/iochain.c
|
||||
|
||||
subdir = src
|
||||
DIST_COMMON = $(srcdir)/makefile.am $(srcdir)/makefile.in
|
||||
DIST_COMMON = $(srcdir)/makefile.in $(srcdir)/makefile.am \
|
||||
$(top_srcdir)/./depcomp
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
|
||||
$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
|
||||
@@ -72,6 +120,12 @@ am__nobase_list = $(am__nobase_strip_setup); \
|
||||
am__base_list = \
|
||||
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
|
||||
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
|
||||
am__uninstall_files_from_dir = { \
|
||||
test -z "$$files" \
|
||||
|| { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
|
||||
|| { echo " ( cd '$$dir' && rm -f" $$files ")"; \
|
||||
$(am__cd) "$$dir" && rm -f $$files; }; \
|
||||
}
|
||||
am__installdirs = "$(DESTDIR)$(libdir)"
|
||||
LTLIBRARIES = $(lib_LTLIBRARIES)
|
||||
libcafe_la_LIBADD =
|
||||
@@ -82,13 +136,14 @@ am__libcafe_la_SOURCES_DIST = cafe.cpp cafeCache.cpp cafeGroup.cpp \
|
||||
handleHelper.cpp loadCollectionXMLParser.cpp \
|
||||
loadGroupXMLParser.cpp methodCallbacks.cpp helper.cpp \
|
||||
policyHelper.cpp conduitGroup.cpp connectGroup.cpp \
|
||||
transpose.cpp restorePVGroupXMLParser.cpp PyCafe.cpp \
|
||||
zbsCafeService.cpp zbsDataHolders.cpp \
|
||||
bitshuffle/bitshuffle_core.c bitshuffle/bitshuffle.c \
|
||||
bitshuffle/iochain.c
|
||||
#am__objects_1 = PyCafe.lo
|
||||
#am__objects_2 = zbsCafeService.lo zbsDataHolders.lo \
|
||||
# bitshuffle_core.lo bitshuffle.lo iochain.lo
|
||||
transpose.cpp restorePVGroupXMLParser.cpp zbsCafeService.cpp \
|
||||
zbsDataHolders.cpp bitshuffle/bitshuffle_core.c \
|
||||
bitshuffle/bitshuffle.c bitshuffle/iochain.c
|
||||
am__dirstamp = $(am__leading_dot)dirstamp
|
||||
#am__objects_1 = zbsCafeService.lo zbsDataHolders.lo \
|
||||
# bitshuffle/bitshuffle_core.lo \
|
||||
# bitshuffle/bitshuffle.lo \
|
||||
# bitshuffle/iochain.lo
|
||||
am_libcafe_la_OBJECTS = cafe.lo cafeCache.lo cafeGroup.lo \
|
||||
cafeVectors.lo cafeXML.lo callbackHandlerCreate.lo \
|
||||
callbackHandlerMonitor.lo conduit.lo connect.lo \
|
||||
@@ -96,55 +151,120 @@ am_libcafe_la_OBJECTS = cafe.lo cafeCache.lo cafeGroup.lo \
|
||||
handleHelper.lo loadCollectionXMLParser.lo \
|
||||
loadGroupXMLParser.lo methodCallbacks.lo helper.lo \
|
||||
policyHelper.lo conduitGroup.lo connectGroup.lo transpose.lo \
|
||||
restorePVGroupXMLParser.lo $(am__objects_1) $(am__objects_2)
|
||||
restorePVGroupXMLParser.lo $(am__objects_1)
|
||||
libcafe_la_OBJECTS = $(am_libcafe_la_OBJECTS)
|
||||
libcafe_la_LINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) \
|
||||
AM_V_lt = $(am__v_lt_$(V))
|
||||
am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY))
|
||||
am__v_lt_0 = --silent
|
||||
am__v_lt_1 =
|
||||
libcafe_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \
|
||||
$(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \
|
||||
$(CXXFLAGS) $(libcafe_la_LDFLAGS) $(LDFLAGS) -o $@
|
||||
AM_V_P = $(am__v_P_$(V))
|
||||
am__v_P_ = $(am__v_P_$(AM_DEFAULT_VERBOSITY))
|
||||
am__v_P_0 = false
|
||||
am__v_P_1 = :
|
||||
AM_V_GEN = $(am__v_GEN_$(V))
|
||||
am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY))
|
||||
am__v_GEN_0 = @echo " GEN " $@;
|
||||
am__v_GEN_1 =
|
||||
AM_V_at = $(am__v_at_$(V))
|
||||
am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY))
|
||||
am__v_at_0 = @
|
||||
am__v_at_1 =
|
||||
DEFAULT_INCLUDES = -I. -I$(top_builddir)/./include
|
||||
depcomp = $(SHELL) $(top_srcdir)/./depcomp
|
||||
am__depfiles_maybe = depfiles
|
||||
am__mv = mv -f
|
||||
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
||||
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
||||
LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
|
||||
--mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
|
||||
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
||||
LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
|
||||
$(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
|
||||
$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
|
||||
$(AM_CFLAGS) $(CFLAGS)
|
||||
AM_V_CC = $(am__v_CC_$(V))
|
||||
am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY))
|
||||
am__v_CC_0 = @echo " CC " $@;
|
||||
am__v_CC_1 =
|
||||
CCLD = $(CC)
|
||||
LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
|
||||
--mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
|
||||
$(LDFLAGS) -o $@
|
||||
LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
|
||||
$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
|
||||
$(AM_LDFLAGS) $(LDFLAGS) -o $@
|
||||
AM_V_CCLD = $(am__v_CCLD_$(V))
|
||||
am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY))
|
||||
am__v_CCLD_0 = @echo " CCLD " $@;
|
||||
am__v_CCLD_1 =
|
||||
CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
|
||||
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
|
||||
LTCXXCOMPILE = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
|
||||
--mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
|
||||
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
|
||||
LTCXXCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \
|
||||
$(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) \
|
||||
$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
|
||||
$(AM_CXXFLAGS) $(CXXFLAGS)
|
||||
AM_V_CXX = $(am__v_CXX_$(V))
|
||||
am__v_CXX_ = $(am__v_CXX_$(AM_DEFAULT_VERBOSITY))
|
||||
am__v_CXX_0 = @echo " CXX " $@;
|
||||
am__v_CXX_1 =
|
||||
CXXLD = $(CXX)
|
||||
CXXLINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
|
||||
--mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \
|
||||
$(LDFLAGS) -o $@
|
||||
CXXLINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \
|
||||
$(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \
|
||||
$(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
|
||||
AM_V_CXXLD = $(am__v_CXXLD_$(V))
|
||||
am__v_CXXLD_ = $(am__v_CXXLD_$(AM_DEFAULT_VERBOSITY))
|
||||
am__v_CXXLD_0 = @echo " CXXLD " $@;
|
||||
am__v_CXXLD_1 =
|
||||
SOURCES = $(libcafe_la_SOURCES)
|
||||
DIST_SOURCES = $(am__libcafe_la_SOURCES_DIST)
|
||||
am__can_run_installinfo = \
|
||||
case $$AM_UPDATE_INFO_DIR in \
|
||||
n|no|NO) false;; \
|
||||
*) (install-info --version) >/dev/null 2>&1;; \
|
||||
esac
|
||||
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
|
||||
# Read a list of newline-separated strings from the standard input,
|
||||
# and print each of them once, without duplicates. Input order is
|
||||
# *not* preserved.
|
||||
am__uniquify_input = $(AWK) '\
|
||||
BEGIN { nonempty = 0; } \
|
||||
{ items[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in items) print i; }; } \
|
||||
'
|
||||
# Make sure the list of sources is unique. This is necessary because,
|
||||
# e.g., the same source file might be shared among _SOURCES variables
|
||||
# for different programs/libraries.
|
||||
am__define_uniq_tagged_files = \
|
||||
list='$(am__tagged_files)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | $(am__uniquify_input)`
|
||||
ETAGS = etags
|
||||
CTAGS = ctags
|
||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||
ACLOCAL = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing --run aclocal-1.11
|
||||
AMTAR = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing --run tar
|
||||
AM_CPPFLAGS = -fexceptions -fPIC -std=c++1z -I/usr/local/epics/base/include/ -I/usr/local/epics/base/include/os/Linux -I/opt/gfa/cafe/boost/boost_1_61_0/include/boost -I/opt/gfa/cafe/boost/boost_1_61_0/include -I$(top_srcdir)/include
|
||||
AM_LDFLAGS = -L/usr/local/epics/base/lib/SL6-x86_64 -Wl,-rpath,/usr/local/epics/base/lib/SL6-x86_64
|
||||
ACLOCAL = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing aclocal-1.13
|
||||
AMTAR = $${TAR-tar}
|
||||
|
||||
#if HAVE_PYCAFE_EXT_
|
||||
#libcafe_la_SOURCES += PyCafe.cpp
|
||||
#endif
|
||||
#else
|
||||
#if HAVE_PYTHON_
|
||||
#libcafe_la_SOURCES += pycafe/PyCafe.cpp
|
||||
#endif
|
||||
AM_CPPFLAGS = -fexceptions -fPIC -std=c++1z -I/usr/local/epics/base/include/ -I/usr/local/epics/base/include/os/Linux -I/opt/gfa/cafe/boost/boost_1_61_0/include/boost -I/opt/gfa/cafe/boost/boost_1_61_0/include -I/ioc/python/latest/include/python3.10 -I/ioc/python/latest/lib/python3.10/site-packages/numpy/core/include -I$(top_srcdir)/include
|
||||
AM_DEFAULT_VERBOSITY = 1
|
||||
AM_LDFLAGS = -L/usr/local/epics/base/lib/RHEL7-x86_64 -Wl,-rpath,/usr/local/epics/base/lib/RHEL7-x86_64 -L/ioc/python/latest/lib -Wl,-rpath,/ioc/python/latest/lib
|
||||
AR = ar
|
||||
AUTOCONF = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing --run autoconf
|
||||
AUTOHEADER = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing --run autoheader
|
||||
AUTOMAKE = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing --run automake-1.11
|
||||
AUTOCONF = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing autoconf
|
||||
AUTOHEADER = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing autoheader
|
||||
AUTOMAKE = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing automake-1.13
|
||||
AWK = gawk
|
||||
CAFE_CPPFLAGS = -I$(top_srcdir)/include
|
||||
CC = /opt/psi/Programming/gcc/6.3.0/bin/gcc
|
||||
CC = /opt/psi/Programming/gcc/9.3.0/bin/gcc
|
||||
CCDEPMODE = depmode=gcc3
|
||||
CFLAGS = -g -O2
|
||||
CPP = /opt/psi/Programming/gcc/6.3.0/bin/gcc -E
|
||||
CPPFLAGS = -fexceptions -fPIC -std=c++1z -I/usr/local/epics/base/include/ -I/usr/local/epics/base/include/os/Linux -I/opt/gfa/cafe/boost/boost_1_61_0/include/boost -I/opt/gfa/cafe/boost/boost_1_61_0/include
|
||||
CXX = /opt/psi/Programming/gcc/6.3.0/bin/g++
|
||||
CXXCPP = /opt/psi/Programming/gcc/6.3.0/bin/g++ -E
|
||||
CPP = /opt/psi/Programming/gcc/9.3.0/bin/gcc -E
|
||||
CPPFLAGS = -fexceptions -fPIC -std=c++1z -I/usr/local/epics/base/include/ -I/usr/local/epics/base/include/os/Linux -I/opt/gfa/cafe/boost/boost_1_61_0/include/boost -I/opt/gfa/cafe/boost/boost_1_61_0/include -I/ioc/python/latest/include/python3.10 -I/ioc/python/latest/lib/python3.10/site-packages/numpy/core/include
|
||||
CXX = /opt/psi/Programming/gcc/9.3.0/bin/g++
|
||||
CXXCPP = /opt/psi/Programming/gcc/9.3.0/bin/g++ -E
|
||||
CXXDEPMODE = depmode=gcc3
|
||||
CXXFLAGS = -g -O2
|
||||
CYGPATH_W = echo
|
||||
@@ -156,27 +276,27 @@ DUMPBIN =
|
||||
ECHO_C =
|
||||
ECHO_N = -n
|
||||
ECHO_T =
|
||||
EGREP = /bin/grep -E
|
||||
EGREP = /usr/bin/grep -E
|
||||
EXEEXT =
|
||||
FGREP = /bin/grep -F
|
||||
GREP = /bin/grep
|
||||
FGREP = /usr/bin/grep -F
|
||||
GREP = /usr/bin/grep
|
||||
INSTALL = /usr/bin/install -c
|
||||
INSTALL_DATA = ${INSTALL} -m 644
|
||||
INSTALL_PROGRAM = ${INSTALL}
|
||||
INSTALL_SCRIPT = ${INSTALL}
|
||||
INSTALL_STRIP_PROGRAM = $(install_sh) -c -s
|
||||
LD = /usr/bin/ld -m elf_x86_64
|
||||
LDFLAGS = -L/usr/local/epics/base/lib/SL6-x86_64 -Wl,-rpath,/usr/local/epics/base/lib/SL6-x86_64
|
||||
LDFLAGS = -L/usr/local/epics/base/lib/RHEL7-x86_64 -Wl,-rpath,/usr/local/epics/base/lib/RHEL7-x86_64 -L/ioc/python/latest/lib -Wl,-rpath,/ioc/python/latest/lib
|
||||
LIBOBJS =
|
||||
LIBS =
|
||||
LIBS = -lpython3.10
|
||||
LIBTOOL = $(SHELL) $(top_builddir)/libtool
|
||||
LIPO =
|
||||
LN_S = ln -s
|
||||
LTLIBOBJS =
|
||||
LT_SYS_LIBRARY_PATH =
|
||||
MAKEINFO = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing --run makeinfo
|
||||
MAKEINFO = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/missing makeinfo
|
||||
MANIFEST_TOOL = :
|
||||
MKDIR_P = /bin/mkdir -p
|
||||
MKDIR_P = /usr/bin/mkdir -p
|
||||
NM = /usr/bin/nm -B
|
||||
NMEDIT =
|
||||
OBJDUMP = objdump
|
||||
@@ -186,29 +306,30 @@ OTOOL64 =
|
||||
PACKAGE = cafe
|
||||
PACKAGE_BUGREPORT = Bug reports to: jan.chrin@psi.ch
|
||||
PACKAGE_NAME = CAFE
|
||||
PACKAGE_STRING = CAFE 1.12.5
|
||||
PACKAGE_STRING = CAFE 1.14.4
|
||||
PACKAGE_TARNAME = cafe
|
||||
PACKAGE_VERSION = 1.12.5
|
||||
PACKAGE_URL =
|
||||
PACKAGE_VERSION = 1.14.4
|
||||
PATH_SEPARATOR = :
|
||||
RANLIB = ranlib
|
||||
SED = /bin/sed
|
||||
SED = /usr/bin/sed
|
||||
SET_MAKE =
|
||||
SHELL = /bin/sh
|
||||
STRIP = strip
|
||||
VERSION = 1.12.5
|
||||
VERSION = 1.14.4
|
||||
abs_builddir = /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/src
|
||||
abs_srcdir = /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/src
|
||||
abs_top_builddir = /afs/psi.ch/project/cafe/gitlab/CAFE/cpp
|
||||
abs_top_srcdir = /afs/psi.ch/project/cafe/gitlab/CAFE/cpp
|
||||
ac_ct_AR = ar
|
||||
ac_ct_CC = /opt/psi/Programming/gcc/6.3.0/bin/gcc
|
||||
ac_ct_CC = /opt/psi/Programming/gcc/9.3.0/bin/gcc
|
||||
ac_ct_CXX =
|
||||
ac_ct_DUMPBIN =
|
||||
am__include = include
|
||||
am__leading_dot = .
|
||||
am__quote =
|
||||
am__tar = ${AMTAR} chof - "$$tardir"
|
||||
am__untar = ${AMTAR} xf -
|
||||
am__tar = $${TAR-tar} chof - "$$tardir"
|
||||
am__untar = $${TAR-tar} xf -
|
||||
bindir = ${exec_prefix}/bin
|
||||
build = x86_64-unknown-linux-gnu
|
||||
build_alias =
|
||||
@@ -230,15 +351,15 @@ htmldir = ${docdir}
|
||||
includedir = ${prefix}/include
|
||||
infodir = ${datarootdir}/info
|
||||
install_sh = ${SHELL} /afs/psi.ch/project/cafe/gitlab/CAFE/cpp/install-sh
|
||||
libdir = /opt/gfa/cafe/cpp/cafe-noqt-1.12.5-gcc-6.3.0/lib
|
||||
libdir = /opt/gfa/cafe/cpp/cafe-1.14.4-py310-gcc-9.3.0/lib/RHEL7-x86_64
|
||||
libexecdir = ${exec_prefix}/libexec
|
||||
localedir = ${datarootdir}/locale
|
||||
localstatedir = ${prefix}/var
|
||||
mandir = ${datarootdir}/man
|
||||
mkdir_p = /bin/mkdir -p
|
||||
mkdir_p = $(MKDIR_P)
|
||||
oldincludedir = /usr/include
|
||||
pdfdir = ${docdir}
|
||||
prefix = /opt/gfa/cafe/cpp/cafe-noqt-1.12.5-gcc-6.3.0
|
||||
prefix = /opt/gfa/cafe/cpp/cafe-1.14.4-py310-gcc-9.3.0
|
||||
program_transform_name = s,x,x,
|
||||
psdir = ${docdir}
|
||||
sbindir = ${exec_prefix}/sbin
|
||||
@@ -258,7 +379,7 @@ lib_LTLIBRARIES = libcafe.la
|
||||
#2nd: age
|
||||
#3rd: revision
|
||||
#1.9.1 1.10.2 1.11.0 1.11.1 1.12.0 1.12.1 1.12.2 1.12.4
|
||||
libcafe_la_LDFLAGS = -version-info 13:4:12
|
||||
libcafe_la_LDFLAGS = -version-info 15:4:14
|
||||
libcafe_la_SOURCES = cafe.cpp cafeCache.cpp cafeGroup.cpp \
|
||||
cafeVectors.cpp cafeXML.cpp callbackHandlerCreate.cpp \
|
||||
callbackHandlerMonitor.cpp conduit.cpp connect.cpp \
|
||||
@@ -266,8 +387,7 @@ libcafe_la_SOURCES = cafe.cpp cafeCache.cpp cafeGroup.cpp \
|
||||
handleHelper.cpp loadCollectionXMLParser.cpp \
|
||||
loadGroupXMLParser.cpp methodCallbacks.cpp helper.cpp \
|
||||
policyHelper.cpp conduitGroup.cpp connectGroup.cpp \
|
||||
transpose.cpp restorePVGroupXMLParser.cpp $(am__append_1) \
|
||||
$(am__append_2)
|
||||
transpose.cpp restorePVGroupXMLParser.cpp $(am__append_1)
|
||||
all: all-am
|
||||
|
||||
.SUFFIXES:
|
||||
@@ -302,9 +422,9 @@ $(top_srcdir)/configure: $(am__configure_deps)
|
||||
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
$(am__aclocal_m4_deps):
|
||||
|
||||
install-libLTLIBRARIES: $(lib_LTLIBRARIES)
|
||||
@$(NORMAL_INSTALL)
|
||||
test -z "$(libdir)" || $(MKDIR_P) "$(DESTDIR)$(libdir)"
|
||||
@list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
|
||||
list2=; for p in $$list; do \
|
||||
if test -f $$p; then \
|
||||
@@ -312,6 +432,8 @@ install-libLTLIBRARIES: $(lib_LTLIBRARIES)
|
||||
else :; fi; \
|
||||
done; \
|
||||
test -z "$$list2" || { \
|
||||
echo " $(MKDIR_P) '$(DESTDIR)$(libdir)'"; \
|
||||
$(MKDIR_P) "$(DESTDIR)$(libdir)" || exit 1; \
|
||||
echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(libdir)'"; \
|
||||
$(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(libdir)"; \
|
||||
}
|
||||
@@ -327,24 +449,38 @@ uninstall-libLTLIBRARIES:
|
||||
|
||||
clean-libLTLIBRARIES:
|
||||
-test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES)
|
||||
@list='$(lib_LTLIBRARIES)'; for p in $$list; do \
|
||||
dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
|
||||
test "$$dir" != "$$p" || dir=.; \
|
||||
echo "rm -f \"$${dir}/so_locations\""; \
|
||||
rm -f "$${dir}/so_locations"; \
|
||||
done
|
||||
libcafe.la: $(libcafe_la_OBJECTS) $(libcafe_la_DEPENDENCIES)
|
||||
$(libcafe_la_LINK) -rpath $(libdir) $(libcafe_la_OBJECTS) $(libcafe_la_LIBADD) $(LIBS)
|
||||
@list='$(lib_LTLIBRARIES)'; \
|
||||
locs=`for p in $$list; do echo $$p; done | \
|
||||
sed 's|^[^/]*$$|.|; s|/[^/]*$$||; s|$$|/so_locations|' | \
|
||||
sort -u`; \
|
||||
test -z "$$locs" || { \
|
||||
echo rm -f $${locs}; \
|
||||
rm -f $${locs}; \
|
||||
}
|
||||
bitshuffle/$(am__dirstamp):
|
||||
@$(MKDIR_P) bitshuffle
|
||||
@: > bitshuffle/$(am__dirstamp)
|
||||
bitshuffle/$(DEPDIR)/$(am__dirstamp):
|
||||
@$(MKDIR_P) bitshuffle/$(DEPDIR)
|
||||
@: > bitshuffle/$(DEPDIR)/$(am__dirstamp)
|
||||
bitshuffle/bitshuffle_core.lo: bitshuffle/$(am__dirstamp) \
|
||||
bitshuffle/$(DEPDIR)/$(am__dirstamp)
|
||||
bitshuffle/bitshuffle.lo: bitshuffle/$(am__dirstamp) \
|
||||
bitshuffle/$(DEPDIR)/$(am__dirstamp)
|
||||
bitshuffle/iochain.lo: bitshuffle/$(am__dirstamp) \
|
||||
bitshuffle/$(DEPDIR)/$(am__dirstamp)
|
||||
|
||||
libcafe.la: $(libcafe_la_OBJECTS) $(libcafe_la_DEPENDENCIES) $(EXTRA_libcafe_la_DEPENDENCIES)
|
||||
$(AM_V_CXXLD)$(libcafe_la_LINK) -rpath $(libdir) $(libcafe_la_OBJECTS) $(libcafe_la_LIBADD) $(LIBS)
|
||||
|
||||
mostlyclean-compile:
|
||||
-rm -f *.$(OBJEXT)
|
||||
-rm -f bitshuffle/*.$(OBJEXT)
|
||||
-rm -f bitshuffle/*.lo
|
||||
|
||||
distclean-compile:
|
||||
-rm -f *.tab.c
|
||||
|
||||
include ./$(DEPDIR)/PyCafe.Plo
|
||||
include ./$(DEPDIR)/bitshuffle.Plo
|
||||
include ./$(DEPDIR)/bitshuffle_core.Plo
|
||||
include ./$(DEPDIR)/cafe.Plo
|
||||
include ./$(DEPDIR)/cafeCache.Plo
|
||||
include ./$(DEPDIR)/cafeGroup.Plo
|
||||
@@ -361,7 +497,6 @@ include ./$(DEPDIR)/exceptionsHelper.Plo
|
||||
include ./$(DEPDIR)/granules.Plo
|
||||
include ./$(DEPDIR)/handleHelper.Plo
|
||||
include ./$(DEPDIR)/helper.Plo
|
||||
include ./$(DEPDIR)/iochain.Plo
|
||||
include ./$(DEPDIR)/loadCollectionXMLParser.Plo
|
||||
include ./$(DEPDIR)/loadGroupXMLParser.Plo
|
||||
include ./$(DEPDIR)/methodCallbacks.Plo
|
||||
@@ -370,96 +505,74 @@ include ./$(DEPDIR)/restorePVGroupXMLParser.Plo
|
||||
include ./$(DEPDIR)/transpose.Plo
|
||||
include ./$(DEPDIR)/zbsCafeService.Plo
|
||||
include ./$(DEPDIR)/zbsDataHolders.Plo
|
||||
include bitshuffle/$(DEPDIR)/bitshuffle.Plo
|
||||
include bitshuffle/$(DEPDIR)/bitshuffle_core.Plo
|
||||
include bitshuffle/$(DEPDIR)/iochain.Plo
|
||||
|
||||
.c.o:
|
||||
$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
|
||||
$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
||||
# source='$<' object='$@' libtool=no \
|
||||
$(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
|
||||
$(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
|
||||
$(am__mv) $$depbase.Tpo $$depbase.Po
|
||||
# $(AM_V_CC)source='$<' object='$@' libtool=no \
|
||||
# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \
|
||||
# $(COMPILE) -c $<
|
||||
# $(AM_V_CC_no)$(COMPILE) -c -o $@ $<
|
||||
|
||||
.c.obj:
|
||||
$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
|
||||
$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
||||
# source='$<' object='$@' libtool=no \
|
||||
$(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\
|
||||
$(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\
|
||||
$(am__mv) $$depbase.Tpo $$depbase.Po
|
||||
# $(AM_V_CC)source='$<' object='$@' libtool=no \
|
||||
# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \
|
||||
# $(COMPILE) -c `$(CYGPATH_W) '$<'`
|
||||
# $(AM_V_CC_no)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
|
||||
|
||||
.c.lo:
|
||||
$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
|
||||
$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
|
||||
# source='$<' object='$@' libtool=yes \
|
||||
$(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\
|
||||
$(LTCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
|
||||
$(am__mv) $$depbase.Tpo $$depbase.Plo
|
||||
# $(AM_V_CC)source='$<' object='$@' libtool=yes \
|
||||
# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \
|
||||
# $(LTCOMPILE) -c -o $@ $<
|
||||
|
||||
bitshuffle_core.lo: bitshuffle/bitshuffle_core.c
|
||||
$(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT bitshuffle_core.lo -MD -MP -MF $(DEPDIR)/bitshuffle_core.Tpo -c -o bitshuffle_core.lo `test -f 'bitshuffle/bitshuffle_core.c' || echo '$(srcdir)/'`bitshuffle/bitshuffle_core.c
|
||||
$(am__mv) $(DEPDIR)/bitshuffle_core.Tpo $(DEPDIR)/bitshuffle_core.Plo
|
||||
# source='bitshuffle/bitshuffle_core.c' object='bitshuffle_core.lo' libtool=yes \
|
||||
# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \
|
||||
# $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o bitshuffle_core.lo `test -f 'bitshuffle/bitshuffle_core.c' || echo '$(srcdir)/'`bitshuffle/bitshuffle_core.c
|
||||
|
||||
bitshuffle.lo: bitshuffle/bitshuffle.c
|
||||
$(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT bitshuffle.lo -MD -MP -MF $(DEPDIR)/bitshuffle.Tpo -c -o bitshuffle.lo `test -f 'bitshuffle/bitshuffle.c' || echo '$(srcdir)/'`bitshuffle/bitshuffle.c
|
||||
$(am__mv) $(DEPDIR)/bitshuffle.Tpo $(DEPDIR)/bitshuffle.Plo
|
||||
# source='bitshuffle/bitshuffle.c' object='bitshuffle.lo' libtool=yes \
|
||||
# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \
|
||||
# $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o bitshuffle.lo `test -f 'bitshuffle/bitshuffle.c' || echo '$(srcdir)/'`bitshuffle/bitshuffle.c
|
||||
|
||||
iochain.lo: bitshuffle/iochain.c
|
||||
$(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT iochain.lo -MD -MP -MF $(DEPDIR)/iochain.Tpo -c -o iochain.lo `test -f 'bitshuffle/iochain.c' || echo '$(srcdir)/'`bitshuffle/iochain.c
|
||||
$(am__mv) $(DEPDIR)/iochain.Tpo $(DEPDIR)/iochain.Plo
|
||||
# source='bitshuffle/iochain.c' object='iochain.lo' libtool=yes \
|
||||
# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \
|
||||
# $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o iochain.lo `test -f 'bitshuffle/iochain.c' || echo '$(srcdir)/'`bitshuffle/iochain.c
|
||||
# $(AM_V_CC_no)$(LTCOMPILE) -c -o $@ $<
|
||||
|
||||
.cpp.o:
|
||||
$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
|
||||
$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
||||
# source='$<' object='$@' libtool=no \
|
||||
$(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
|
||||
$(CXXCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
|
||||
$(am__mv) $$depbase.Tpo $$depbase.Po
|
||||
# $(AM_V_CXX)source='$<' object='$@' libtool=no \
|
||||
# DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) \
|
||||
# $(CXXCOMPILE) -c -o $@ $<
|
||||
# $(AM_V_CXX_no)$(CXXCOMPILE) -c -o $@ $<
|
||||
|
||||
.cpp.obj:
|
||||
$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
|
||||
$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
||||
# source='$<' object='$@' libtool=no \
|
||||
$(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\
|
||||
$(CXXCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\
|
||||
$(am__mv) $$depbase.Tpo $$depbase.Po
|
||||
# $(AM_V_CXX)source='$<' object='$@' libtool=no \
|
||||
# DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) \
|
||||
# $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
|
||||
# $(AM_V_CXX_no)$(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
|
||||
|
||||
.cpp.lo:
|
||||
$(LTCXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
|
||||
$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
|
||||
# source='$<' object='$@' libtool=yes \
|
||||
$(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\
|
||||
$(LTCXXCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
|
||||
$(am__mv) $$depbase.Tpo $$depbase.Plo
|
||||
# $(AM_V_CXX)source='$<' object='$@' libtool=yes \
|
||||
# DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) \
|
||||
# $(LTCXXCOMPILE) -c -o $@ $<
|
||||
# $(AM_V_CXX_no)$(LTCXXCOMPILE) -c -o $@ $<
|
||||
|
||||
mostlyclean-libtool:
|
||||
-rm -f *.lo
|
||||
|
||||
clean-libtool:
|
||||
-rm -rf .libs _libs
|
||||
-rm -rf bitshuffle/.libs bitshuffle/_libs
|
||||
|
||||
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
||||
mkid -fID $$unique
|
||||
tags: TAGS
|
||||
ID: $(am__tagged_files)
|
||||
$(am__define_uniq_tagged_files); mkid -fID $$unique
|
||||
tags: tags-am
|
||||
TAGS: tags
|
||||
|
||||
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||
$(TAGS_FILES) $(LISP)
|
||||
tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
|
||||
set x; \
|
||||
here=`pwd`; \
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
||||
$(am__define_uniq_tagged_files); \
|
||||
shift; \
|
||||
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
|
||||
test -n "$$unique" || unique=$$empty_fix; \
|
||||
@@ -471,15 +584,11 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||
$$unique; \
|
||||
fi; \
|
||||
fi
|
||||
ctags: CTAGS
|
||||
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||
$(TAGS_FILES) $(LISP)
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
|
||||
END { if (nonempty) { for (i in files) print i; }; }'`; \
|
||||
ctags: ctags-am
|
||||
|
||||
CTAGS: ctags
|
||||
ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
|
||||
$(am__define_uniq_tagged_files); \
|
||||
test -z "$(CTAGS_ARGS)$$unique" \
|
||||
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
|
||||
$$unique
|
||||
@@ -488,6 +597,21 @@ GTAGS:
|
||||
here=`$(am__cd) $(top_builddir) && pwd` \
|
||||
&& $(am__cd) $(top_srcdir) \
|
||||
&& gtags -i $(GTAGS_ARGS) "$$here"
|
||||
cscopelist: cscopelist-am
|
||||
|
||||
cscopelist-am: $(am__tagged_files)
|
||||
list='$(am__tagged_files)'; \
|
||||
case "$(srcdir)" in \
|
||||
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
|
||||
*) sdir=$(subdir)/$(srcdir) ;; \
|
||||
esac; \
|
||||
for i in $$list; do \
|
||||
if test -f "$$i"; then \
|
||||
echo "$(subdir)/$$i"; \
|
||||
else \
|
||||
echo "$$sdir/$$i"; \
|
||||
fi; \
|
||||
done >> $(top_builddir)/cscope.files
|
||||
|
||||
distclean-tags:
|
||||
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
||||
@@ -539,10 +663,15 @@ install-am: all-am
|
||||
|
||||
installcheck: installcheck-am
|
||||
install-strip:
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
`test -z '$(STRIP)' || \
|
||||
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
|
||||
if test -z '$(STRIP)'; then \
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
install; \
|
||||
else \
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
|
||||
fi
|
||||
mostlyclean-generic:
|
||||
|
||||
clean-generic:
|
||||
@@ -550,6 +679,8 @@ clean-generic:
|
||||
distclean-generic:
|
||||
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
||||
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
|
||||
-rm -f bitshuffle/$(DEPDIR)/$(am__dirstamp)
|
||||
-rm -f bitshuffle/$(am__dirstamp)
|
||||
|
||||
maintainer-clean-generic:
|
||||
@echo "This command is intended for maintainers to use"
|
||||
@@ -560,7 +691,7 @@ clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
|
||||
mostlyclean-am
|
||||
|
||||
distclean: distclean-am
|
||||
-rm -rf ./$(DEPDIR)
|
||||
-rm -rf ./$(DEPDIR) bitshuffle/$(DEPDIR)
|
||||
-rm -f makefile
|
||||
distclean-am: clean-am distclean-compile distclean-generic \
|
||||
distclean-tags
|
||||
@@ -606,7 +737,7 @@ install-ps-am:
|
||||
installcheck-am:
|
||||
|
||||
maintainer-clean: maintainer-clean-am
|
||||
-rm -rf ./$(DEPDIR)
|
||||
-rm -rf ./$(DEPDIR) bitshuffle/$(DEPDIR)
|
||||
-rm -f makefile
|
||||
maintainer-clean-am: distclean-am maintainer-clean-generic
|
||||
|
||||
@@ -627,19 +758,19 @@ uninstall-am: uninstall-libLTLIBRARIES
|
||||
|
||||
.MAKE: install-am install-strip
|
||||
|
||||
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
|
||||
clean-libLTLIBRARIES clean-libtool ctags distclean \
|
||||
distclean-compile distclean-generic distclean-libtool \
|
||||
distclean-tags distdir dvi dvi-am html html-am info info-am \
|
||||
install install-am install-data install-data-am install-dvi \
|
||||
install-dvi-am install-exec install-exec-am install-html \
|
||||
install-html-am install-info install-info-am \
|
||||
install-libLTLIBRARIES install-man install-pdf install-pdf-am \
|
||||
install-ps install-ps-am install-strip installcheck \
|
||||
installcheck-am installdirs maintainer-clean \
|
||||
.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
|
||||
clean-libLTLIBRARIES clean-libtool cscopelist-am ctags \
|
||||
ctags-am distclean distclean-compile distclean-generic \
|
||||
distclean-libtool distclean-tags distdir dvi dvi-am html \
|
||||
html-am info info-am install install-am install-data \
|
||||
install-data-am install-dvi install-dvi-am install-exec \
|
||||
install-exec-am install-html install-html-am install-info \
|
||||
install-info-am install-libLTLIBRARIES install-man install-pdf \
|
||||
install-pdf-am install-ps install-ps-am install-strip \
|
||||
installcheck installcheck-am installdirs maintainer-clean \
|
||||
maintainer-clean-generic mostlyclean mostlyclean-compile \
|
||||
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
|
||||
tags uninstall uninstall-am uninstall-libLTLIBRARIES
|
||||
tags tags-am uninstall uninstall-am uninstall-libLTLIBRARIES
|
||||
|
||||
|
||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||
|
||||
@@ -12,24 +12,32 @@ lib_LTLIBRARIES = libcafe.la
|
||||
#2nd: age
|
||||
#3rd: revision
|
||||
#1.9.1 1.10.2 1.11.0 1.11.1 1.12.0 1.12.1 1.12.2 1.12.4
|
||||
libcafe_la_LDFLAGS = -version-info 13:4:12
|
||||
libcafe_la_LDFLAGS = -version-info 15:4:14
|
||||
|
||||
libcafe_la_SOURCES = cafe.cpp cafeCache.cpp cafeGroup.cpp cafeVectors.cpp cafeXML.cpp \
|
||||
callbackHandlerCreate.cpp callbackHandlerMonitor.cpp conduit.cpp connect.cpp connectCallbacks.cpp \
|
||||
exceptionsHelper.cpp granules.cpp handleHelper.cpp loadCollectionXMLParser.cpp \
|
||||
loadGroupXMLParser.cpp methodCallbacks.cpp helper.cpp policyHelper.cpp \
|
||||
conduitGroup.cpp connectGroup.cpp transpose.cpp restorePVGroupXMLParser.cpp
|
||||
conduitGroup.cpp connectGroup.cpp transpose.cpp restorePVGroupXMLParser.cpp
|
||||
|
||||
|
||||
if HAVE_PYCAFE_EXT_
|
||||
libcafe_la_SOURCES += PyCafe.cpp
|
||||
endif
|
||||
#if HAVE_PYCAFE_EXT_
|
||||
#libcafe_la_SOURCES += PyCafe.cpp
|
||||
#endif
|
||||
|
||||
if HAVE_ZEROMQ_
|
||||
libcafe_la_SOURCES += zbsCafeService.cpp zbsDataHolders.cpp \
|
||||
bitshuffle/bitshuffle_core.c bitshuffle/bitshuffle.c bitshuffle/iochain.c
|
||||
bitshuffle/bitshuffle_core.c bitshuffle/bitshuffle.c bitshuffle/iochain.c
|
||||
|
||||
#if HAVE_PYCAFE_EXT_
|
||||
#libcafe_la_SOURCES += PyCafe.cpp
|
||||
#endif
|
||||
#else
|
||||
#if HAVE_PYTHON_
|
||||
#libcafe_la_SOURCES += pycafe/PyCafe.cpp
|
||||
#endif
|
||||
|
||||
endif
|
||||
##bitshuffle/bshuf_h5filter.c bitshuffle/bshuf_h5plugin.c bitshuffle/lzf_h5plugin.c
|
||||
|
||||
AM_CPPFLAGS = @AM_CPPFLAGS@ @CAFE_CPPFLAGS@
|
||||
AM_LDFLAGS= @AM_LDFLAGS@
|
||||
|
||||
@@ -17,6 +17,7 @@ using namespace std;
|
||||
//#include <PyCafe_api.h>
|
||||
//#endif
|
||||
|
||||
#define RETURN_ON_ERROR true
|
||||
|
||||
#if HAVE_PYTHON_H
|
||||
|
||||
@@ -32,7 +33,7 @@ void CALLBACK_CAFE::PyHandlerPut( struct event_handler_args args)
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
cout << "Status=" << args.status << " for channel " << ca_name (args.chid) << endl;
|
||||
return;
|
||||
if (RETURN_ON_ERROR == true) return;
|
||||
}
|
||||
|
||||
|
||||
@@ -47,26 +48,13 @@ void CALLBACK_CAFE::PyHandlerPut( struct event_handler_args args)
|
||||
|
||||
if (it_handle != handle_index.end())
|
||||
{
|
||||
|
||||
if(MUTEX)cafeMutex.lock();
|
||||
|
||||
//Change Channel Policy to NO_WAIT(?)
|
||||
|
||||
ChannelRequestStatus channelRequestStatusPut=(*it_handle).getChannelRequestStatusPut();
|
||||
|
||||
channelRequestStatusPut.setCallbackKind(false, true);
|
||||
|
||||
handle_index.modify(it_handle, change_channelRequestStatusPut(channelRequestStatusPut));
|
||||
|
||||
if(MUTEX)cafeMutex.unlock();
|
||||
|
||||
|
||||
//if HAVE_PYTHON_H
|
||||
|
||||
if(MUTEX)cafeMutex.unlock();
|
||||
(*it_handle).PyPutHandler();
|
||||
|
||||
//endif
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -76,7 +64,6 @@ void CALLBACK_CAFE::PyHandlerPut( struct event_handler_args args)
|
||||
// Loop through all elements and search for handle
|
||||
for (itcs = cs.begin(); itcs != cs.end(); ++itcs)
|
||||
{
|
||||
|
||||
if ( (*itcs).getHandle()==_handle)
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
@@ -87,12 +74,8 @@ void CALLBACK_CAFE::PyHandlerPut( struct event_handler_args args)
|
||||
ChannelRequestStatus channelRequestStatusPut=(*itcs).getChannelRequestStatusPut();
|
||||
channelRequestStatusPut.setCallbackKind(false, true);
|
||||
handle_index.modify(itcs, change_channelRequestStatusPut(channelRequestStatusPut));
|
||||
if(MUTEX)cafeMutex.unlock();
|
||||
|
||||
//if HAVE_PYTHON_H
|
||||
if(MUTEX)cafeMutex.unlock();
|
||||
(*it_handle).PyPutHandler();
|
||||
//endif
|
||||
|
||||
internalFlag=true;
|
||||
break;
|
||||
}
|
||||
@@ -125,12 +108,11 @@ void CALLBACK_CAFE::PyHandlerGet( struct event_handler_args args)
|
||||
|
||||
#define __METHOD__ "CALLBACK_CAFE::PyHandlerGet"
|
||||
|
||||
|
||||
if (args.status !=ECA_NORMAL)
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
cout << "Status=" << args.status << " for channel " << ca_name (args.chid) << endl;
|
||||
return;
|
||||
if (RETURN_ON_ERROR == true) return;
|
||||
}
|
||||
|
||||
unsigned int _handle = (unsigned long) args.usr; // ca_puser(args.chid);
|
||||
@@ -156,22 +138,15 @@ void CALLBACK_CAFE::PyHandlerGet( struct event_handler_args args)
|
||||
{
|
||||
cafeMutex.unlock();
|
||||
}
|
||||
|
||||
|
||||
//if HAVE_PYTHON_H
|
||||
(*it_handle).PyGetHandler();
|
||||
//endif
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
bool internalFlag=false;
|
||||
cafeConduit_set::iterator itcs;
|
||||
// Loop through all elements and search for handle
|
||||
for (itcs = cs.begin(); itcs != cs.end(); ++itcs)
|
||||
{
|
||||
|
||||
if ( (*itcs).getHandle()==_handle)
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
@@ -231,17 +206,15 @@ void CALLBACK_CAFE::handlerPulseID( struct event_handler_args args)
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
cout << "Status=" << args.status << " for channel " << ca_name (args.chid) << endl;
|
||||
return;
|
||||
if (RETURN_ON_ERROR == true) return;
|
||||
}
|
||||
|
||||
unsigned int _handle = (unsigned long) args.usr;
|
||||
unsigned long long pulse_id=0;
|
||||
|
||||
|
||||
cafeConduit_set_by_handle & handle_index = cs.get<by_handle> ();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
|
||||
|
||||
it_handle = handle_index.find((unsigned int) _handle);
|
||||
|
||||
if (it_handle != handle_index.end())
|
||||
@@ -262,7 +235,6 @@ void CALLBACK_CAFE::handlerPulseID( struct event_handler_args args)
|
||||
{
|
||||
cafeMutex.unlock();
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -271,28 +243,6 @@ void CALLBACK_CAFE::handlerPulseID( struct event_handler_args args)
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
PVDataHolder pvd;
|
||||
(*it_handle).getPVDataHolder(pvd);
|
||||
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
cafeConduit_set::iterator itcs;
|
||||
|
||||
// Loop through all elements
|
||||
for (itcs = cs.begin(); itcs != cs.end(); ++itcs) {
|
||||
if ((*itcs).getChannelID() != NULL) {
|
||||
if(MUTEX){cafeMutex.lock();}
|
||||
handle_index.modify(itcs, change_beamEventNo(pulse_id));
|
||||
if(MUTEX){cafeMutex.unlock();}
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
return;
|
||||
#undef __METHOD__
|
||||
};
|
||||
@@ -310,7 +260,7 @@ void CALLBACK_CAFE::handlerPut( struct event_handler_args args)
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
cout << "Status=" << args.status << " for channel " << ca_name (args.chid) << endl;
|
||||
return;
|
||||
if (RETURN_ON_ERROR == true) return;
|
||||
}
|
||||
|
||||
unsigned int _handle = (unsigned long) args.usr;
|
||||
@@ -318,7 +268,6 @@ void CALLBACK_CAFE::handlerPut( struct event_handler_args args)
|
||||
//cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
//cout << "Status=" << args.status << " for channel " << ca_name (args.chid) << " handle " << _handle << endl;
|
||||
|
||||
|
||||
cafeConduit_set_by_handle & handle_index = cs.get<by_handle> ();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
|
||||
@@ -326,30 +275,20 @@ void CALLBACK_CAFE::handlerPut( struct event_handler_args args)
|
||||
|
||||
if (it_handle != handle_index.end())
|
||||
{
|
||||
|
||||
if(MUTEX)cafeMutex.lock();
|
||||
|
||||
//Change Channel Policy to NO_WAIT(?)
|
||||
|
||||
ChannelRequestStatus channelRequestStatusPut=(*it_handle).getChannelRequestStatusPut();
|
||||
|
||||
channelRequestStatusPut.setCallbackKind(false, true);
|
||||
|
||||
handle_index.modify(it_handle, change_channelRequestStatusPut(channelRequestStatusPut));
|
||||
|
||||
if(MUTEX)cafeMutex.unlock();
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
bool internalFlag=false;
|
||||
cafeConduit_set::iterator itcs;
|
||||
// Loop through all elements and search for handle
|
||||
for (itcs = cs.begin(); itcs != cs.end(); ++itcs)
|
||||
{
|
||||
|
||||
|
||||
if ( (*itcs).getHandle()==_handle)
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
@@ -361,8 +300,6 @@ void CALLBACK_CAFE::handlerPut( struct event_handler_args args)
|
||||
channelRequestStatusPut.setCallbackKind(false, true);
|
||||
handle_index.modify(itcs, change_channelRequestStatusPut(channelRequestStatusPut));
|
||||
if(MUTEX)cafeMutex.unlock();
|
||||
|
||||
|
||||
internalFlag=true;
|
||||
break;
|
||||
}
|
||||
@@ -373,7 +310,6 @@ void CALLBACK_CAFE::handlerPut( struct event_handler_args args)
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
cout << " Internal CAFE ERROR! Unknown Handle! handle=" << _handle << endl;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return;
|
||||
@@ -395,8 +331,7 @@ void CALLBACK_CAFE::handlerGet( struct event_handler_args args)
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
cout << "Status=" << args.status << " for channel " << ca_name (args.chid) << endl;
|
||||
|
||||
return;
|
||||
if (RETURN_ON_ERROR == true) return;
|
||||
}
|
||||
|
||||
unsigned int _handle = (unsigned long) args.usr; // ca_puser(args.chid);
|
||||
@@ -408,10 +343,8 @@ void CALLBACK_CAFE::handlerGet( struct event_handler_args args)
|
||||
|
||||
if (it_handle != handle_index.end())
|
||||
{
|
||||
|
||||
ChannelRequestStatus channelRequestStatusGet=(*it_handle).getChannelRequestStatusGet();
|
||||
channelRequestStatusGet.setCallbackKind(false, true);
|
||||
|
||||
if(MUTEX)
|
||||
{
|
||||
cafeMutex.lock();
|
||||
@@ -423,23 +356,19 @@ void CALLBACK_CAFE::handlerGet( struct event_handler_args args)
|
||||
{
|
||||
cafeMutex.unlock();
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
bool internalFlag=false;
|
||||
cafeConduit_set::iterator itcs;
|
||||
// Loop through all elements and search for handle
|
||||
for (itcs = cs.begin(); itcs != cs.end(); ++itcs)
|
||||
{
|
||||
|
||||
if ( (*itcs).getHandle()==_handle)
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
cout << " INFORMATION to author: MATCHed Handle= " << _handle << " to PV= " << (*itcs).getPV() << endl;
|
||||
cout << " by looping through tcs::iterator, since the by_handle::iterator was NOT found! " << endl;
|
||||
|
||||
ChannelRequestStatus channelRequestStatusGet=(*itcs).getChannelRequestStatusGet();
|
||||
channelRequestStatusGet.setCallbackKind(false, true);
|
||||
if(MUTEX)
|
||||
@@ -452,7 +381,6 @@ void CALLBACK_CAFE::handlerGet( struct event_handler_args args)
|
||||
{
|
||||
cafeMutex.unlock();
|
||||
}
|
||||
|
||||
internalFlag=true;
|
||||
break;
|
||||
}
|
||||
@@ -487,7 +415,8 @@ void CALLBACK_CAFE::handlerGetCtrlAtConnect( struct event_handler_args args)
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
cout << "Status=" << args.status << " for channel " << ca_name (args.chid) << endl;
|
||||
|
||||
//JC May 2021 Still want to update multi-index container even if status has error
|
||||
/*
|
||||
#if HAVE_PYTHON_H
|
||||
unsigned int _handle = (unsigned long) args.usr; // ca_puser(args.chid);
|
||||
|
||||
@@ -506,8 +435,8 @@ void CALLBACK_CAFE::handlerGetCtrlAtConnect( struct event_handler_args args)
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
return;
|
||||
*/
|
||||
if (RETURN_ON_ERROR == true) return;
|
||||
}
|
||||
|
||||
unsigned int _handle = (unsigned long) args.usr; // ca_puser(args.chid);
|
||||
@@ -517,10 +446,8 @@ void CALLBACK_CAFE::handlerGetCtrlAtConnect( struct event_handler_args args)
|
||||
|
||||
it_handle = handle_index.find(_handle);
|
||||
|
||||
|
||||
if (it_handle != handle_index.end())
|
||||
{
|
||||
|
||||
if(MUTEX)
|
||||
{
|
||||
cafeMutex.lock();
|
||||
@@ -569,7 +496,6 @@ void CALLBACK_CAFE::handlerGetCtrlAtConnect( struct event_handler_args args)
|
||||
// Loop through all elements and search for handle
|
||||
for (itcs = cs.begin(); itcs != cs.end(); ++itcs)
|
||||
{
|
||||
|
||||
if ( (*itcs).getHandle()==_handle)
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
@@ -634,8 +560,7 @@ void CALLBACK_CAFE::handlerGetCtrl( struct event_handler_args args)
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
cout << "Status=" << args.status << " for channel " << ca_name (args.chid) << endl;
|
||||
|
||||
return;
|
||||
if (RETURN_ON_ERROR == true) return;
|
||||
}
|
||||
|
||||
unsigned int _handle = (unsigned long) args.usr; // ca_puser(args.chid);
|
||||
@@ -645,10 +570,8 @@ void CALLBACK_CAFE::handlerGetCtrl( struct event_handler_args args)
|
||||
|
||||
it_handle = handle_index.find(_handle);
|
||||
|
||||
|
||||
if (it_handle != handle_index.end())
|
||||
{
|
||||
|
||||
if(MUTEX)
|
||||
{
|
||||
cafeMutex.lock();
|
||||
@@ -673,13 +596,11 @@ void CALLBACK_CAFE::handlerGetCtrl( struct event_handler_args args)
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
bool internalFlag=false;
|
||||
cafeConduit_set::iterator itcs;
|
||||
// Loop through all elements and search for handle
|
||||
for (itcs = cs.begin(); itcs != cs.end(); ++itcs)
|
||||
{
|
||||
|
||||
if ( (*itcs).getHandle()==_handle)
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
@@ -738,8 +659,7 @@ void CALLBACK_CAFE::handlerGetSTSACK( struct event_handler_args args)
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
cout << "Status=" << args.status << " for channel " << ca_name (args.chid) << endl;
|
||||
|
||||
return;
|
||||
if (RETURN_ON_ERROR == true) return;
|
||||
}
|
||||
|
||||
|
||||
@@ -752,7 +672,6 @@ void CALLBACK_CAFE::handlerGetSTSACK( struct event_handler_args args)
|
||||
|
||||
if (it_handle != handle_index.end())
|
||||
{
|
||||
|
||||
if(MUTEX)
|
||||
{
|
||||
cafeMutex.lock();
|
||||
@@ -774,17 +693,14 @@ void CALLBACK_CAFE::handlerGetSTSACK( struct event_handler_args args)
|
||||
{
|
||||
cafeMutex.unlock();
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
bool internalFlag=false;
|
||||
cafeConduit_set::iterator itcs;
|
||||
// Loop through all elements and search for handle
|
||||
for (itcs = cs.begin(); itcs != cs.end(); ++itcs)
|
||||
{
|
||||
|
||||
if ( (*itcs).getHandle()==_handle)
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
@@ -822,8 +738,6 @@ void CALLBACK_CAFE::handlerGetSTSACK( struct event_handler_args args)
|
||||
cout << " Internal CAFE ERROR! Unknown Handle! handle=" << _handle << endl;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return;
|
||||
#undef __METHOD__
|
||||
};
|
||||
@@ -839,13 +753,11 @@ void CALLBACK_CAFE::handlerGetClassName( struct event_handler_args args)
|
||||
{
|
||||
#define __METHOD__ "CALLBACK_CAFE::handlerGetClassName "
|
||||
|
||||
|
||||
|
||||
if (args.status !=ECA_NORMAL)
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
cout << "Status=" << args.status << " for channel " << ca_name (args.chid) << endl;
|
||||
return;
|
||||
if (RETURN_ON_ERROR == true) return;
|
||||
}
|
||||
|
||||
unsigned int _handle = (unsigned long) args.usr; // ca_puser(args.chid);
|
||||
@@ -853,12 +765,10 @@ void CALLBACK_CAFE::handlerGetClassName( struct event_handler_args args)
|
||||
cafeConduit_set_by_handle & handle_index = cs.get<by_handle> ();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
|
||||
|
||||
it_handle = handle_index.find(_handle);
|
||||
|
||||
if (it_handle != handle_index.end())
|
||||
{
|
||||
|
||||
if(MUTEX)
|
||||
{
|
||||
cafeMutex.lock();
|
||||
@@ -870,7 +780,6 @@ void CALLBACK_CAFE::handlerGetClassName( struct event_handler_args args)
|
||||
}
|
||||
|
||||
ChannelRequestStatus channelRequestStatusGetClassName=(*it_handle).getChannelRequestStatusGetClassName();
|
||||
|
||||
channelRequestStatusGetClassName.setCallbackKind(false, true);
|
||||
|
||||
if(MUTEX)
|
||||
@@ -882,17 +791,14 @@ void CALLBACK_CAFE::handlerGetClassName( struct event_handler_args args)
|
||||
{
|
||||
cafeMutex.unlock();
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
bool internalFlag=false;
|
||||
cafeConduit_set::iterator itcs;
|
||||
// Loop through all elements and search for handle
|
||||
for (itcs = cs.begin(); itcs != cs.end(); ++itcs)
|
||||
{
|
||||
|
||||
if ( (*itcs).getHandle()==_handle)
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
@@ -919,7 +825,6 @@ void CALLBACK_CAFE::handlerGetClassName( struct event_handler_args args)
|
||||
{
|
||||
cafeMutex.unlock();
|
||||
}
|
||||
|
||||
internalFlag=true;
|
||||
break;
|
||||
}
|
||||
@@ -939,19 +844,19 @@ void CALLBACK_CAFE::handlerGetClassName( struct event_handler_args args)
|
||||
|
||||
|
||||
/**
|
||||
* Callback function for handlerClassName method is invoked
|
||||
* Callback function for handlerGetDescription method is invoked
|
||||
* with a pointer to the retrieved value
|
||||
* \param args input: event handler arguments
|
||||
*/
|
||||
void CALLBACK_CAFE::handlerGetDescription( struct event_handler_args args)
|
||||
{
|
||||
#define __METHOD__ "CALLBACK_CAFE::handlerGetDesscription "
|
||||
#define __METHOD__ "CALLBACK_CAFE::handlerGetDescription "
|
||||
|
||||
if (args.status !=ECA_NORMAL)
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
cout << "Status=" << args.status << " for channel " << ca_name (args.chid) << endl;
|
||||
return;
|
||||
if (RETURN_ON_ERROR == true) return;
|
||||
}
|
||||
|
||||
unsigned int _handle = (unsigned long) args.usr; // ca_puser(args.chid);
|
||||
@@ -963,7 +868,6 @@ void CALLBACK_CAFE::handlerGetDescription( struct event_handler_args args)
|
||||
|
||||
if (it_handle != handle_index.end())
|
||||
{
|
||||
|
||||
if(MUTEX)
|
||||
{
|
||||
cafeMutex.lock();
|
||||
@@ -973,17 +877,14 @@ void CALLBACK_CAFE::handlerGetDescription( struct event_handler_args args)
|
||||
{
|
||||
cafeMutex.unlock();
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
bool internalFlag=false;
|
||||
cafeConduit_set::iterator itcs;
|
||||
// Loop through all elements and search for handle
|
||||
for (itcs = cs.begin(); itcs != cs.end(); ++itcs)
|
||||
{
|
||||
|
||||
if ( (*itcs).getHandle()==_handle)
|
||||
{
|
||||
cout << __FILE__ << "/" << __LINE__ << "/" << __METHOD__ << endl;
|
||||
|
||||
0
src/pycafe/.deps/.dirstamp
Normal file
0
src/pycafe/.deps/.dirstamp
Normal file
4176
src/pycafe/.deps/PyCafe.Plo
Normal file
4176
src/pycafe/.deps/PyCafe.Plo
Normal file
File diff suppressed because it is too large
Load Diff
4244
src/pycafe/.deps/PyCafe_sf.Plo
Normal file
4244
src/pycafe/.deps/PyCafe_sf.Plo
Normal file
File diff suppressed because it is too large
Load Diff
4244
src/pycafe/.deps/PyCafe_sf.Tpo
Normal file
4244
src/pycafe/.deps/PyCafe_sf.Tpo
Normal file
File diff suppressed because it is too large
Load Diff
0
src/pycafe/.dirstamp
Normal file
0
src/pycafe/.dirstamp
Normal file
BIN
src/pycafe/.libs/PyCafe.o
Normal file
BIN
src/pycafe/.libs/PyCafe.o
Normal file
Binary file not shown.
166051
src/pycafe/PyCafe.cpp
Normal file
166051
src/pycafe/PyCafe.cpp
Normal file
File diff suppressed because it is too large
Load Diff
12
src/pycafe/PyCafe.lo
Normal file
12
src/pycafe/PyCafe.lo
Normal file
@@ -0,0 +1,12 @@
|
||||
# pycafe/PyCafe.lo - a libtool object file
|
||||
# Generated by libtool (GNU libtool) 2.4.6
|
||||
#
|
||||
# Please DO NOT delete this file!
|
||||
# It is necessary for linking the library.
|
||||
|
||||
# Name of the PIC object.
|
||||
pic_object='.libs/PyCafe.o'
|
||||
|
||||
# Name of the non-PIC object
|
||||
non_pic_object='PyCafe.o'
|
||||
|
||||
BIN
src/pycafe/PyCafe.o
Normal file
BIN
src/pycafe/PyCafe.o
Normal file
Binary file not shown.
166161
src/pycafe/PyCafe_35_sf.cpp
Normal file
166161
src/pycafe/PyCafe_35_sf.cpp
Normal file
File diff suppressed because it is too large
Load Diff
166161
src/pycafe/PyCafe_sf.cpp
Normal file
166161
src/pycafe/PyCafe_sf.cpp
Normal file
File diff suppressed because it is too large
Load Diff
171099
src/pycafe/PyCafe_sf.cpp-
Normal file
171099
src/pycafe/PyCafe_sf.cpp-
Normal file
File diff suppressed because it is too large
Load Diff
166161
src/pycafe/PyCafe_sf.cpp--
Normal file
166161
src/pycafe/PyCafe_sf.cpp--
Normal file
File diff suppressed because it is too large
Load Diff
156764
src/pycafe/PyCafe_sls.cpp
Normal file
156764
src/pycafe/PyCafe_sls.cpp
Normal file
File diff suppressed because it is too large
Load Diff
@@ -670,21 +670,18 @@ int Transpose<dbr_string_t>::get(
|
||||
{
|
||||
#define __METHOD__ "Transpose<dbr_string_t>::get()"
|
||||
|
||||
//cout << __FILE__ << "//" << __LINE__ << "//" << __METHOD__ << endl;
|
||||
//cout << __FILE__ << "//" << __LINE__ << "//" << __METHOD__ << endl;
|
||||
|
||||
cafeConduit_set_by_handle & handle_index=cs.get<by_handle>();
|
||||
cafeConduit_set_by_handle::iterator it_handle;
|
||||
it_handle = handle_index.find(_handle);
|
||||
|
||||
|
||||
if (it_handle != handle_index.end())
|
||||
{
|
||||
|
||||
PVDataL = (*it_handle).getDataBuffer ();
|
||||
offset = (*it_handle).getChannelRequestMetaDataClient().getOffset();
|
||||
|
||||
|
||||
|
||||
if(isCacheRequest)
|
||||
{
|
||||
offset = (*it_handle).getChannelRequestMetaData().getOffset( );
|
||||
@@ -697,8 +694,6 @@ int Transpose<dbr_string_t>::get(
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
//Something wrong, just read last element
|
||||
if (nelem <=0)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user