Compare commits
7 Commits
cafe-1.13.
...
cafe-1-14.
| Author | SHA1 | Date | |
|---|---|---|---|
| c2934ce3f7 | |||
| 7c779d9add | |||
| 80ce12d374 | |||
| 90e063f930 | |||
| cc804d2e7b | |||
| cecf4a3f11 | |||
| 275bf4ad10 |
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.
|
||||
|
||||
|
||||
@@ -3,13 +3,12 @@
|
||||
#<facility = sls sls2 sf> default is sf
|
||||
#<target_language = cpp matlab python>
|
||||
module unload gcc
|
||||
module load gcc/6.3.0
|
||||
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
|
||||
@@ -23,7 +22,7 @@ automake --force --add-missing --copy
|
||||
#Used by ./configure
|
||||
#Assumes format ${EPICS}/base-3.14.12
|
||||
#source cafeVersion-gcc-7.3.0
|
||||
CAFE_V="cafe-1.13.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")
|
||||
@@ -37,7 +36,7 @@ EPICS_BASE=$(readlink ${EPICS}/base)
|
||||
echo $EPICS_BASE
|
||||
if [ -z "$EPICS_BASE" ]
|
||||
then
|
||||
EPICS_BASE='base-7.4.1' #7.0 = 7+0 = 7 for major release
|
||||
EPICS_BASE='base-7' #7.0 = 7+0 = 7 for major release
|
||||
fi
|
||||
|
||||
echo 'input' "$0" "$1" "$2"
|
||||
@@ -57,6 +56,7 @@ 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" ]
|
||||
@@ -125,6 +125,7 @@ fi
|
||||
if [ -n "$CACLIENT" ]
|
||||
then
|
||||
if [ "$CACLIENT" = "matlab" ] || [ "$CACLIENT" = "python" ] || \
|
||||
[ "$CACLIENT" = "py310" ] || [ "$CACLIENT" = "py38" ] || \
|
||||
[ "$CACLIENT" = "py37" ] || [ "$CACLIENT" = "py35" ] || \
|
||||
[ "$CACLIENT" = "julia" ] || [ "$CACLIENT" = "cpp" ] || \
|
||||
[ "$CACLIENT" = "cc" ]
|
||||
@@ -134,6 +135,7 @@ then
|
||||
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" ]
|
||||
@@ -205,6 +207,16 @@ 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
|
||||
@@ -259,17 +271,20 @@ echo 'ENABLE_OPTIONS='$ENABLE_OPTIONS
|
||||
--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-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-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
|
||||
|
||||
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
|
||||
|
||||
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 @@
|
||||
configurePSI.ac
|
||||
1189
configure.ac
Normal file
1189
configure.ac
Normal file
File diff suppressed because it is too large
Load Diff
165
configurePSI.ac
165
configurePSI.ac
@@ -8,8 +8,8 @@
|
||||
|
||||
# Standard macros
|
||||
AC_PREREQ(2.63)
|
||||
AC_COPYRIGHT([CAFE,Jan Chrin, 2018])
|
||||
AC_INIT([CAFE], [1.13.0], [Bug reports to: jan.chrin@psi.ch])
|
||||
AC_COPYRIGHT([CAFE,Jan Chrin, 2010-2021])
|
||||
AC_INIT([CAFE], [1.14.4], [Bug reports to: jan.chrin@psi.ch])
|
||||
|
||||
AC_CONFIG_AUX_DIR(./)
|
||||
|
||||
@@ -412,6 +412,63 @@ if test x$HAVE_PY37_ == xtrue ; then
|
||||
]
|
||||
)
|
||||
fi
|
||||
|
||||
|
||||
AC_ARG_ENABLE(
|
||||
[python38],
|
||||
AC_HELP_STRING([--enable-python38],
|
||||
[enable python use [default=no]]),
|
||||
[HAVE_PYTHON_=true
|
||||
HAVE_PY38_=true
|
||||
HAVE_PY37_=false
|
||||
HAVE_PY35_=false]
|
||||
)
|
||||
|
||||
if test x$HAVE_PY38_ == xtrue ; then
|
||||
AC_ARG_WITH(
|
||||
python38,
|
||||
AC_HELP_STRING(
|
||||
[--with-python38 = location of python],
|
||||
[prefix giving the python base directory]),
|
||||
[#HAVE_PYTHON_=true
|
||||
PYTHON_PREFIX=$withval
|
||||
PYTHON_INCL_PATH="-I"${PYTHON_PREFIX}/include/python3.8
|
||||
PYTHON_INCL_PATH=${PYTHON_INCL_PATH}" -I"${PYTHON_PREFIX}\
|
||||
"/lib/python3.8/site-packages/numpy/core/include"
|
||||
PYTHON_LIB_PATH=${PYTHON_PREFIX}"/lib"
|
||||
]
|
||||
)
|
||||
fi
|
||||
|
||||
|
||||
AC_ARG_ENABLE(
|
||||
[python310],
|
||||
AC_HELP_STRING([--enable-python310],
|
||||
[enable python use [default=no]]),
|
||||
[HAVE_PYTHON_=true
|
||||
HAVE_PY310_=true
|
||||
HAVE_PY38_=false
|
||||
HAVE_PY37_=false
|
||||
HAVE_PY35_=false]
|
||||
)
|
||||
|
||||
if test x$HAVE_PY310_ == xtrue ; then
|
||||
AC_ARG_WITH(
|
||||
python310,
|
||||
AC_HELP_STRING(
|
||||
[--with-python310 = location of python],
|
||||
[prefix giving the python base directory]),
|
||||
[#HAVE_PYTHON_=true
|
||||
PYTHON_PREFIX=$withval
|
||||
PYTHON_INCL_PATH="-I"${PYTHON_PREFIX}/include/python3.10
|
||||
PYTHON_INCL_PATH=${PYTHON_INCL_PATH}" -I"${PYTHON_PREFIX}\
|
||||
"/lib/python3.10/site-packages/numpy/core/include"
|
||||
PYTHON_LIB_PATH=${PYTHON_PREFIX}"/lib"
|
||||
]
|
||||
)
|
||||
fi
|
||||
|
||||
|
||||
|
||||
##
|
||||
##---------------------------------------------------------------------------
|
||||
@@ -450,6 +507,23 @@ if test x$HAVE_PYTHON_ == xtrue ; then
|
||||
[])
|
||||
#fi
|
||||
|
||||
|
||||
if test x$HAVE_PY310_ == xtrue ; then
|
||||
|
||||
AC_CHECK_LIB(python3.10,[main], [],
|
||||
[HAVE_PYTHON_=false
|
||||
AC_MSG_WARN(libpython3.10 not found!)]
|
||||
)
|
||||
fi
|
||||
|
||||
if test x$HAVE_PY38_ == xtrue ; then
|
||||
|
||||
AC_CHECK_LIB(python3.8,[main], [],
|
||||
[HAVE_PYTHON_=false
|
||||
AC_MSG_WARN(libpython3.8 not found!)]
|
||||
)
|
||||
fi
|
||||
|
||||
if test x$HAVE_PY37_ == xtrue ; then
|
||||
|
||||
AC_CHECK_LIB(python3.7m,[main], [],
|
||||
@@ -488,7 +562,7 @@ fi
|
||||
|
||||
AC_LANG_POP
|
||||
##
|
||||
##-- end Python 3.7 -- check header files and library
|
||||
##-- end Python 3.7(3.8 -- check header files and library
|
||||
##-----------------------------
|
||||
|
||||
|
||||
@@ -538,7 +612,7 @@ AC_ARG_ENABLE(
|
||||
HAVE_QT_4_=false]
|
||||
)
|
||||
|
||||
|
||||
|
||||
|
||||
#Only if enable flag is set
|
||||
if test x$HAVE_QT_5_ == xtrue ; then
|
||||
@@ -556,7 +630,68 @@ if test x$HAVE_QT_5_ == xtrue ; then
|
||||
]
|
||||
)
|
||||
fi
|
||||
|
||||
|
||||
|
||||
AC_ARG_ENABLE(
|
||||
[qt5py38],
|
||||
AC_HELP_STRING([--enable-qt5py38],
|
||||
[enable Qt version 5 use [default=no]]),
|
||||
[HAVE_QT_=true
|
||||
HAVE_QT_5py38_=true
|
||||
HAVE_QT_5_=false
|
||||
HAVE_QT_4_=false]
|
||||
)
|
||||
|
||||
|
||||
#Only if enable flag is set
|
||||
if test x$HAVE_QT_5py38_ == xtrue ; then
|
||||
AC_ARG_WITH(
|
||||
qt5py38,
|
||||
AC_HELP_STRING([--with-qt5py38=PREFIX],
|
||||
[prefix, parent directory where the Qt version 5 library is installed]),
|
||||
[#HAVE_QT_=true
|
||||
QT_PREFIX=$withval
|
||||
QT_INCL_BASE=" -I"${QT_PREFIX}"/include/qt"
|
||||
QT_INCL_PATH=${QT_INCL_BASE}
|
||||
QT_INCL_PATH=${QT_INCL_PATH}" "${QT_INCL_BASE}"/QtCore"
|
||||
QT_INCL_PATH=${QT_INCL_PATH}" "${QT_INCL_BASE}"/QtXml"
|
||||
QT_LIB_PATH=${QT_PREFIX}"/lib "
|
||||
]
|
||||
)
|
||||
fi
|
||||
|
||||
|
||||
|
||||
AC_ARG_ENABLE(
|
||||
[qt5py310],
|
||||
AC_HELP_STRING([--enable-qt5py310],
|
||||
[enable Qt version 5 use [default=no]]),
|
||||
[HAVE_QT_=true
|
||||
HAVE_QT_5py310_=true
|
||||
HAVE_QT_5py38_=false
|
||||
HAVE_QT_5_=false
|
||||
HAVE_QT_4_=false]
|
||||
)
|
||||
|
||||
|
||||
#Only if enable flag is set
|
||||
if test x$HAVE_QT_5py310_ == xtrue ; then
|
||||
AC_ARG_WITH(
|
||||
qt5py310,
|
||||
AC_HELP_STRING([--with-qt5py310=PREFIX],
|
||||
[prefix, parent directory where the Qt version 5 library is installed]),
|
||||
[#HAVE_QT_=true
|
||||
QT_PREFIX=$withval
|
||||
QT_INCL_BASE=" -I"${QT_PREFIX}"/include/qt"
|
||||
QT_INCL_PATH=${QT_INCL_BASE}
|
||||
QT_INCL_PATH=${QT_INCL_PATH}" "${QT_INCL_BASE}"/QtCore"
|
||||
QT_INCL_PATH=${QT_INCL_PATH}" "${QT_INCL_BASE}"/QtXml"
|
||||
QT_LIB_PATH=${QT_PREFIX}"/lib "
|
||||
]
|
||||
)
|
||||
fi
|
||||
|
||||
|
||||
##
|
||||
##---------------------------------------------------------------------------
|
||||
|
||||
@@ -601,21 +736,23 @@ if test x$HAVE_QT_ == xtrue ; then
|
||||
AC_MSG_WARN(libQtXml not found!)])
|
||||
fi
|
||||
|
||||
#if test x$HAVE_QT_5_ == xtrue ; then
|
||||
# AC_CHECK_LIB(Qt5Core,[write],
|
||||
# [],
|
||||
# [HAVE_QT_=false #force true if there but not found
|
||||
# AC_MSG_WARN(libQt5Core... no check)])
|
||||
#fi
|
||||
if test x$HAVE_QT_5_ == xtrue ; then
|
||||
AC_CHECK_LIB(Qt5Core,[write],
|
||||
[],
|
||||
[HAVE_QT_=true #force true if there but not found
|
||||
AC_MSG_WARN(libQt5Core not checked for!)])
|
||||
fi
|
||||
|
||||
if test x$HAVE_QT_5_ == xtrue ; then
|
||||
AC_CHECK_LIB(Qt5Xml,[qt_version_tag],
|
||||
[],
|
||||
[HAVE_QT_=false
|
||||
AC_MSG_WARN(libQt5Xml not found!)])
|
||||
[],
|
||||
[HAVE_QT_=true
|
||||
AC_MSG_WARN(libQt5Xml not checked for!)])
|
||||
fi
|
||||
|
||||
|
||||
|
||||
|
||||
# If all checks are OK we add Qt version 5 to the FLAGS.
|
||||
if test x$HAVE_QT_ != xtrue ; then
|
||||
if test x"${QT_PREFIX}" != x"" ; then
|
||||
|
||||
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
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);
|
||||
|
||||
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 */
|
||||
@@ -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
|
||||
249
include/makefile
249
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
|
||||
@@ -45,8 +89,8 @@ host_triplet = x86_64-unknown-linux-gnu
|
||||
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 \
|
||||
@@ -58,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 \
|
||||
@@ -68,7 +129,7 @@ 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 \
|
||||
@@ -97,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 -I/opt/gfa/python-3.7/latest/include/python3.7m -I/opt/gfa/python-3.7/latest/lib/python3.7/site-packages/numpy/core/include -I/opt/gfa/python-3.7/latest/include/qt -I/opt/gfa/python-3.7/latest/include/qt/QtCore -I/opt/gfa/python-3.7/latest/include/qt/QtXml
|
||||
AM_LDFLAGS = -L/usr/local/epics/base/lib/SL6-x86_64 -Wl,-rpath,/usr/local/epics/base/lib/SL6-x86_64 -L/opt/gfa/python-3.7/latest/lib -Wl,-rpath,/opt/gfa/python-3.7/latest/lib -L/opt/gfa/python-3.7/latest/lib -Wl,-rpath,/opt/gfa/python-3.7/latest/lib
|
||||
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/7.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/7.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/opt/gfa/python-3.7/latest/include/python3.7m -I/opt/gfa/python-3.7/latest/lib/python3.7/site-packages/numpy/core/include -I/opt/gfa/python-3.7/latest/include/qt -I/opt/gfa/python-3.7/latest/include/qt/QtCore -I/opt/gfa/python-3.7/latest/include/qt/QtXml
|
||||
CXX = /opt/psi/Programming/gcc/7.3.0/bin/g++
|
||||
CXXCPP = /opt/psi/Programming/gcc/7.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
|
||||
@@ -130,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 -L/opt/gfa/python-3.7/latest/lib -Wl,-rpath,/opt/gfa/python-3.7/latest/lib -L/opt/gfa/python-3.7/latest/lib -Wl,-rpath,/opt/gfa/python-3.7/latest/lib
|
||||
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 = -lQt5Xml -lpython3.7m
|
||||
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
|
||||
@@ -160,29 +245,30 @@ OTOOL64 =
|
||||
PACKAGE = cafe
|
||||
PACKAGE_BUGREPORT = Bug reports to: jan.chrin@psi.ch
|
||||
PACKAGE_NAME = CAFE
|
||||
PACKAGE_STRING = CAFE 1.13.0
|
||||
PACKAGE_STRING = CAFE 1.14.4
|
||||
PACKAGE_TARNAME = cafe
|
||||
PACKAGE_VERSION = 1.13.0
|
||||
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.13.0
|
||||
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/7.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 =
|
||||
@@ -204,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-1.13.0/lib/SL6-x86_64
|
||||
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-1.13.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
|
||||
@@ -231,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 \
|
||||
@@ -277,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"; \
|
||||
@@ -292,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; \
|
||||
@@ -327,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
|
||||
@@ -344,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
|
||||
@@ -395,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:
|
||||
@@ -478,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
|
||||
|
||||
@@ -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.13.0
|
||||
# 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/7.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/7.3.0/lib/gcc/x86_64-pc-linux-gnu/7.3.0 /afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib/gcc /opt/psi/Programming/gcc/7.3.0/lib64 /afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/lib64 /lib64 /usr/lib64 /opt/psi/Programming/gcc/7.3.0/lib /afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.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/7.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/7.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/7.3.0/bin/../lib/gcc/x86_64-pc-linux-gnu/7.3.0 /afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/bin/../lib/gcc /opt/psi/Programming/gcc/7.3.0/lib64/../lib64 /opt/psi/Programming/gcc/7.3.0/lib/../lib64 /afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/bin/../lib/gcc/x86_64-pc-linux-gnu/7.3.0/../../../../lib64 /lib/../lib64 /usr/lib/../lib64 /opt/psi/Programming/gcc/7.3.0/lib64 /opt/psi/Programming/gcc/7.3.0/lib /afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/bin/../lib/gcc/x86_64-pc-linux-gnu/7.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/7.3.0/bin/../lib/gcc/x86_64-pc-linux-gnu/7.3.0/crtbeginS.o"
|
||||
postdep_objects="/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/bin/../lib/gcc/x86_64-pc-linux-gnu/7.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/7.3.0/bin/../lib/gcc/x86_64-pc-linux-gnu/7.3.0 -L/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/bin/../lib/gcc -L/opt/psi/Programming/gcc/7.3.0/lib64/../lib64 -L/opt/psi/Programming/gcc/7.3.0/lib/../lib64 -L/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/bin/../lib/gcc/x86_64-pc-linux-gnu/7.3.0/../../../../lib64 -L/lib/../lib64 -L/usr/lib/../lib64 -L/opt/psi/Programming/gcc/7.3.0/lib64 -L/opt/psi/Programming/gcc/7.3.0/lib -L/afs/psi.ch/sys/psi.x86_64_slp6/Programming/gcc/7.3.0/bin/../lib/gcc/x86_64-pc-linux-gnu/7.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/opt/gfa/python-3.7/latest/include/python3.7m -I/opt/gfa/python-3.7/latest/lib/python3.7/site-packages/numpy/core/include -I/opt/gfa/python-3.7/latest/include/qt -I/opt/gfa/python-3.7/latest/include/qt/QtCore -I/opt/gfa/python-3.7/latest/include/qt/QtXml -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 -L/opt/gfa/python-3.7/latest/lib -Wl,-rpath,/opt/gfa/python-3.7/latest/lib -L/opt/gfa/python-3.7/latest/lib -Wl,-rpath,/opt/gfa/python-3.7/latest/lib @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/7.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/7.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/opt/gfa/python-3.7/latest/include/python3.7m -I/opt/gfa/python-3.7/latest/lib/python3.7/site-packages/numpy/core/include -I/opt/gfa/python-3.7/latest/include/qt -I/opt/gfa/python-3.7/latest/include/qt/QtCore -I/opt/gfa/python-3.7/latest/include/qt/QtXml
|
||||
CXX = /opt/psi/Programming/gcc/7.3.0/bin/g++
|
||||
CXXCPP = /opt/psi/Programming/gcc/7.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 -L/opt/gfa/python-3.7/latest/lib -Wl,-rpath,/opt/gfa/python-3.7/latest/lib -L/opt/gfa/python-3.7/latest/lib -Wl,-rpath,/opt/gfa/python-3.7/latest/lib
|
||||
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 = -lQt5Xml -lpython3.7m
|
||||
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.13.0
|
||||
PACKAGE_STRING = CAFE 1.14.4
|
||||
PACKAGE_TARNAME = cafe
|
||||
PACKAGE_VERSION = 1.13.0
|
||||
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.13.0
|
||||
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/7.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-1.13.0/lib/SL6-x86_64
|
||||
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-1.13.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.
|
||||
|
||||
0
src/bitshuffle/.deps/.dirstamp
Normal file
0
src/bitshuffle/.deps/.dirstamp
Normal file
@@ -1 +1,116 @@
|
||||
# dummy
|
||||
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:
|
||||
|
||||
@@ -1 +1,123 @@
|
||||
# dummy
|
||||
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:
|
||||
|
||||
@@ -1 +1,68 @@
|
||||
# dummy
|
||||
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;
|
||||
|
||||
@@ -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
|
||||
|
||||
405
src/makefile
405
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
|
||||
@@ -41,10 +85,9 @@ host_triplet = x86_64-unknown-linux-gnu
|
||||
#am__append_1 = zbsCafeService.cpp zbsDataHolders.cpp \
|
||||
# bitshuffle/bitshuffle_core.c bitshuffle/bitshuffle.c bitshuffle/iochain.c
|
||||
|
||||
#am__append_2 = pycafe/PyCafe_sf.cpp
|
||||
am__append_3 = pycafe/PyCafe.cpp
|
||||
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 \
|
||||
@@ -77,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 =
|
||||
@@ -89,17 +138,12 @@ am__libcafe_la_SOURCES_DIST = cafe.cpp cafeCache.cpp cafeGroup.cpp \
|
||||
policyHelper.cpp conduitGroup.cpp connectGroup.cpp \
|
||||
transpose.cpp restorePVGroupXMLParser.cpp zbsCafeService.cpp \
|
||||
zbsDataHolders.cpp bitshuffle/bitshuffle_core.c \
|
||||
bitshuffle/bitshuffle.c bitshuffle/iochain.c \
|
||||
pycafe/PyCafe_sf.cpp pycafe/PyCafe.cpp
|
||||
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__objects_2 = \
|
||||
# pycafe/PyCafe_sf.lo
|
||||
am__objects_3 = \
|
||||
pycafe/PyCafe.lo
|
||||
am_libcafe_la_OBJECTS = cafe.lo cafeCache.lo cafeGroup.lo \
|
||||
cafeVectors.lo cafeXML.lo callbackHandlerCreate.lo \
|
||||
callbackHandlerMonitor.lo conduit.lo connect.lo \
|
||||
@@ -107,56 +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) \
|
||||
$(am__objects_3)
|
||||
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/opt/gfa/python-3.7/latest/include/python3.7m -I/opt/gfa/python-3.7/latest/lib/python3.7/site-packages/numpy/core/include -I/opt/gfa/python-3.7/latest/include/qt -I/opt/gfa/python-3.7/latest/include/qt/QtCore -I/opt/gfa/python-3.7/latest/include/qt/QtXml -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 -L/opt/gfa/python-3.7/latest/lib -Wl,-rpath,/opt/gfa/python-3.7/latest/lib -L/opt/gfa/python-3.7/latest/lib -Wl,-rpath,/opt/gfa/python-3.7/latest/lib
|
||||
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/7.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/7.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/opt/gfa/python-3.7/latest/include/python3.7m -I/opt/gfa/python-3.7/latest/lib/python3.7/site-packages/numpy/core/include -I/opt/gfa/python-3.7/latest/include/qt -I/opt/gfa/python-3.7/latest/include/qt/QtCore -I/opt/gfa/python-3.7/latest/include/qt/QtXml
|
||||
CXX = /opt/psi/Programming/gcc/7.3.0/bin/g++
|
||||
CXXCPP = /opt/psi/Programming/gcc/7.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
|
||||
@@ -168,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 -L/opt/gfa/python-3.7/latest/lib -Wl,-rpath,/opt/gfa/python-3.7/latest/lib -L/opt/gfa/python-3.7/latest/lib -Wl,-rpath,/opt/gfa/python-3.7/latest/lib
|
||||
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 = -lQt5Xml -lpython3.7m
|
||||
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
|
||||
@@ -198,29 +306,30 @@ OTOOL64 =
|
||||
PACKAGE = cafe
|
||||
PACKAGE_BUGREPORT = Bug reports to: jan.chrin@psi.ch
|
||||
PACKAGE_NAME = CAFE
|
||||
PACKAGE_STRING = CAFE 1.13.0
|
||||
PACKAGE_STRING = CAFE 1.14.4
|
||||
PACKAGE_TARNAME = cafe
|
||||
PACKAGE_VERSION = 1.13.0
|
||||
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.13.0
|
||||
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/7.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 =
|
||||
@@ -242,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-1.13.0/lib/SL6-x86_64
|
||||
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-1.13.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
|
||||
@@ -270,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 14:0:13
|
||||
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 \
|
||||
@@ -278,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) $(am__append_3)
|
||||
transpose.cpp restorePVGroupXMLParser.cpp $(am__append_1)
|
||||
all: all-am
|
||||
|
||||
.SUFFIXES:
|
||||
@@ -314,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 \
|
||||
@@ -324,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)"; \
|
||||
}
|
||||
@@ -339,12 +449,14 @@ 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
|
||||
@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)
|
||||
@@ -357,31 +469,14 @@ bitshuffle/bitshuffle.lo: bitshuffle/$(am__dirstamp) \
|
||||
bitshuffle/$(DEPDIR)/$(am__dirstamp)
|
||||
bitshuffle/iochain.lo: bitshuffle/$(am__dirstamp) \
|
||||
bitshuffle/$(DEPDIR)/$(am__dirstamp)
|
||||
pycafe/$(am__dirstamp):
|
||||
@$(MKDIR_P) pycafe
|
||||
@: > pycafe/$(am__dirstamp)
|
||||
pycafe/$(DEPDIR)/$(am__dirstamp):
|
||||
@$(MKDIR_P) pycafe/$(DEPDIR)
|
||||
@: > pycafe/$(DEPDIR)/$(am__dirstamp)
|
||||
pycafe/PyCafe_sf.lo: pycafe/$(am__dirstamp) \
|
||||
pycafe/$(DEPDIR)/$(am__dirstamp)
|
||||
pycafe/PyCafe.lo: pycafe/$(am__dirstamp) \
|
||||
pycafe/$(DEPDIR)/$(am__dirstamp)
|
||||
libcafe.la: $(libcafe_la_OBJECTS) $(libcafe_la_DEPENDENCIES)
|
||||
$(libcafe_la_LINK) -rpath $(libdir) $(libcafe_la_OBJECTS) $(libcafe_la_LIBADD) $(LIBS)
|
||||
|
||||
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/bitshuffle.$(OBJEXT)
|
||||
-rm -f bitshuffle/bitshuffle.lo
|
||||
-rm -f bitshuffle/bitshuffle_core.$(OBJEXT)
|
||||
-rm -f bitshuffle/bitshuffle_core.lo
|
||||
-rm -f bitshuffle/iochain.$(OBJEXT)
|
||||
-rm -f bitshuffle/iochain.lo
|
||||
-rm -f pycafe/PyCafe.$(OBJEXT)
|
||||
-rm -f pycafe/PyCafe.lo
|
||||
-rm -f pycafe/PyCafe_sf.$(OBJEXT)
|
||||
-rm -f pycafe/PyCafe_sf.lo
|
||||
-rm -f bitshuffle/*.$(OBJEXT)
|
||||
-rm -f bitshuffle/*.lo
|
||||
|
||||
distclean-compile:
|
||||
-rm -f *.tab.c
|
||||
@@ -413,56 +508,54 @@ include ./$(DEPDIR)/zbsDataHolders.Plo
|
||||
include bitshuffle/$(DEPDIR)/bitshuffle.Plo
|
||||
include bitshuffle/$(DEPDIR)/bitshuffle_core.Plo
|
||||
include bitshuffle/$(DEPDIR)/iochain.Plo
|
||||
include pycafe/$(DEPDIR)/PyCafe.Plo
|
||||
include pycafe/$(DEPDIR)/PyCafe_sf.Plo
|
||||
|
||||
.c.o:
|
||||
depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
|
||||
$(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
|
||||
# source='$<' object='$@' libtool=no \
|
||||
# $(AM_V_CC)source='$<' object='$@' libtool=no \
|
||||
# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \
|
||||
# $(COMPILE) -c -o $@ $<
|
||||
# $(AM_V_CC_no)$(COMPILE) -c -o $@ $<
|
||||
|
||||
.c.obj:
|
||||
depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\
|
||||
$(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
|
||||
# source='$<' object='$@' libtool=no \
|
||||
# $(AM_V_CC)source='$<' object='$@' libtool=no \
|
||||
# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \
|
||||
# $(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
|
||||
# $(AM_V_CC_no)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
|
||||
|
||||
.c.lo:
|
||||
depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\
|
||||
$(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
|
||||
# source='$<' object='$@' libtool=yes \
|
||||
# $(AM_V_CC)source='$<' object='$@' libtool=yes \
|
||||
# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \
|
||||
# $(LTCOMPILE) -c -o $@ $<
|
||||
# $(AM_V_CC_no)$(LTCOMPILE) -c -o $@ $<
|
||||
|
||||
.cpp.o:
|
||||
depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
|
||||
$(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
|
||||
# source='$<' object='$@' libtool=no \
|
||||
# $(AM_V_CXX)source='$<' object='$@' libtool=no \
|
||||
# DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) \
|
||||
# $(CXXCOMPILE) -c -o $@ $<
|
||||
# $(AM_V_CXX_no)$(CXXCOMPILE) -c -o $@ $<
|
||||
|
||||
.cpp.obj:
|
||||
depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\
|
||||
$(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
|
||||
# source='$<' object='$@' libtool=no \
|
||||
# $(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:
|
||||
depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\
|
||||
$(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
|
||||
# source='$<' object='$@' libtool=yes \
|
||||
# $(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
|
||||
@@ -470,28 +563,16 @@ mostlyclean-libtool:
|
||||
clean-libtool:
|
||||
-rm -rf .libs _libs
|
||||
-rm -rf bitshuffle/.libs bitshuffle/_libs
|
||||
-rm -rf pycafe/.libs pycafe/_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; \
|
||||
@@ -503,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
|
||||
@@ -520,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
|
||||
@@ -571,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:
|
||||
@@ -584,8 +681,6 @@ distclean-generic:
|
||||
-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)
|
||||
-rm -f pycafe/$(DEPDIR)/$(am__dirstamp)
|
||||
-rm -f pycafe/$(am__dirstamp)
|
||||
|
||||
maintainer-clean-generic:
|
||||
@echo "This command is intended for maintainers to use"
|
||||
@@ -596,7 +691,7 @@ clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
|
||||
mostlyclean-am
|
||||
|
||||
distclean: distclean-am
|
||||
-rm -rf ./$(DEPDIR) bitshuffle/$(DEPDIR) pycafe/$(DEPDIR)
|
||||
-rm -rf ./$(DEPDIR) bitshuffle/$(DEPDIR)
|
||||
-rm -f makefile
|
||||
distclean-am: clean-am distclean-compile distclean-generic \
|
||||
distclean-tags
|
||||
@@ -642,7 +737,7 @@ install-ps-am:
|
||||
installcheck-am:
|
||||
|
||||
maintainer-clean: maintainer-clean-am
|
||||
-rm -rf ./$(DEPDIR) bitshuffle/$(DEPDIR) pycafe/$(DEPDIR)
|
||||
-rm -rf ./$(DEPDIR) bitshuffle/$(DEPDIR)
|
||||
-rm -f makefile
|
||||
maintainer-clean-am: distclean-am maintainer-clean-generic
|
||||
|
||||
@@ -663,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,13 +12,13 @@ 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 14:0:13
|
||||
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_
|
||||
@@ -29,13 +29,14 @@ if HAVE_ZEROMQ_
|
||||
libcafe_la_SOURCES += zbsCafeService.cpp zbsDataHolders.cpp \
|
||||
bitshuffle/bitshuffle_core.c bitshuffle/bitshuffle.c bitshuffle/iochain.c
|
||||
|
||||
if HAVE_PYCAFE_EXT_
|
||||
libcafe_la_SOURCES += pycafe/PyCafe_sf.cpp
|
||||
endif
|
||||
else
|
||||
if HAVE_PYTHON_
|
||||
libcafe_la_SOURCES += pycafe/PyCafe.cpp
|
||||
endif
|
||||
#if HAVE_PYCAFE_EXT_
|
||||
#libcafe_la_SOURCES += PyCafe.cpp
|
||||
#endif
|
||||
#else
|
||||
#if HAVE_PYTHON_
|
||||
#libcafe_la_SOURCES += pycafe/PyCafe.cpp
|
||||
#endif
|
||||
|
||||
endif
|
||||
|
||||
AM_CPPFLAGS = @AM_CPPFLAGS@ @CAFE_CPPFLAGS@
|
||||
|
||||
@@ -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;
|
||||
|
||||
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
96985
src/pycafe/PyCafe.cpp
96985
src/pycafe/PyCafe.cpp
File diff suppressed because it is too large
Load Diff
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
85098
src/pycafe/PyCafe_sf.cpp
85098
src/pycafe/PyCafe_sf.cpp
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
@@ -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