updated google test install procedure
This commit is contained in:
9
README
9
README
@@ -16,8 +16,9 @@ g++ -g -O3 -I${GTEST_DIR}/include -I${GTEST_DIR} -c ${GTEST_DIR}/src/gtest-all.c
|
||||
g++ -g -O3 -I${GTEST_DIR}/include -I${GTEST_DIR} -c ${GTEST_DIR}/src/gtest_main.cc
|
||||
ar -rv libgtest_main.a gtest_main.o gtest-all.o
|
||||
|
||||
mkdir -p $EPICS_HOME/gtest/lib
|
||||
cp -r ${GTEST_DIR}/include $EPICS_HOME/gtest
|
||||
cp libgtest_main.a $EPICS_HOME/gtest/lib
|
||||
# INSTALL is where you put build artifacts
|
||||
|
||||
mkdir -p $INSTALL/gtest/lib/$EPICS_HOST_ARCH
|
||||
cp -r ${GTEST_DIR}/include $INSTALL/gtest
|
||||
cp libgtest_main.a $INSTALL/gtest/lib/$EPICS_HOST_ARCH
|
||||
|
||||
(you can use cmake, see gtest README)
|
||||
|
||||
@@ -89,4 +89,13 @@ LIBRARY = pvAccess
|
||||
pvAccess_LIBS += Com
|
||||
pvAccess_LIBS += pvData
|
||||
|
||||
SRC_DIRS += $(PVACCESS)/mb
|
||||
INC += mb.h
|
||||
LIBSRCS += mb.cpp
|
||||
|
||||
PROD_HOST += mb_stat
|
||||
mb_stat_SRCS += mb_test.cpp
|
||||
mb_stat_LIBS += pvAccess pvData Com
|
||||
|
||||
|
||||
include $(TOP)/configure/RULES
|
||||
|
||||
@@ -31,6 +31,9 @@
|
||||
#include <pv/serializationHelper.h>
|
||||
#include <pv/convert.h>
|
||||
|
||||
#include <pv/mb.h>
|
||||
MB_DECLARE(channelGet, 100000);
|
||||
|
||||
//#include <tr1/unordered_map>
|
||||
|
||||
using std::tr1::dynamic_pointer_cast;
|
||||
@@ -542,6 +545,10 @@ namespace epics {
|
||||
|
||||
virtual void send(ByteBuffer* buffer, TransportSendControl* control) {
|
||||
int32 pendingRequest = getPendingRequest();
|
||||
bool initStage = (pendingRequest & QOS_INIT);
|
||||
|
||||
MB_POINT_CONDITIONAL(channelGet, 1, !initStage);
|
||||
|
||||
if (pendingRequest < 0)
|
||||
{
|
||||
BaseRequestImpl::send(buffer, control);
|
||||
@@ -553,12 +560,14 @@ namespace epics {
|
||||
buffer->putInt(m_ioid);
|
||||
buffer->putByte((int8)m_pendingRequest);
|
||||
|
||||
if (pendingRequest & QOS_INIT)
|
||||
if (initStage)
|
||||
{
|
||||
// pvRequest
|
||||
SerializationHelper::serializePVRequest(buffer, control, m_pvRequest);
|
||||
}
|
||||
|
||||
MB_POINT_CONDITIONAL(channelGet, 2, !initStage);
|
||||
|
||||
stopRequest();
|
||||
}
|
||||
|
||||
@@ -591,6 +600,9 @@ namespace epics {
|
||||
}
|
||||
|
||||
virtual bool normalResponse(Transport::shared_pointer const & transport, int8 /*version*/, ByteBuffer* payloadBuffer, int8 /*qos*/, const Status& status) {
|
||||
|
||||
MB_POINT(channelGet, 8);
|
||||
|
||||
if (!status.isSuccess())
|
||||
{
|
||||
EXCEPTION_GUARD(m_channelGetRequester->getDone(status));
|
||||
@@ -604,6 +616,8 @@ namespace epics {
|
||||
m_structure->deserialize(payloadBuffer, transport.get(), m_bitSet.get());
|
||||
}
|
||||
|
||||
MB_POINT(channelGet, 9);
|
||||
|
||||
EXCEPTION_GUARD(m_channelGetRequester->getDone(status));
|
||||
return true;
|
||||
}
|
||||
@@ -611,6 +625,9 @@ namespace epics {
|
||||
virtual void get(bool lastRequest) {
|
||||
|
||||
{
|
||||
MB_INC_AUTO_ID(channelGet);
|
||||
MB_POINT(channelGet, 0);
|
||||
|
||||
Lock guard(m_mutex);
|
||||
if (m_destroyed) {
|
||||
EXCEPTION_GUARD(m_channelGetRequester->getDone(destroyedStatus));
|
||||
@@ -3955,6 +3972,7 @@ namespace epics {
|
||||
m_contextState(CONTEXT_NOT_INITIALIZED),
|
||||
m_configuration(new SystemConfigurationImpl())
|
||||
{
|
||||
MB_INIT;
|
||||
PVACCESS_REFCOUNT_MONITOR_CONSTRUCT(remoteClientContext);
|
||||
loadConfiguration();
|
||||
}
|
||||
|
||||
@@ -16,6 +16,9 @@
|
||||
|
||||
#include <sstream>
|
||||
|
||||
#include <pv/mb.h>
|
||||
MB_DECLARE(channelGetServer, 100000);
|
||||
|
||||
using std::ostringstream;
|
||||
using std::hex;
|
||||
|
||||
@@ -45,8 +48,9 @@ void ServerBadResponse::handleResponse(osiSockAddr* responseFrom,
|
||||
|
||||
ServerResponseHandler::ServerResponseHandler(ServerContextImpl::shared_pointer const & context)
|
||||
{
|
||||
MB_INIT;
|
||||
|
||||
ResponseHandler::shared_pointer badResponse(new ServerBadResponse(context));
|
||||
|
||||
m_handlerTable.resize(CMD_RPC+1);
|
||||
|
||||
m_handlerTable[CMD_BEACON].reset(new ServerNoopResponse(context, "Beacon")); /* 0 */
|
||||
@@ -554,6 +558,9 @@ void ServerGetHandler::handleResponse(osiSockAddr* responseFrom,
|
||||
}
|
||||
else
|
||||
{
|
||||
MB_INC_AUTO_ID(channelGetServer);
|
||||
MB_POINT(channelGetServer, 3);
|
||||
|
||||
const bool lastRequest = (QOS_DESTROY & qosCode) != 0;
|
||||
|
||||
ServerChannelGetRequesterImpl::shared_pointer request = static_pointer_cast<ServerChannelGetRequesterImpl>(channel->getRequest(ioid));
|
||||
@@ -569,6 +576,8 @@ void ServerGetHandler::handleResponse(osiSockAddr* responseFrom,
|
||||
return;
|
||||
}
|
||||
|
||||
MB_POINT(channelGetServer, 4);
|
||||
|
||||
request->getChannelGet()->get(lastRequest);
|
||||
}
|
||||
}
|
||||
@@ -632,6 +641,7 @@ void ServerChannelGetRequesterImpl::channelGetConnect(const Status& status, Chan
|
||||
|
||||
void ServerChannelGetRequesterImpl::getDone(const Status& status)
|
||||
{
|
||||
MB_POINT(channelGetServer, 5);
|
||||
{
|
||||
Lock guard(_mutex);
|
||||
_status = status;
|
||||
@@ -691,11 +701,15 @@ void ServerChannelGetRequesterImpl::send(ByteBuffer* buffer, TransportSendContro
|
||||
}
|
||||
else
|
||||
{
|
||||
MB_POINT(channelGetServer, 6);
|
||||
{
|
||||
// we locked _mutex above, so _channelGet is valid
|
||||
ScopedLock lock(_channelGet);
|
||||
|
||||
_bitSet->serialize(buffer, control);
|
||||
_pvStructure->serialize(buffer, control, _bitSet.get());
|
||||
}
|
||||
MB_POINT(channelGetServer, 7);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -606,10 +606,16 @@ void formatNTImage(std::ostream& /*o*/, PVStructurePtr const & pvStruct)
|
||||
fprintf(gnuplotPipe, "unset xtics\n");
|
||||
fprintf(gnuplotPipe, "unset ytics\n");
|
||||
|
||||
fprintf(gnuplotPipe, "set size ratio 1\n");
|
||||
fprintf(gnuplotPipe, "set xrange [0:%u]\n", cols-1);
|
||||
fprintf(gnuplotPipe, "set yrange [0:%u]\n", rows-1);
|
||||
|
||||
fprintf(gnuplotPipe, "set size ratio 1\n");
|
||||
/*
|
||||
fprintf(gnuplotPipe, "set lmargin at screen 0\n");
|
||||
fprintf(gnuplotPipe, "set bmargin at screen 0\n");
|
||||
fprintf(gnuplotPipe, "set rmargin at screen 0.99999\n");
|
||||
fprintf(gnuplotPipe, "set tmargin at screen 0.99999\n");
|
||||
*/
|
||||
fprintf(gnuplotPipe, "set palette grey\n");
|
||||
fprintf(gnuplotPipe, "set cbrange [0:255]\n");
|
||||
|
||||
|
||||
Reference in New Issue
Block a user