|
enum | proc_t { ProcPassive,
ProcInhibit,
ProcForce
} |
|
|
| PVIF (dbChannel *ch) |
|
virtual void | put (epics::pvData::BitSet &mask, unsigned dbe, db_field_log *pfl)=0 |
|
virtual epics::pvData::Status | get (const epics::pvData::BitSet &mask, proc_t proc=ProcInhibit, bool permit=true)=0 |
|
virtual unsigned | dbe (const epics::pvData::BitSet &mask)=0 |
| Calculate DBE mask from changed bitset.
|
|
Definition at line 365 of file pvif.h.
pvd::Status PVIF::get |
( |
const epics::pvData::BitSet & |
mask, |
|
|
proc_t |
proc = ProcInhibit , |
|
|
bool |
permit = true |
|
) |
| |
|
pure virtual |
May copy from pvalue to PDB record (call dbChannelPut()) caller must lock record
Definition at line 1262 of file pvif.cpp.
1264 dbCommon *precord = dbChannelRecord(chan);
1266 bool tryproc = proc!=ProcPassive ? proc==ProcForce :
1267 dbChannelField(chan) == &precord->proc ||
1268 (dbChannelFldDes(chan)->process_passive &&
1269 precord->scan == 0);
1275 return pvd::Status::error(
"Process not permitted");
1277 }
else if (precord->pact) {
1279 printf(
"%s: Active %s\n",
1280 epicsThreadGetNameSelf(), precord->name);
1281 precord->rpro = TRUE;
1284 precord->putf = TRUE;
1285 long err = dbProcess(precord);
1288 errSymLookup(err, buf,
sizeof(buf));
1289 std::ostringstream msg;
1290 msg<<
"process error : "<<buf;
1291 ret = pvd::Status::error(msg.str());
virtual void PVIF::put |
( |
epics::pvData::BitSet & |
mask, |
|
|
unsigned |
dbe, |
|
|
db_field_log * |
pfl |
|
) |
| |
|
pure virtual |
Copy from PDB record to pvalue (call dbChannelGet()) caller must lock record
The documentation for this struct was generated from the following files: