Interface for managing update publications. More...
#include <UpdateProcessor_T.h>
Public Member Functions | |
UpdateProcessor () | |
virtual | ~UpdateProcessor () |
virtual void | processCreate (const DataType *sample, const DDS::SampleInfo *info)=0 |
Entities are created. | |
virtual void | processUpdateQos1 (const DataType *sample, const DDS::SampleInfo *info)=0 |
Entity Qos values are modified. | |
virtual void | processUpdateQos2 (const DataType *sample, const DDS::SampleInfo *info) |
virtual void | processUpdateFilterExpressionParams (const DataType *sample, const DDS::SampleInfo *info) |
A default null implementation is provided. | |
virtual void | processDelete (const DataType *sample, const DDS::SampleInfo *info)=0 |
Entities are destroyed. | |
void | processSample (const DataType *sample, const DDS::SampleInfo *info) |
Update publication information with sample data. |
Interface for managing update publications.
This class provides interfaces to manage update data received from federated repositories.
Definition at line 35 of file UpdateProcessor_T.h.
OpenDDS::Federator::UpdateProcessor< DataType >::UpdateProcessor | ( | ) | [inline] |
Definition at line 25 of file UpdateProcessor_T.cpp.
References ACE_TEXT(), OpenDDS::DCPS::DCPS_debug_level, and LM_DEBUG.
00026 { 00027 if (OpenDDS::DCPS::DCPS_debug_level > 0) { 00028 ACE_DEBUG((LM_DEBUG, 00029 ACE_TEXT("(%P|%t) UpdateProcessor::UpdateProcessor()\n"))); 00030 } 00031 }
OpenDDS::Federator::UpdateProcessor< DataType >::~UpdateProcessor | ( | ) | [inline, virtual] |
Definition at line 34 of file UpdateProcessor_T.cpp.
References ACE_TEXT(), OpenDDS::DCPS::DCPS_debug_level, and LM_DEBUG.
00035 { 00036 if (OpenDDS::DCPS::DCPS_debug_level > 0) { 00037 ACE_DEBUG((LM_DEBUG, 00038 ACE_TEXT("(%P|%t) UpdateProcessor::~UpdateProcessor()\n"))); 00039 } 00040 }
virtual void OpenDDS::Federator::UpdateProcessor< DataType >::processCreate | ( | const DataType * | sample, | |
const DDS::SampleInfo * | info | |||
) | [pure virtual] |
Entities are created.
Implemented in OpenDDS::Federator::ManagerImpl, OpenDDS::Federator::ManagerImpl, OpenDDS::Federator::ManagerImpl, OpenDDS::Federator::ManagerImpl, and OpenDDS::Federator::ManagerImpl.
Referenced by OpenDDS::Federator::UpdateProcessor< DataType >::processSample().
virtual void OpenDDS::Federator::UpdateProcessor< DataType >::processDelete | ( | const DataType * | sample, | |
const DDS::SampleInfo * | info | |||
) | [pure virtual] |
Entities are destroyed.
Implemented in OpenDDS::Federator::ManagerImpl, OpenDDS::Federator::ManagerImpl, OpenDDS::Federator::ManagerImpl, OpenDDS::Federator::ManagerImpl, and OpenDDS::Federator::ManagerImpl.
Referenced by OpenDDS::Federator::UpdateProcessor< DataType >::processSample().
void OpenDDS::Federator::UpdateProcessor< DataType >::processSample | ( | const DataType * | sample, | |
const DDS::SampleInfo * | info | |||
) | [inline] |
Update publication information with sample data.
Definition at line 44 of file UpdateProcessor_T.cpp.
References ACE_TEXT(), OpenDDS::Federator::CreateEntity, OpenDDS::DCPS::DCPS_debug_level, OpenDDS::Federator::DestroyEntity, LM_DEBUG, LM_ERROR, OpenDDS::Federator::UpdateProcessor< DataType >::processCreate(), OpenDDS::Federator::UpdateProcessor< DataType >::processDelete(), OpenDDS::Federator::UpdateProcessor< DataType >::processUpdateFilterExpressionParams(), OpenDDS::Federator::UpdateProcessor< DataType >::processUpdateQos1(), OpenDDS::Federator::UpdateProcessor< DataType >::processUpdateQos2(), OpenDDS::Federator::UpdateFilterExpressionParams, OpenDDS::Federator::UpdateQosValue1, OpenDDS::Federator::UpdateQosValue2, and DDS::SampleInfo::valid_data.
00047 { 00048 if (OpenDDS::DCPS::DCPS_debug_level > 0) { 00049 ACE_DEBUG((LM_DEBUG, 00050 ACE_TEXT("(%P|%t) UpdateProcessor::processSample()\n"))); 00051 } 00052 00053 if (info->valid_data) { 00054 switch (sample->action) { 00055 case CreateEntity: 00056 this->processCreate(sample, info); 00057 break; 00058 case UpdateQosValue1: 00059 this->processUpdateQos1(sample, info); 00060 break; 00061 case UpdateQosValue2: 00062 this->processUpdateQos2(sample, info); 00063 break; 00064 case UpdateFilterExpressionParams: 00065 this->processUpdateFilterExpressionParams(sample, info); 00066 break; 00067 case DestroyEntity: 00068 this->processDelete(sample, info); 00069 break; 00070 default: 00071 ACE_ERROR((LM_ERROR, 00072 ACE_TEXT("(%P|%t) ERROR: UpdateProcessor::processSample() - ") 00073 ACE_TEXT("upsupported action type: %d.\n"), 00074 sample->action)); 00075 break; 00076 } 00077 00078 } else { 00079 if (OpenDDS::DCPS::DCPS_debug_level > 0) { 00080 ACE_DEBUG((LM_DEBUG, 00081 ACE_TEXT("(%P|%t) UpdateProcessor::processSample() - ") 00082 ACE_TEXT("sample not valid, declining to process.\n"))); 00083 } 00084 } 00085 }
void OpenDDS::Federator::UpdateProcessor< DataType >::processUpdateFilterExpressionParams | ( | const DataType * | sample, | |
const DDS::SampleInfo * | info | |||
) | [inline, virtual] |
A default null implementation is provided.
Reimplemented in OpenDDS::Federator::ManagerImpl.
Definition at line 98 of file UpdateProcessor_T.cpp.
Referenced by OpenDDS::Federator::UpdateProcessor< DataType >::processSample().
virtual void OpenDDS::Federator::UpdateProcessor< DataType >::processUpdateQos1 | ( | const DataType * | sample, | |
const DDS::SampleInfo * | info | |||
) | [pure virtual] |
Entity Qos values are modified.
Implemented in OpenDDS::Federator::ManagerImpl, OpenDDS::Federator::ManagerImpl, OpenDDS::Federator::ManagerImpl, OpenDDS::Federator::ManagerImpl, and OpenDDS::Federator::ManagerImpl.
Referenced by OpenDDS::Federator::UpdateProcessor< DataType >::processSample().
void OpenDDS::Federator::UpdateProcessor< DataType >::processUpdateQos2 | ( | const DataType * | sample, | |
const DDS::SampleInfo * | info | |||
) | [inline, virtual] |
Entity additional Qos values are modified. A default null implementation is provided.
Reimplemented in OpenDDS::Federator::ManagerImpl, and OpenDDS::Federator::ManagerImpl.
Definition at line 89 of file UpdateProcessor_T.cpp.
Referenced by OpenDDS::Federator::UpdateProcessor< DataType >::processSample().