pvDatabaseCPP
4.5.1
|
Trace activity of PVRecord. More...
#include <traceRecord.h>
Public Member Functions | |
POINTER_DEFINITIONS (TraceRecord) | |
virtual bool | init () |
virtual void | process () |
Set the trace level for record specified by recordName. More... | |
POINTER_DEFINITIONS (PVRecord) | |
POINTER_DEFINITIONS (PVCopyTraverseMasterCallback) | |
virtual void | start () |
Optional method for derived class. More... | |
virtual void | destroy () |
DEPRECATED. More... | |
virtual void | remove () |
remove record from database. More... | |
virtual epics::pvAccess::RPCServiceAsync::shared_pointer | getService (epics::pvData::PVStructurePtr const &pvRequest) |
Optional method for derived class. More... | |
std::string | getRecordName () const |
Get the name of the record. More... | |
PVRecordStructurePtr | getPVRecordStructure () const |
Get the top level PVRecordStructure. More... | |
epics::pvData::PVStructurePtr | getPVStructure () const |
Get the top level PVStructure. More... | |
PVRecordFieldPtr | findPVRecordField (epics::pvData::PVFieldPtr const &pvField) |
Find the PVRecordField for the PVField. More... | |
void | lock () |
Lock the record. More... | |
void | unlock () |
Unlock the record. More... | |
bool | tryLock () |
Try to lock the record. More... | |
void | lockOtherRecord (PVRecordPtr const &otherRecord) |
Lock another record. More... | |
bool | addPVRecordClient (PVRecordClientPtr const &pvRecordClient) |
Add a client that wants to access the record. More... | |
bool | addListener (PVListenerPtr const &pvListener, epics::pvCopy::PVCopyPtr const &pvCopy) |
Add a PVListener. More... | |
void | nextMasterPVField (epics::pvData::PVFieldPtr const &pvField) |
PVCopyTraverseMasterCallback method. More... | |
bool | removeListener (PVListenerPtr const &pvListener, epics::pvCopy::PVCopyPtr const &pvCopy) |
Remove a listener. More... | |
void | beginGroupPut () |
Begins a group of puts. More... | |
void | endGroupPut () |
Ends a group of puts. More... | |
int | getTraceLevel () |
get trace level (0,1,2) means (nothing,lifetime,process) More... | |
void | setTraceLevel (int level) |
set trace level (0,1,2) means (nothing,lifetime,process) More... | |
Static Public Member Functions | |
static TraceRecordPtr | create (std::string const &recordName) |
Factory method to create TraceRecord. More... | |
static PVRecordPtr | create (std::string const &recordName, epics::pvData::PVStructurePtr const &pvStructure) |
Creates a soft record. More... | |
Protected Member Functions | |
void | initPVRecord () |
Initializes the base class. More... | |
Trace activity of PVRecord.
A record to set the trace value for another record It is meant to be used via a channelPutGet request. The argument has two fields: recordName and level. The result has a field named status.
Definition at line 33 of file traceRecord.h.
|
inherited |
Add a PVListener.
This must be called before calling pvRecordField.addListener.
pvListener | The listener. |
pvCopy | The pvStructure that has the client fields. |
Definition at line 265 of file pvRecord.cpp.
|
inherited |
Add a client that wants to access the record.
Every client that accesses the record must call this so that the client can be notified when the record is deleted.
pvRecordClient | The client. |
Definition at line 234 of file pvRecord.cpp.
|
inherited |
Begins a group of puts.
Definition at line 318 of file pvRecord.cpp.
|
static |
Factory method to create TraceRecord.
recordName | The name for the TraceRecord. |
Definition at line 40 of file traceRecord.cpp.
|
staticinherited |
Creates a soft record.
recordName | The name of the record, which is also the channelName. |
pvStructure | The top level structure. |
Definition at line 38 of file pvRecord.cpp.
|
inlinevirtualinherited |
DEPRECATED.
Definition at line 92 of file pvDatabase.h.
|
inherited |
Ends a group of puts.
Definition at line 333 of file pvRecord.cpp.
|
inherited |
Find the PVRecordField for the PVField.
This is called by the pvCopy facility.
pvField | The PVField. |
Referenced by epics::pvDatabase::PVRecord::nextMasterPVField(), and epics::pvDatabase::PVRecord::process().
|
inlineinherited |
Get the top level PVRecordStructure.
Definition at line 135 of file pvDatabase.h.
Referenced by epics::pvDatabase::operator<<().
|
inlineinherited |
Get the top level PVStructure.
Definition at line 141 of file pvDatabase.h.
|
inlineinherited |
Get the name of the record.
Definition at line 129 of file pvDatabase.h.
Referenced by epics::pvDatabase::operator<<().
|
inlinevirtualinherited |
Optional method for derived class.
Return a service corresponding to the specified request PVStructure.
pvRequest | The request PVStructure |
Definition at line 109 of file pvDatabase.h.
|
inlineinherited |
get trace level (0,1,2) means (nothing,lifetime,process)
Definition at line 233 of file pvDatabase.h.
|
virtual |
standard init method required by PVRecord
Reimplemented from epics::pvDatabase::PVRecord.
Definition at line 69 of file traceRecord.cpp.
|
protectedinherited |
Initializes the base class.
Must be called by derived classes.
Definition at line 145 of file pvRecord.cpp.
|
inherited |
Lock the record.
Any code must lock while accessing a record.
Definition at line 199 of file pvRecord.cpp.
Referenced by epics::pvDatabase::PVRecord::lockOtherRecord().
|
inherited |
Lock another record.
A client that holds the lock for one record can lock one other record. A client must not call this if the client already has the lock for more then one record.
otherRecord | The other record to lock. |
Definition at line 220 of file pvRecord.cpp.
References epics::pvDatabase::PVRecord::lock(), and epics::pvDatabase::PVRecord::unlock().
|
virtualinherited |
PVCopyTraverseMasterCallback method.
pvField | The next client field. |
Implements epics::pvCopy::PVCopyTraverseMasterCallback.
Definition at line 281 of file pvRecord.cpp.
References epics::pvDatabase::PVRecord::findPVRecordField().
epics::pvDatabase::TraceRecord::POINTER_DEFINITIONS | ( | TraceRecord | ) |
|
inherited |
|
inherited |
|
virtual |
Set the trace level for record specified by recordName.
Reimplemented from epics::pvDatabase::PVRecord.
Definition at line 82 of file traceRecord.cpp.
|
virtualinherited |
remove record from database.
Remove the PVRecord. Release any resources used and get rid of listeners and requesters. If derived class overrides this then it must call PVRecord::remove() after it has destroyed any resorces it uses.
Definition at line 114 of file pvRecord.cpp.
References epics::pvDatabase::PVDatabase::getMaster().
|
inherited |
Remove a listener.
pvListener | The listener. |
pvCopy | The pvStructure that has the client fields. |
Definition at line 293 of file pvRecord.cpp.
|
inlineinherited |
set trace level (0,1,2) means (nothing,lifetime,process)
level | The level |
Definition at line 238 of file pvDatabase.h.
|
inlinevirtualinherited |
Optional method for derived class.
It is called before record is added to database.
Definition at line 78 of file pvDatabase.h.
|
inherited |
Try to lock the record.
If true then just like lock. If falseclient can not access record. Code can try to simultaneously hold the lock for more than two records by calling this method but must be willing to accept failure.
Definition at line 213 of file pvRecord.cpp.
|
inherited |
Unlock the record.
The code that calls lock must unlock when done accessing the record.
Definition at line 206 of file pvRecord.cpp.
Referenced by epics::pvDatabase::PVRecord::lockOtherRecord().