mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-06-12 12:57:13 +02:00
solevd bug on trimbit retrieving
git-svn-id: file:///afs/psi.ch/project/sls_det_software/svn/slsDetectorSoftware@718 951219d9-93cf-4727-9268-0efd64621fa3
This commit is contained in:
@ -7,7 +7,8 @@ DFLAGS= -DDACS_INT -DTHIS_PATH='"$(shell pwd)"' -DSLS_RECEIVER_FUNCTION_LIST #$(
|
|||||||
|
|
||||||
INCLUDES?= -IcommonFiles -IslsDetector -IMySocketTCP -IusersFunctions -ImultiSlsDetector -IslsDetectorUtils -IslsDetectorCommand -IslsDetectorAnalysis -IslsReceiverInterface -IslsReceiver -I../slsDetectorCalibration -I$(ASM)
|
INCLUDES?= -IcommonFiles -IslsDetector -IMySocketTCP -IusersFunctions -ImultiSlsDetector -IslsDetectorUtils -IslsDetectorCommand -IslsDetectorAnalysis -IslsReceiverInterface -IslsReceiver -I../slsDetectorCalibration -I$(ASM)
|
||||||
|
|
||||||
#EPICSFLAGS=-D EPICS -I/usr/local/epics/base/include/ -I /usr/local/epics/base/include/os/Linux/ -L /usr/local/epics/base/lib/SL5-x86/ -Wl,-R/usr/local/epics/base/lib/SL5-x86 -lca -lCom
|
EPICSFLAGS=-D EPICS -I/usr/local/epics/base/include/ -I /usr/local/epics/base/include/os/Linux/ -L /usr/local/epics/base/lib/$(EPICS_HOST_ARCH) -Wl,-R/usr/local/epics/base/lib/$(EPICS_HOST_ARCH) -lca -lCom
|
||||||
|
|
||||||
CC=g++
|
CC=g++
|
||||||
|
|
||||||
|
|
||||||
|
@ -1,81 +1,87 @@
|
|||||||
INCLUDES= -IcommonFiles -IslsDetector -IMySocketTCP -IusersFunctions -ImultiSlsDetector -IslsDetectorUtils -IslsDetectorCommand -IslsDetectorAnalysis -If90Interface
|
CFLAGS= -DC_ONLY -fPIC
|
||||||
|
#FLAGS+= #-DVERBOSE -DVERYVERBOSE
|
||||||
|
|
||||||
|
DFLAGS= -DDACS_INT -DTHIS_PATH='"$(shell pwd)"' -DSLS_RECEIVER_FUNCTION_LIST
|
||||||
|
|
||||||
|
#ASM=$(shell echo "/lib/modules/`uname -r`/build/include")
|
||||||
|
|
||||||
|
INCLUDES?= -IcommonFiles -IslsDetector -IMySocketTCP -IusersFunctions -ImultiSlsDetector -IslsDetectorUtils -IslsDetectorCommand -IslsDetectorAnalysis -IslsReceiverInterface -IslsReceiver -I$(ASM)
|
||||||
|
|
||||||
EPICSFLAGS=-D EPICS -I/usr/local/epics/base/include/ -I /usr/local/epics/base/include/os/Linux/ -L /usr/local/epics/base/lib/SL5-x86/ -Wl,-R/usr/local/epics/base/lib/SL5-x86 -lca -lCom
|
EPICSFLAGS=-D EPICS -I/usr/local/epics/base/include/ -I /usr/local/epics/base/include/os/Linux/ -L /usr/local/epics/base/lib/SL5-x86/ -Wl,-R/usr/local/epics/base/lib/SL5-x86 -lca -lCom
|
||||||
|
CC=g++
|
||||||
CFLAGS= -DC_ONLY
|
|
||||||
FLAGS= $(EPICSFLAGS)
|
|
||||||
|
|
||||||
CC=gcc
|
|
||||||
CXX=g++
|
|
||||||
|
|
||||||
|
|
||||||
SRC_CLNT= slsDetectorAnalysis/fileIO.cpp MySocketTCP/MySocketTCP.cpp usersFunctions/usersFunctions.cpp slsDetector/slsDetectorUtils.cpp slsDetector/slsDetectorCommand.cpp slsDetectorAnalysis/angularConversion.cpp slsDetectorAnalysis/energyConversion.cpp slsDetector/slsDetectorActions.cpp slsDetectorAnalysis/postProcessing.cpp slsDetector/slsDetector.cpp multiSlsDetector/multiSlsDetector.cpp f90Interface/externPostProcessing.cpp
|
SRC_CLNT= slsDetectorAnalysis/fileIO.cpp MySocketTCP/MySocketTCP.cpp usersFunctions/usersFunctions.cpp slsDetector/slsDetectorUtils.cpp slsDetector/slsDetectorCommand.cpp slsDetectorAnalysis/angularConversion.cpp slsDetectorAnalysis/angularConversionStatic.cpp slsDetectorAnalysis/energyConversion.cpp slsDetector/slsDetectorActions.cpp slsDetectorAnalysis/postProcessing.cpp slsDetector/slsDetector.cpp multiSlsDetector/multiSlsDetector.cpp slsDetector/slsDetectorUsers.cpp slsDetectorAnalysis/postProcessingFuncs.cpp slsReceiverInterface/receiverInterface.cpp slsReceiver/slsReceiverFunctionList.cpp slsReceiver/slsReceiver_funcs.cpp slsReceiver/slsReceiverUsers.cpp
|
||||||
|
|
||||||
OBJS = $(SRC_CLNT:.cpp=.o)
|
OBJS = $(SRC_CLNT:.cpp=.o)
|
||||||
|
|
||||||
HEADERS = $(SRC_CLNT:.cpp=.h) commonFiles/sls_detector_defs.h slsDetectorAnalysis/detectorData.h slsDetector/slsDetectorBase.h slsDetector/slsDetectorUsers.h multiSlsDetector/multiSlsDetectorCommand.h
|
HEADERS = $(SRC_CLNT:.cpp=.h) commonFiles/sls_detector_defs.h slsDetectorAnalysis/detectorData.h slsDetector/slsDetectorBase.h multiSlsDetector/multiSlsDetectorCommand.h slsDetectorAnalysis/enCalLogClass.h slsDetectorAnalysis/angCalLogClass.h slsDetectorAnalysis/angleConversionConstant.h usersFunctions/angleFunction.h slsReceiverInterface/receiverInterface.h slsDetector/svnInfoLib.h slsReceiver/circularFifo.h slsReceiver/slsReceiver_funcs.h slsReceiver/svnInfoReceiverTmp.h slsReceiver/receiver_defs.h slsReceiver/slsReceiverFunctionList.h slsReceiver/slsReceiverUsers.h slsReceiver/svnInfoReceiver.h
|
||||||
|
|
||||||
|
|
||||||
LGF=/usr/lib/gcc/i386-redhat-linux/4.1.2
|
|
||||||
GCC=/usr/bin//gcc
|
|
||||||
FF=/opt/intel/intel-10.1/fc-10.1/bin/ifort
|
|
||||||
|
|
||||||
SRC_F = f90Interface/sls_detector_analysis_f.f90
|
DESTDIR ?= bin
|
||||||
|
DOCDIR ?= docs
|
||||||
|
|
||||||
OBJS_F = f90Interface/sls_detector_analysis_f.o
|
|
||||||
|
|
||||||
|
|
||||||
SRC_MYTHEN_SVC = mythenDetectorServer/server.c mythenDetectorServer/server_funcs.c mythenDetectorServer/communication_funcs.c mythenDetectorServer/firmware_funcs.c mythenDetectorServer/mcb_funcs.c mythenDetectorServer/trimming_funcs.c
|
|
||||||
|
|
||||||
all: package $(SRC_CLNT)
|
all: package $(SRC_CLNT)
|
||||||
echo "compiling all"
|
echo "compiling all"
|
||||||
|
|
||||||
doc: $(SRC_H) $(SRC_CLNT)
|
intdoc: $(SRC_H) $(SRC_CLNT)
|
||||||
doxygen doxy.config
|
doxygen doxy.config
|
||||||
|
|
||||||
|
doc: $(DOCDIR)/pdf/slsDetectorUsersDocs.pdf
|
||||||
|
|
||||||
|
$(DOCDIR)/pdf/slsDetectorUsersDocs.pdf: slsDetectorUsersDocs
|
||||||
|
cd slsDetectorUsersDocs/latex && make
|
||||||
|
$(shell test -d $(DOCDIR) || mkdir -p $(DOCDIR))
|
||||||
|
$(shell test -d $(DOCDIR)/pdf || mkdir -p $(DOCDIR)/pdf)
|
||||||
|
cp slsDetectorUsersDocs/latex/refman.pdf $(DOCDIR)/pdf/slsDetectorUsersDocs.pdf
|
||||||
|
|
||||||
|
|
||||||
mythenServer: $(SRC_MYTHEN_SVC)
|
htmldoc: $(DOCDIR)/html/slsDetectorUsersDocs
|
||||||
$(CC) $(SRC_MYTHEN_SVC) $(CFLAGS) $(FLAGS) $(INCLUDES) -ImythenDetectorServer -DVIRTUAL -lm -D MCB_FUNCS -DC_ONLY -DVERBOSE
|
|
||||||
mv a.out mythenServer
|
$(DOCDIR)/html/slsDetectorUsersDocs: slsDetectorUsersDocs
|
||||||
|
$(shell test -d $(DOCDIR) || mkdir -p $(DOCDIR))
|
||||||
|
$(shell test -d $(DOCDIR)/html || mkdir -p $(DOCDIR)/html)
|
||||||
|
$(shell test -d $(DOCDIR)/html/slsDetectorUsersDocs && rm -r $(DOCDIR)/html/slsDetectorUsersDocs)
|
||||||
|
cp -r slsDetectorUsersDocs/html $(DOCDIR)/html/slsDetectorUsersDocs
|
||||||
|
|
||||||
|
slsDetectorUsersDocs: slsDetectorUsers.doxy slsDetector/slsDetectorUsers.h slsDetector/slsDetectorUsers.cpp slsDetectorAnalysis/detectorData.h
|
||||||
|
doxygen slsDetectorUsers.doxy
|
||||||
|
|
||||||
|
|
||||||
picassoServer: $(SRC_MYTHEN_SVC)
|
mythenVirtualServer: $(SRC_MYTHEN_SVC)
|
||||||
$(CC) $(SRC_MYTHEN_SVC) $(CFLAGS) $(FLAGS) $(INCLUDES) -ImythenDetectorServer -D VIRTUAL -lm -DMCB_FUNCS -DPICASSOD -DC_ONLY
|
cd mythenDetectorServer && make -f Makefile.virtual DESTDIR=$(DESTDIR)
|
||||||
mv a.out picassoServer
|
|
||||||
|
gotthardVirtualServer: $(SRC_MYTHEN_SVC)
|
||||||
|
cd gotthardDetectorServer && make -f Makefile.virtual DESTDIR=$(DESTDIR)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
%.o : %.cpp %.h Makefile
|
||||||
|
$(CXX) -Wall -o $@ -c $< $(INCLUDES) $(DFLAGS) $(FLAGS) -fPIC $(EPICSFLAGS) -L/usr/lib64/
|
||||||
|
|
||||||
%.o : %.cpp %.h
|
package: $(OBJS) $(DESTDIR)/libSlsDetector.so $(DESTDIR)/libSlsDetector.a
|
||||||
$(CXX) -Wall -o $@ -c $< $(INCLUDES) $(FLAGS) $(EPICSFLAGS)
|
|
||||||
|
|
||||||
|
$(DESTDIR)/libSlsDetector.so: $(OBJS)
|
||||||
|
$(CXX) -shared -Wl,-soname,libSlsDetector.so -o libSlsDetector.so $(OBJS) -lc $(INCLUDES) $(DFLAGS) $(FLAGS) $(EPICSFLAGS) -L/usr/lib64/
|
||||||
|
$(shell test -d $(DESTDIR) || mkdir -p $(DESTDIR))
|
||||||
|
mv libSlsDetector.so $(DESTDIR)
|
||||||
|
|
||||||
$(OBJS_F) : $(SRC_F)
|
$(DESTDIR)/libSlsDetector.a: $(OBJS)
|
||||||
$(FF) -c $(SRC_F)
|
ar rcs libSlsDetector.a $(OBJS)
|
||||||
|
mv libSlsDetector.a $(DESTDIR)
|
||||||
package: $(OBJS) $(OBJS_F)
|
|
||||||
$(CXX) -shared -Wl,-soname,libSlsDetector.so -o libSlsDetector.so $(OBJS) $(OBJS_F) -lc $(INCLUDES) $(FLAGS) $(EPICSFLAGS)
|
|
||||||
ar rcs libSlsDetector.a $(OBJS) $(OBJS_F)
|
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -rf libSlsDetector.a libSlsDetector.so core docs/* $(OBJS) $(OBJS_F)
|
rm -rf libSlsDetector.a libSlsDetector.so core docs/* slsDetectorUsersDocs $(OBJS)
|
||||||
|
|
||||||
|
|
||||||
#-------------------------------------------------------------------------------
|
#-------------------------------------------------------------------------------
|
||||||
lib: package
|
|
||||||
|
|
||||||
|
install: package
|
||||||
# added install target, HBl
|
|
||||||
install_lib: lib
|
|
||||||
$(shell test -d $(DESTDIR) || mkdir -p $(DESTDIR))
|
|
||||||
cp -P libSlsDetector.so.1.0.1 libSlsDetector.so libSlsDetector.so.1 $(DESTDIR)
|
|
||||||
|
|
||||||
install_inc:
|
install_inc:
|
||||||
$(shell test -d $(DESTDIR) || mkdir -p $(DESTDIR))
|
$(shell test -d $(DESTDIR) || mkdir -p $(DESTDIR))
|
||||||
cp -P $(HEADERS) $(DESTDIR)
|
cp -P slsDetector/slsDetectorUsers.h slsDetectorAnalysis/detectorData.h $(DESTDIR) slsReceiver/slsReceiverUsers.h
|
||||||
|
|
||||||
|
|
||||||
install_doc:
|
|
||||||
$(shell test -d $(DESTDIR) || mkdir -p $(DESTDIR))
|
|
||||||
cp -Pr docs/* $(DESTDIR)
|
|
||||||
|
@ -2,10 +2,10 @@
|
|||||||
#define SVNURL "file:///afs/psi.ch/project/sls_det_software/svn/slsDetectorSoftware/gotthardDetectorServer"
|
#define SVNURL "file:///afs/psi.ch/project/sls_det_software/svn/slsDetectorSoftware/gotthardDetectorServer"
|
||||||
//#define SVNREPPATH ""
|
//#define SVNREPPATH ""
|
||||||
#define SVNREPUUID "951219d9-93cf-4727-9268-0efd64621fa3"
|
#define SVNREPUUID "951219d9-93cf-4727-9268-0efd64621fa3"
|
||||||
//#define SVNREV 0x676
|
//#define SVNREV 0x692
|
||||||
//#define SVNKIND ""
|
//#define SVNKIND ""
|
||||||
//#define SVNSCHED ""
|
//#define SVNSCHED ""
|
||||||
#define SVNAUTH "l_maliakal_d"
|
#define SVNAUTH "l_maliakal_d"
|
||||||
#define SVNREV 0x676
|
#define SVNREV 0x692
|
||||||
#define SVNDATE 0x20131002
|
#define SVNDATE 0x20131114
|
||||||
//
|
//
|
||||||
|
@ -2,10 +2,10 @@
|
|||||||
#define SVNURL "file:///afs/psi.ch/project/sls_det_software/svn/slsDetectorSoftware/moenchDetectorServer"
|
#define SVNURL "file:///afs/psi.ch/project/sls_det_software/svn/slsDetectorSoftware/moenchDetectorServer"
|
||||||
//#define SVNREPPATH ""
|
//#define SVNREPPATH ""
|
||||||
#define SVNREPUUID "951219d9-93cf-4727-9268-0efd64621fa3"
|
#define SVNREPUUID "951219d9-93cf-4727-9268-0efd64621fa3"
|
||||||
//#define SVNREV 0x673
|
//#define SVNREV 0x712
|
||||||
//#define SVNKIND ""
|
//#define SVNKIND ""
|
||||||
//#define SVNSCHED ""
|
//#define SVNSCHED ""
|
||||||
#define SVNAUTH "bergamaschi"
|
#define SVNAUTH "l_maliakal_d"
|
||||||
#define SVNREV 0x673
|
#define SVNREV 0x712
|
||||||
#define SVNDATE 0x20130918
|
#define SVNDATE 0x20140110
|
||||||
//
|
//
|
||||||
|
@ -1137,12 +1137,16 @@ int multiSlsDetector::getChanRegs(double* retval,bool fromDetector){
|
|||||||
|
|
||||||
for (int idet=0; idet<thisMultiDetector->numberOfDetectors; idet++) {
|
for (int idet=0; idet<thisMultiDetector->numberOfDetectors; idet++) {
|
||||||
if (detectors[idet]) {
|
if (detectors[idet]) {
|
||||||
|
// cout << "det " << idet << endl;
|
||||||
nChansDet = detectors[idet]->getChanRegs(retval1,fromDetector);
|
nChansDet = detectors[idet]->getChanRegs(retval1,fromDetector);
|
||||||
|
// cout << "returned" << endl;
|
||||||
if(detectors[idet]->getErrorMask())
|
if(detectors[idet]->getErrorMask())
|
||||||
setErrorMask(getErrorMask()|(1<<idet));
|
setErrorMask(getErrorMask()|(1<<idet));
|
||||||
|
// cout << "memcopy "<< currentNumChans << " " << nChansDet << "(" << n << ")" << endl;
|
||||||
|
|
||||||
memcpy(retval + (currentNumChans * sizeof(double)), retval1 , nChansDet*sizeof(double));
|
memcpy(retval + (currentNumChans), retval1 , nChansDet*sizeof(double));
|
||||||
currentNumChans += nChansDet;
|
currentNumChans += nChansDet;
|
||||||
|
// cout << "Done" << endl;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return n;
|
return n;
|
||||||
|
@ -2,10 +2,10 @@
|
|||||||
#define SVNURL "file:///afs/psi.ch/project/sls_det_software/svn/slsDetectorSoftware/mythenDetectorServer"
|
#define SVNURL "file:///afs/psi.ch/project/sls_det_software/svn/slsDetectorSoftware/mythenDetectorServer"
|
||||||
//#define SVNREPPATH ""
|
//#define SVNREPPATH ""
|
||||||
#define SVNREPUUID "951219d9-93cf-4727-9268-0efd64621fa3"
|
#define SVNREPUUID "951219d9-93cf-4727-9268-0efd64621fa3"
|
||||||
//#define SVNREV 0x660
|
//#define SVNREV 0x716
|
||||||
//#define SVNKIND ""
|
//#define SVNKIND ""
|
||||||
//#define SVNSCHED ""
|
//#define SVNSCHED ""
|
||||||
#define SVNAUTH "l_maliakal_d"
|
#define SVNAUTH "bergamaschi"
|
||||||
#define SVNREV 0x660
|
#define SVNREV 0x716
|
||||||
#define SVNDATE 0x20130904
|
#define SVNDATE 0x20140117
|
||||||
//
|
//
|
||||||
|
@ -2,10 +2,10 @@
|
|||||||
#define SVNURLLIB "file:///afs/psi.ch/project/sls_det_software/svn/slsDetectorSoftware"
|
#define SVNURLLIB "file:///afs/psi.ch/project/sls_det_software/svn/slsDetectorSoftware"
|
||||||
//#define SVNREPPATH ""
|
//#define SVNREPPATH ""
|
||||||
#define SVNREPUUIDLIB "951219d9-93cf-4727-9268-0efd64621fa3"
|
#define SVNREPUUIDLIB "951219d9-93cf-4727-9268-0efd64621fa3"
|
||||||
//#define SVNREV 0x691
|
//#define SVNREV 0x717
|
||||||
//#define SVNKIND ""
|
//#define SVNKIND ""
|
||||||
//#define SVNSCHED ""
|
//#define SVNSCHED ""
|
||||||
#define SVNAUTHLIB "l_maliakal_d"
|
#define SVNAUTHLIB "bergamaschi"
|
||||||
#define SVNREVLIB 0x691
|
#define SVNREVLIB 0x717
|
||||||
#define SVNDATELIB 0x20131114
|
#define SVNDATELIB 0x20140117
|
||||||
//
|
//
|
||||||
|
@ -2,10 +2,10 @@
|
|||||||
#define SVNURL "file:///afs/psi.ch/project/sls_det_software/svn/slsDetectorSoftware/slsReceiver"
|
#define SVNURL "file:///afs/psi.ch/project/sls_det_software/svn/slsDetectorSoftware/slsReceiver"
|
||||||
//#define SVNREPPATH ""
|
//#define SVNREPPATH ""
|
||||||
#define SVNREPUUID "951219d9-93cf-4727-9268-0efd64621fa3"
|
#define SVNREPUUID "951219d9-93cf-4727-9268-0efd64621fa3"
|
||||||
//#define SVNREV 0x685
|
//#define SVNREV 0x715
|
||||||
//#define SVNKIND ""
|
//#define SVNKIND ""
|
||||||
//#define SVNSCHED ""
|
//#define SVNSCHED ""
|
||||||
#define SVNAUTH "l_maliakal_d"
|
#define SVNAUTH "l_maliakal_d"
|
||||||
#define SVNREV 0x685
|
#define SVNREV 0x715
|
||||||
#define SVNDATE 0x20131114
|
#define SVNDATE 0x20140116
|
||||||
//
|
//
|
||||||
|
@ -270,36 +270,47 @@ int defaultConnectChannels(void *) {
|
|||||||
/* status code */
|
/* status code */
|
||||||
int status;
|
int status;
|
||||||
|
|
||||||
|
#ifdef VERBOSE
|
||||||
printf("starting...\n");
|
printf("starting...\n");
|
||||||
|
#endif
|
||||||
|
|
||||||
/* init channel access context before any caget/put */
|
/* init channel access context before any caget/put */
|
||||||
ca_context_create(ca_enable_preemptive_callback);
|
ca_context_create(ca_enable_preemptive_callback);
|
||||||
|
#ifdef VERBOSE
|
||||||
printf("context created\n");
|
printf("context created\n");
|
||||||
|
#endif
|
||||||
//"caputq X04SA-ES2-TH2:RO p"
|
//"caputq X04SA-ES2-TH2:RO p"
|
||||||
|
|
||||||
//"ca_get X04SA-ES2-SC:CH6"
|
//"ca_get X04SA-ES2-SC:CH6"
|
||||||
|
|
||||||
/* open the channel by name and return ch_id */
|
/* open the channel by name and return ch_id */
|
||||||
status = connect_channel("X04SA-ES2-SC:CH6", &ch_i0);
|
status = connect_channel("X04SA-ES2-SC:CH6", &ch_i0);
|
||||||
if (status == ECA_NORMAL)
|
if (status == ECA_NORMAL) {
|
||||||
|
#ifdef VERBOSE
|
||||||
printf("I0 channel connected \n");
|
printf("I0 channel connected \n");
|
||||||
else {
|
#endif
|
||||||
|
;
|
||||||
|
} else {
|
||||||
printf(ca_message(status));
|
printf(ca_message(status));
|
||||||
//ch_i0=-1;;
|
//ch_i0=-1;;
|
||||||
}
|
}
|
||||||
status = connect_channel("X04SA-ES2-TH2:RO", &ch_pos);
|
status = connect_channel("X04SA-ES2-TH2:RO", &ch_pos);
|
||||||
if (status == ECA_NORMAL)
|
if (status == ECA_NORMAL) {
|
||||||
|
#ifdef VERBOSE
|
||||||
printf("Detector position channel connected \n");
|
printf("Detector position channel connected \n");
|
||||||
else {
|
#endif
|
||||||
|
;
|
||||||
|
} else {
|
||||||
printf(ca_message(status));
|
printf(ca_message(status));
|
||||||
//ch_i0=-1;;
|
//ch_i0=-1;;
|
||||||
}
|
}
|
||||||
status = connect_channel("X04SA-ES2-TH2:RO.RBV", &ch_getpos);
|
status = connect_channel("X04SA-ES2-TH2:RO.RBV", &ch_getpos);
|
||||||
if (status == ECA_NORMAL)
|
if (status == ECA_NORMAL) {
|
||||||
|
#ifdef VERBOSE
|
||||||
printf("Detector get position channel connected \n");
|
printf("Detector get position channel connected \n");
|
||||||
else {
|
#endif
|
||||||
|
;
|
||||||
|
} else {
|
||||||
printf(ca_message(status));
|
printf(ca_message(status));
|
||||||
//ch_getpos=-1;;
|
//ch_getpos=-1;;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user