added examplePVADoubleGet; updated to latest pvDataCPP-md

This commit is contained in:
Marty Kraimer
2013-08-06 10:26:56 -04:00
parent e40fe7b0ac
commit 614491c02e
26 changed files with 1072 additions and 55 deletions

View File

@@ -192,17 +192,15 @@ static void testPVScalarArray(
BitSetPtr bitSet;
String builder;
size_t offset;
ConvertPtr convert = getConvert();
size_t n = 5;
//DoubleArray values(n);
shared_vector<double> values(n);
pvRecord->lock_guard();
cout << endl;
pvStructureRecord = pvRecord->getPVRecordStructure()->getPVStructure();
pvValueRecord = pvStructureRecord->getScalarArrayField(valueNameRecord,scalarType);
for(size_t i=0; i<n; i++) values[i] = i;
pvValueRecord->PVScalarArray::putFrom<pvDouble>(values);
const shared_vector<const double> xxx(freeze(values));
pvValueRecord->putFrom(xxx);
StructureConstPtr structure = pvCopy->getStructure();
builder.clear(); structure->toString(&builder);
cout << "structure from copy" << endl << builder << endl;
@@ -213,8 +211,10 @@ ConvertPtr convert = getConvert();
builder.clear(); pvValueCopy->toString(&builder);
cout << "after initCopy pvValueCopy " << builder << endl;
cout << endl;
values.resize(n);
for(size_t i=0; i<n; i++) values[i] = i + .06;
pvValueRecord->PVScalarArray::putFrom<pvDouble>(values);
const shared_vector<const double> yyy(freeze(values));
pvValueRecord->putFrom(yyy);
pvCopy->updateCopySetBitSet(pvStructureCopy,bitSet,true);
builder.clear(); pvValueCopy->toString(&builder);
cout << "after put(i+ .06) pvValueCopy " << builder << endl;
@@ -232,8 +232,10 @@ ConvertPtr convert = getConvert();
cout << " bitSet " << builder;
cout << endl;
bitSet->clear();
values.resize(n);
for(size_t i=0; i<n; i++) values[i] = i + 1.0;
pvValueRecord->PVScalarArray::putFrom<pvDouble>(values);
const shared_vector<const double> zzz(freeze(values));
pvValueRecord->putFrom(zzz);
builder.clear();
bitSet->toString(&builder);
cout << "before updateCopyFromBitSet";
@@ -256,8 +258,10 @@ ConvertPtr convert = getConvert();
bitSet->toString(&builder);
cout << " bitSet " << builder;
cout << endl;
values.resize(n);
for(size_t i=0; i<n; i++) values[i] = i + 2.0;
pvValueRecord->PVScalarArray::putFrom<pvDouble>(values);
const shared_vector<const double> ttt(freeze(values));
pvValueRecord->putFrom(ttt);
bitSet->set(0);
cout << "before updateRecord";
builder.clear(); pvValueRecord->toString(&builder);