diff --git a/pvDataApp/factory/Compare.cpp b/pvDataApp/factory/Compare.cpp index 7fa63b5..dcc654d 100644 --- a/pvDataApp/factory/Compare.cpp +++ b/pvDataApp/factory/Compare.cpp @@ -7,6 +7,13 @@ namespace epics { namespace pvData { +// PVXXX object comparison + +bool operator==(PVField& left, PVField& right) +{ + return getConvert()->equals(left,right); +} + // Introspection object comparision /** Field equality conditions: diff --git a/pvDataApp/factory/Convert.cpp b/pvDataApp/factory/Convert.cpp index 621ce4a..0a96da4 100644 --- a/pvDataApp/factory/Convert.cpp +++ b/pvDataApp/factory/Convert.cpp @@ -109,9 +109,9 @@ void Convert::getFullName(StringBuilder buf,PVField * pvField) } } -bool Convert::equals(PVField *a,PVField *b) +bool Convert::equals(PVField &a,PVField &b) { - return convertEquals(a,b); + return convertEquals(&a,&b); } void Convert::getString(StringBuilder buf,PVField * pvField,int indentLevel) diff --git a/pvDataApp/factory/DefaultPVStructureArray.cpp b/pvDataApp/factory/DefaultPVStructureArray.cpp index d2533ac..ebf2719 100644 --- a/pvDataApp/factory/DefaultPVStructureArray.cpp +++ b/pvDataApp/factory/DefaultPVStructureArray.cpp @@ -248,14 +248,4 @@ namespace epics { namespace pvData { } } - bool BasePVStructureArray::operator==(PVField &pvField) - { - return getConvert()->equals(this,&pvField); - } - - bool BasePVStructureArray::operator!=(PVField &pvField) - { - return !(getConvert()->equals(this,&pvField)); - } - }} diff --git a/pvDataApp/factory/DefaultPVStructureArray.h b/pvDataApp/factory/DefaultPVStructureArray.h index e38425c..683201b 100644 --- a/pvDataApp/factory/DefaultPVStructureArray.h +++ b/pvDataApp/factory/DefaultPVStructureArray.h @@ -31,8 +31,6 @@ namespace epics { namespace pvData { StructureArrayData *data); virtual int put(int offset,int length, PVStructurePtrArray from, int fromOffset); - virtual bool operator==(PVField &pv); - virtual bool operator!=(PVField &pv); virtual void shareData( PVStructurePtrArray value,int capacity,int length); virtual void serialize(ByteBuffer *pbuffer, SerializableControl *pflusher) const; diff --git a/pvDataApp/factory/PVDataCreateFactory.cpp b/pvDataApp/factory/PVDataCreateFactory.cpp index 91978fe..1f8af9c 100644 --- a/pvDataApp/factory/PVDataCreateFactory.cpp +++ b/pvDataApp/factory/PVDataCreateFactory.cpp @@ -42,8 +42,6 @@ public: SerializableControl *pflusher) const; virtual void deserialize(ByteBuffer *pbuffer, DeserializableControl *pflusher); - virtual bool operator==(PVField& pv) ; - virtual bool operator!=(PVField& pv) ; private: T value; }; @@ -78,18 +76,6 @@ void BasePVScalar::deserialize(ByteBuffer *pbuffer, value = pbuffer->get(); } -template -bool BasePVScalar::operator==(PVField& pvField) -{ - return getConvert()->equals(this, &pvField); -} - -template -bool BasePVScalar::operator!=(PVField& pvField) -{ - return !(getConvert()->equals(this, &pvField)); -} - typedef BasePVScalar BasePVBoolean; typedef BasePVScalar BasePVByte; typedef BasePVScalar BasePVShort; @@ -115,8 +101,6 @@ public: DeserializableControl *pflusher); virtual void serialize(ByteBuffer *pbuffer, SerializableControl *pflusher, int offset, int count) const; - virtual bool operator==(PVField& pv) ; - virtual bool operator!=(PVField& pv) ; private: String value; }; @@ -160,22 +144,6 @@ void BasePVString::serialize(ByteBuffer *pbuffer, SerializeHelper::serializeSubstring(value, offset, count, pbuffer, pflusher); } -bool BasePVString::operator==(PVField& pvField) -{ - return getConvert()->equals(this, &pvField); -} - -bool BasePVString::operator!=(PVField& pvField) -{ - return !(getConvert()->equals(this, &pvField)); -} - - - - - - - /** Default storage for arrays */ template @@ -197,8 +165,6 @@ public: virtual void deserialize(ByteBuffer *pbuffer,DeserializableControl *pflusher); virtual void serialize(ByteBuffer *pbuffer, SerializableControl *pflusher, int offset, int count) const; - virtual bool operator==(PVField& pv) ; - virtual bool operator!=(PVField& pv) ; private: pointer value; }; @@ -346,18 +312,6 @@ void DefaultPVArray::serialize(ByteBuffer *pbuffer, } } -template -bool DefaultPVArray::operator==(PVField& pv) -{ - return getConvert()->equals(this, &pv); -} - -template -bool DefaultPVArray::operator!=(PVField& pv) -{ - return !(getConvert()->equals(this, &pv)); -} - // specializations for String template<> diff --git a/pvDataApp/factory/PVStructure.cpp b/pvDataApp/factory/PVStructure.cpp index 9f466ed..bc8872d 100644 --- a/pvDataApp/factory/PVStructure.cpp +++ b/pvDataApp/factory/PVStructure.cpp @@ -534,17 +534,6 @@ namespace epics { namespace pvData { } } - - bool PVStructure::operator==(PVField &obj) - { - return getConvert()->equals(this,&obj); - } - - bool PVStructure::operator!=(PVField &pv) - { - return !(getConvert()->equals(this,&pv)); - } - static PVField *findSubField(String fieldName,PVStructure *pvStructure) { if( fieldName.length()<1) return 0; String::size_type index = fieldName.find('.'); diff --git a/pvDataApp/misc/linkedListVoid.h b/pvDataApp/misc/linkedListVoid.h index 781d8de..50de2a1 100644 --- a/pvDataApp/misc/linkedListVoid.h +++ b/pvDataApp/misc/linkedListVoid.h @@ -5,9 +5,9 @@ * in file LICENSE that is included with this distribution. */ -#include "pvType.h" #ifndef LINKEDLISTVOID_H #define LINKEDLISTVOID_H +#include "pvType.h" namespace epics { namespace pvData { class LinkedListVoid; diff --git a/pvDataApp/misc/requester.h b/pvDataApp/misc/requester.h index 89b2872..d79fae4 100644 --- a/pvDataApp/misc/requester.h +++ b/pvDataApp/misc/requester.h @@ -4,9 +4,9 @@ * EPICS pvDataCPP is distributed subject to a Software License Agreement found * in file LICENSE that is included with this distribution. */ -#include #ifndef REQUESTER_H #define REQUESTER_H +#include #include "pvType.h" #include "sharedPtr.h" diff --git a/pvDataApp/monitor/monitor.h b/pvDataApp/monitor/monitor.h index b7ea238..248ac72 100644 --- a/pvDataApp/monitor/monitor.h +++ b/pvDataApp/monitor/monitor.h @@ -63,14 +63,16 @@ namespace epics { namespace pvData { virtual Status stop() = 0; /** * If monitor has occurred return data. - * @return monitorElement for modified data on null if no monitors have occurred. + * @return monitorElement for modified data on null + * if no monitors have occurred. */ virtual MonitorElement::shared_pointer poll() = 0; /** * Release a MonitorElement that was returned by poll. * @param monitorElement */ - virtual void release(MonitorElement::shared_pointer& monitorElement) = 0; + virtual void release( + MonitorElement::shared_pointer& monitorElement) = 0; }; @@ -89,9 +91,11 @@ namespace epics { namespace pvData { * @param monitor The monitor * @param structure The structure defining the data. */ - virtual void monitorConnect(const Status &status, Monitor::shared_pointer& monitor, StructureConstPtr& structure) = 0; + virtual void monitorConnect(const Status &status, + Monitor::shared_pointer& monitor, StructureConstPtr& structure) = 0; /** - * A monitor event has occurred. The requester must call Monitor.poll to get data. + * A monitor event has occurred. + * The requester must call Monitor.poll to get data. * @param monitor The monitor. */ virtual void monitorEvent(Monitor::shared_pointer& monitor) = 0; diff --git a/pvDataApp/monitor/monitorQueue.cpp b/pvDataApp/monitor/monitorQueue.cpp index 720f47b..d135600 100644 --- a/pvDataApp/monitor/monitorQueue.cpp +++ b/pvDataApp/monitor/monitorQueue.cpp @@ -12,44 +12,46 @@ namespace epics { namespace pvData { -typedef QueueElement MonitorQueueElement; +typedef QueueElement MonitorQueueElement; class MonitorElementImpl : public MonitorElement { public: - MonitorElementImpl(PVStructure *pvStructure); + MonitorElementImpl(PVStructure::shared_pointer pvStructure); ~MonitorElementImpl(){} - virtual PVStructure* getPVStructure(); - virtual BitSet* getChangedBitSet(); - virtual BitSet* getOverrunBitSet(); + virtual PVStructure::shared_pointer getPVStructure(); + virtual BitSet::shared_pointer getChangedBitSet(); + virtual BitSet::shared_pointer getOverrunBitSet(); void setQueueElement(MonitorQueueElement *queueElement); MonitorQueueElement *getQueueElement(); private: - PVStructure *pvStructure; - std::auto_ptr changedBitSet; - std::auto_ptr overrunBitSet; + PVStructure::shared_pointer pvStructure; + BitSet::shared_pointer changedBitSet; + BitSet::shared_pointer overrunBitSet; MonitorQueueElement *queueElement; }; -MonitorElementImpl::MonitorElementImpl(PVStructure *pvStructure) +MonitorElementImpl::MonitorElementImpl(PVStructure::shared_pointer pvStructure) : pvStructure(pvStructure), - changedBitSet(std::auto_ptr(new BitSet(pvStructure->getNumberFields()))), - overrunBitSet(std::auto_ptr(new BitSet(pvStructure->getNumberFields()))), + changedBitSet(BitSet::shared_pointer( + new BitSet(pvStructure->getNumberFields()))), + overrunBitSet(BitSet::shared_pointer( + new BitSet(pvStructure->getNumberFields()))), queueElement(0) {} -PVStructure* MonitorElementImpl::getPVStructure() +PVStructure::shared_pointer MonitorElementImpl::getPVStructure() { return pvStructure; } -BitSet* MonitorElementImpl::getChangedBitSet() +BitSet::shared_pointer MonitorElementImpl::getChangedBitSet() { - return changedBitSet.get(); + return changedBitSet; } -BitSet* MonitorElementImpl::getOverrunBitSet() +BitSet::shared_pointer MonitorElementImpl::getOverrunBitSet() { - return overrunBitSet.get(); + return overrunBitSet; } void MonitorElementImpl::setQueueElement(MonitorQueueElement *queueElement) @@ -62,20 +64,28 @@ MonitorQueueElement *MonitorElementImpl::getQueueElement() return queueElement; } -MonitorQueue::MonitorQueue(MonitorElement** elements,int number) +MonitorQueue::MonitorQueue(PVStructure::shared_pointer* structures,int number) : number(number), - elements(elements), - queue(new Queue(elements,number)) + structures(structures), + queue(0) { if(number<2) { throw std::logic_error(String("queueSize must be >=2")); } - MonitorQueueElement *queueElement; + + MonitorElement::shared_pointer ** queueElements + = new MonitorElement::shared_pointer*[number]; + for(int i=0; i(queueElements,number); + MonitorQueueElement *queueElement; for(int i=0; igetFree(); - MonitorElementImpl *temp = - static_cast(queueElement->getObject()); - temp->setQueueElement(queueElement); + MonitorElementImpl * element = static_cast( + queueElement->getObject()->get()); + element->setQueueElement(queueElement); queue->setUsed(queueElement); queue->releaseUsed(queueElement); } @@ -84,17 +94,16 @@ MonitorQueue::MonitorQueue(MonitorElement** elements,int number) MonitorQueue::~MonitorQueue() { delete queue; - for(int i=0; igetFree(); - if(queueElement==0) return 0; - return queueElement->getObject(); + if(queueElement==0) return MonitorElement::shared_pointer(); + return *queueElement->getObject(); } -void MonitorQueue::setUsed(MonitorElement * element) +void MonitorQueue::setUsed(MonitorElement::shared_pointer element) { - MonitorElementImpl *temp = static_cast(element); - queue->setUsed(temp->getQueueElement()); + MonitorElementImpl *impl = static_cast(element.get()); + queue->setUsed(impl->getQueueElement()); } -MonitorElement * MonitorQueue::getUsed() +MonitorElement::shared_pointer MonitorQueue::getUsed() { MonitorQueueElement *queueElement = queue->getUsed(); - if(queueElement==0) return 0; - return queueElement->getObject(); + if(queueElement==0) return MonitorElement::shared_pointer(); + return *queueElement->getObject(); } -void MonitorQueue::releaseUsed(MonitorElement * element) +void MonitorQueue::releaseUsed(MonitorElement::shared_pointer element) { - MonitorElementImpl *temp = static_cast(element); - queue->releaseUsed(temp->getQueueElement()); + MonitorElementImpl *impl = static_cast(element.get()); + queue->releaseUsed(impl->getQueueElement()); } diff --git a/pvDataApp/monitor/monitorQueue.h b/pvDataApp/monitor/monitorQueue.h index 4ba68bc..70693c7 100644 --- a/pvDataApp/monitor/monitorQueue.h +++ b/pvDataApp/monitor/monitorQueue.h @@ -21,20 +21,21 @@ namespace epics { namespace pvData { class MonitorQueue { public: - MonitorQueue(MonitorElement** elements,int number); + MonitorQueue(PVStructure::shared_pointer* structures,int number); ~MonitorQueue(); - static MonitorElement** createElements(PVStructurePtrArray array,int number); + static PVStructure::shared_pointer* createStructures( + PVStructurePtrArray array,int number); void clear(); int getNumberFree(); int capacity(); - MonitorElement *getFree(); - void setUsed(MonitorElement * element); - MonitorElement * getUsed(); - void releaseUsed(MonitorElement * element); + MonitorElement::shared_pointer getFree(); + void setUsed(MonitorElement::shared_pointer element); + MonitorElement::shared_pointer getUsed(); + void releaseUsed(MonitorElement::shared_pointer element); private: int number; - MonitorElement ** elements; - Queue *queue; + PVStructure::shared_pointer* structures; + Queue *queue; }; }} diff --git a/pvDataApp/pv/convert.h b/pvDataApp/pv/convert.h index 234f820..0155462 100644 --- a/pvDataApp/pv/convert.h +++ b/pvDataApp/pv/convert.h @@ -4,21 +4,46 @@ * EPICS pvDataCPP is distributed subject to a Software License Agreement found * in file LICENSE that is included with this distribution. */ -#include -#include #ifndef CONVERT_H #define CONVERT_H +#include +#include + #include "pvIntrospect.h" #include "pvData.h" namespace epics { namespace pvData { +bool operator==(PVField&, PVField&); + +static inline bool operator!=(PVField& a, PVField& b) +{return !(a==b);} + + +bool operator==(const Field&, const Field&); +bool operator==(const Scalar&, const Scalar&); +bool operator==(const ScalarArray&, const ScalarArray&); +bool operator==(const Structure&, const Structure&); +bool operator==(const StructureArray&, const StructureArray&); + +static inline bool operator!=(const Field& a, const Field& b) +{return !(a==b);} +static inline bool operator!=(const Scalar& a, const Scalar& b) +{return !(a==b);} +static inline bool operator!=(const ScalarArray& a, const ScalarArray& b) +{return !(a==b);} +static inline bool operator!=(const Structure& a, const Structure& b) +{return !(a==b);} +static inline bool operator!=(const StructureArray& a, const StructureArray& b) +{return !(a==b);} + + class Convert : NoDefaultMethods { public: Convert(); ~Convert(); void getFullName(StringBuilder buf,PVField *pvField); - bool equals(PVField *a,PVField *b); + bool equals(PVField &a,PVField &b); void getString(StringBuilder buf,PVField * pvField,int indentLevel); void getString(StringBuilder buf,PVField *pvField); void fromString(PVScalar *pv, String from); diff --git a/pvDataApp/pv/pvData.h b/pvDataApp/pv/pvData.h index 76c5c77..152faf5 100644 --- a/pvDataApp/pv/pvData.h +++ b/pvDataApp/pv/pvData.h @@ -4,10 +4,10 @@ * EPICS pvDataCPP is distributed subject to a Software License Agreement found * in file LICENSE that is included with this distribution. */ -#include -#include #ifndef PVDATA_H #define PVDATA_H +#include +#include #include "pvType.h" #include "pvIntrospect.h" #include "noDefaultMethods.h" @@ -80,10 +80,9 @@ public: bool renameField(String newName); void postPut() ; void setPostHandler(PostHandler *postHandler); + bool equals(PVField &pv); virtual void toString(StringBuilder buf) ; virtual void toString(StringBuilder buf,int indentLevel) ; - virtual bool operator==(PVField &pv) = 0; - virtual bool operator!=(PVField &pv) = 0; protected: PVField(PVStructure *parent,FieldConstPtr field); void setParent(PVStructure * parent); @@ -245,8 +244,6 @@ public: String getExtendsStructureName(); bool putExtendsStructureName( String extendsStructureName); - virtual bool operator==(PVField &pv) ; - virtual bool operator!=(PVField &pv) ; virtual void serialize( ByteBuffer *pbuffer,SerializableControl *pflusher) const; virtual void deserialize( diff --git a/pvDataApp/pv/pvType.h b/pvDataApp/pv/pvType.h index 439ffd9..176fcfa 100644 --- a/pvDataApp/pv/pvType.h +++ b/pvDataApp/pv/pvType.h @@ -9,10 +9,10 @@ * It also defines the arrays of the primitive types */ -#include -#include #ifndef PVTYPE_H #define PVTYPE_H +#include +#include namespace epics { namespace pvData { diff --git a/pvDataApp/pv/standardField.h b/pvDataApp/pv/standardField.h index 6e17bbc..5068407 100644 --- a/pvDataApp/pv/standardField.h +++ b/pvDataApp/pv/standardField.h @@ -4,10 +4,10 @@ * EPICS pvDataCPP is distributed subject to a Software License Agreement found * in file LICENSE that is included with this distribution. */ -#include -#include #ifndef STANDARDFIELD_H #define STANDARDFIELD_H +#include +#include #include "pvIntrospect.h" namespace epics { namespace pvData { diff --git a/pvDataApp/pv/standardPVField.h b/pvDataApp/pv/standardPVField.h index dbbb1a4..4339552 100644 --- a/pvDataApp/pv/standardPVField.h +++ b/pvDataApp/pv/standardPVField.h @@ -4,10 +4,10 @@ * EPICS pvDataCPP is distributed subject to a Software License Agreement found * in file LICENSE that is included with this distribution. */ -#include -#include #ifndef STANDARDPVFIELD_H #define STANDARDPVFIELD_H +#include +#include #include "pvIntrospect.h" #include "pvData.h" diff --git a/test/testBaseException b/test/testBaseException index 0de1968..0aee447 100644 --- a/test/testBaseException +++ b/test/testBaseException @@ -5,7 +5,7 @@ There is a logic_error On line 68 of ../testBaseException.cpp ../bin/linux-x86/testBaseException[0x80497b9] ../bin/linux-x86/testBaseException[0x8049a54] -/lib/libc.so.6(__libc_start_main+0xe6)[0x126e36] +/lib/libc.so.6(__libc_start_main+0xe6)[0x3ede36] ../bin/linux-x86/testBaseException[0x80490e1] To translate run 'addr2line -e execname 0xXXXXXXX ...' Note: Must be compiled with debug symbols @@ -17,7 +17,7 @@ On line 75 of ../testBaseException.cpp ../bin/linux-x86/testBaseException() [0x8049cec] ../bin/linux-x86/testBaseException() [0x8049923] ../bin/linux-x86/testBaseException() [0x8049a54] -/lib/libc.so.6(__libc_start_main+0xe6) [0x126e36] +/lib/libc.so.6(__libc_start_main+0xe6) [0x3ede36] ../bin/linux-x86/testBaseException() [0x80490e1] testBaseException... @@ -26,7 +26,7 @@ all is OK On line 48 of ../testBaseException.cpp ../bin/linux-x86/testBaseException() [0x8049581] ../bin/linux-x86/testBaseException() [0x8049a5c] -/lib/libc.so.6(__libc_start_main+0xe6) [0x126e36] +/lib/libc.so.6(__libc_start_main+0xe6) [0x3ede36] ../bin/linux-x86/testBaseException() [0x80490e1] @@ -38,7 +38,7 @@ On line 57 of ../testBaseException.cpp ../bin/linux-x86/testBaseException() [0x80491ec] ../bin/linux-x86/testBaseException() [0x80496f9] ../bin/linux-x86/testBaseException() [0x8049a5c] -/lib/libc.so.6(__libc_start_main+0xe6) [0x126e36] +/lib/libc.so.6(__libc_start_main+0xe6) [0x3ede36] ../bin/linux-x86/testBaseException() [0x80490e1] diff --git a/test/testBaseExceptionDiff b/test/testBaseExceptionDiff index c8993a3..30d227d 100644 --- a/test/testBaseExceptionDiff +++ b/test/testBaseExceptionDiff @@ -1,5 +1,5 @@ ---- testBaseExceptionGold 2011-02-10 04:39:30.000000000 -0500 -+++ testBaseException 2011-04-21 10:00:27.000000000 -0400 +--- testBaseExceptionGold 2011-04-25 13:04:28.000000000 -0400 ++++ testBaseException 2011-04-27 07:53:41.000000000 -0400 @@ -1,37 +1,46 @@ + + @@ -8,7 +8,7 @@ +On line 68 of ../testBaseException.cpp +../bin/linux-x86/testBaseException[0x80497b9] +../bin/linux-x86/testBaseException[0x8049a54] -+/lib/libc.so.6(__libc_start_main+0xe6)[0x126e36] ++/lib/libc.so.6(__libc_start_main+0xe6)[0x3ede36] +../bin/linux-x86/testBaseException[0x80490e1] +To translate run 'addr2line -e execname 0xXXXXXXX ...' + Note: Must be compiled with debug symbols @@ -20,7 +20,7 @@ +../bin/linux-x86/testBaseException() [0x8049cec] +../bin/linux-x86/testBaseException() [0x8049923] +../bin/linux-x86/testBaseException() [0x8049a54] -+/lib/libc.so.6(__libc_start_main+0xe6) [0x126e36] ++/lib/libc.so.6(__libc_start_main+0xe6) [0x3ede36] +../bin/linux-x86/testBaseException() [0x80490e1] + testBaseException... @@ -34,7 +34,7 @@ +On line 48 of ../testBaseException.cpp +../bin/linux-x86/testBaseException() [0x8049581] +../bin/linux-x86/testBaseException() [0x8049a5c] -+/lib/libc.so.6(__libc_start_main+0xe6) [0x126e36] ++/lib/libc.so.6(__libc_start_main+0xe6) [0x3ede36] +../bin/linux-x86/testBaseException() [0x80490e1] + @@ -67,7 +67,7 @@ +../bin/linux-x86/testBaseException() [0x80491ec] +../bin/linux-x86/testBaseException() [0x80496f9] +../bin/linux-x86/testBaseException() [0x8049a5c] -+/lib/libc.so.6(__libc_start_main+0xe6) [0x126e36] ++/lib/libc.so.6(__libc_start_main+0xe6) [0x3ede36] +../bin/linux-x86/testBaseException() [0x80490e1] + diff --git a/test/testLinkedListAux b/test/testLinkedListAux index 08c325b..acfa090 100644 --- a/test/testLinkedListAux +++ b/test/testLinkedListAux @@ -1,20 +1,20 @@ Time test -diff 23.497236 milliSeconds -time per iteration 23.497236 microseconds -time per addTail/removeHead 0.011749 microseconds +diff 22.226751 milliSeconds +time per iteration 22.226751 microseconds +time per addTail/removeHead 0.011113 microseconds Time test locked -diff 206.570083 milliSeconds -time per iteration 206.570083 microseconds -time per addTail/removeHead 0.103285 microseconds +diff 205.273532 milliSeconds +time per iteration 205.273532 microseconds +time per addTail/removeHead 0.102637 microseconds Time std::list test -diff 632.330525 milliSeconds -time per iteration 632.330525 microseconds -time per addTail/removeHead 0.316165 microseconds +diff 666.642776 milliSeconds +time per iteration 666.642776 microseconds +time per addTail/removeHead 0.333321 microseconds Time std::list test locked -diff 783.256490 milliSeconds -time per iteration 783.256490 microseconds -time per addTail/removeHead 0.391628 microseconds +diff 812.128477 milliSeconds +time per iteration 812.128477 microseconds +time per addTail/removeHead 0.406064 microseconds diff --git a/test/testPVAppendDiff b/test/testPVAppendDiff index b028cb9..0270ca7 100644 --- a/test/testPVAppendDiff +++ b/test/testPVAppendDiff @@ -1,5 +1,5 @@ ---- testPVAppendGold 2011-02-09 05:21:30.000000000 -0500 -+++ testPVAppend 2011-04-21 10:00:32.000000000 -0400 +--- testPVAppendGold 2011-04-25 13:04:28.000000000 -0400 ++++ testPVAppend 2011-04-27 07:53:46.000000000 -0400 @@ -29,4 +29,4 @@ structure child2 string Jane Bad Girl diff --git a/test/testPropertyAux b/test/testPropertyAux index b8df55c..24c1967 100644 --- a/test/testPropertyAux +++ b/test/testPropertyAux @@ -1 +1 @@ -2011.04.21 10:00:33 929776649 nanoSeconds isDst true +2011.04.27 07:53:47 782836752 nanoSeconds isDst true diff --git a/test/testThreadAux b/test/testThreadAux index c0e2459..fb69fe0 100644 --- a/test/testThreadAux +++ b/test/testThreadAux @@ -1 +1 @@ -time per call 0.007064 microseconds +time per call 0.007046 microseconds diff --git a/test/testTimeStampAux b/test/testTimeStampAux index 1aeec9c..af8e40c 100644 --- a/test/testTimeStampAux +++ b/test/testTimeStampAux @@ -1,5 +1,5 @@ -current 1303394433 13269031 milliSec 1303394433013 -2011.04.21 10:00:33 13269031 nanoSeconds isDst true +current 1303905226 876200358 milliSec 1303905226876 +2011.04.27 07:53:46 876200358 nanoSeconds isDst true fromTime_t -current 1303394433 0 milliSec 1303394433000 -2011.04.21 10:00:33 0 nanoSeconds isDst true +current 1303905226 0 milliSec 1303905226000 +2011.04.27 07:53:46 0 nanoSeconds isDst true diff --git a/test/testTimerAux b/test/testTimerAux index 57636c1..7e91b10 100644 --- a/test/testTimerAux +++ b/test/testTimerAux @@ -1,6 +1,6 @@ -one requested 0.400000 diff 0.400193 seconds -two requested 0.200000 diff 0.200190 seconds -one requested 0.200000 diff 0.200333 seconds -two requested 0.400000 diff 0.400372 seconds -one requested 0.000000 diff 0.000034 seconds -two requested 0.000000 diff 0.000050 seconds +one requested 0.400000 diff 0.400283 seconds +two requested 0.200000 diff 0.200268 seconds +one requested 0.200000 diff 0.200291 seconds +two requested 0.400000 diff 0.400374 seconds +one requested 0.000000 diff 0.000042 seconds +two requested 0.000000 diff 0.000061 seconds diff --git a/testApp/misc/testSerialization.cpp b/testApp/misc/testSerialization.cpp index 8551342..7cf31d0 100644 --- a/testApp/misc/testSerialization.cpp +++ b/testApp/misc/testSerialization.cpp @@ -21,6 +21,7 @@ #include "noDefaultMethods.h" #include "byteBuffer.h" #include "CDRMonitor.h" +#include "convert.h" #define BYTE_MAX_VALUE 127 #define BYTE_MIN_VALUE -128 @@ -90,8 +91,8 @@ void serializationTest(PVField* field) { deserializedField->deserialize(buffer, control); // must equal - assert((*field)==(*deserializedField)); - + bool isEqual = getConvert()->equals(*field,*deserializedField); + assert(isEqual); delete deserializedField; // clean up }