Use NTAttribute wrapper in NTNDArray

Use the wrapper NTAttribute wrapper NTNDArrayAttribute to test the
attribute field in implementation of NTNDArray::isCompatible(Structure).
This commit is contained in:
Dave Hickin
2015-08-29 11:09:32 +01:00
parent d54060576a
commit ddab44823f

View File

@@ -9,6 +9,7 @@
#define epicsExportSharedSymbols
#include <pv/ntndarray.h>
#include <pv/ntndarrayAttribute.h>
#include <pv/ntutils.h>
using namespace std;
@@ -247,7 +248,7 @@ bool NTNDArray::isCompatible(PVStructurePtr const & pvStructure)
pvField = pvStructure->getSubField("dataTimeStamp");
if(pvField && !ntField->isTimeStamp(pvField->getField())) return false;
PVStructureArrayPtr pvAttribute = pvStructure->getSubField<PVStructureArray>("attribute");
if(pvAttribute->getStructureArray()->getStructure()->getID().compare(ntAttrStr)!=0) return false;
if(!NTNDArrayAttribute::isCompatible(pvAttribute->getStructureArray()->getStructure())) return false;
return true;
}