00001 // Copyright CERN 2012 - Developed in collaboration with GSI 00002 00003 #include <fesa-core/Core/AbstractServiceLocator.h> 00004 #include <fesa-core/Core/AbstractServiceLocatorImplementation.h> 00005 00006 namespace fesa 00007 { 00008 00009 AbstractServiceLocator::AbstractServiceLocator(AbstractServiceLocatorImplementation* abstractImplementation) : pImplementation_(abstractImplementation) 00010 { 00011 00012 } 00013 00014 AbstractServiceLocator::~AbstractServiceLocator() 00015 { 00016 delete pImplementation_; 00017 } 00018 00019 void AbstractServiceLocator::runClassSpecificInitRT() const 00020 { 00021 pImplementation_->runClassSpecificInitRT(); 00022 } 00023 00024 void AbstractServiceLocator::runClassSpecificInitServer() const 00025 { 00026 pImplementation_->runClassSpecificInitServer(); 00027 } 00028 00029 void AbstractServiceLocator::runDeployUnitSpecificInitRT() const 00030 { 00031 pImplementation_->runDeployUnitSpecificInitRT(); 00032 } 00033 00034 void AbstractServiceLocator::runDeployUnitSpecificInitServer() const 00035 { 00036 pImplementation_->runDeployUnitSpecificInitServer(); 00037 } 00038 00039 void AbstractServiceLocator::enableEventSource(const std::string& eventSourceName) const 00040 { 00041 pImplementation_->enableEventSource(eventSourceName); 00042 } 00043 00044 void AbstractServiceLocator::disableEventSource(const std::string& eventSourceName) const 00045 { 00046 pImplementation_->disableEventSource(eventSourceName); 00047 } 00048 00049 void AbstractServiceLocator::enableRTEvent(const std::string& logicalEventName, const std::string& eventSourceName) const 00050 { 00051 pImplementation_->enableRTEvent(logicalEventName, eventSourceName); 00052 } 00053 00054 void AbstractServiceLocator::disableRTEvent(const std::string& logicalEventName, const std::string& eventSourceName) const 00055 { 00056 pImplementation_->disableRTEvent(logicalEventName, eventSourceName); 00057 } 00058 00059 bool AbstractServiceLocator::isEventEnabled(const std::string& logicalEventName, const std::string& eventSourceName) const 00060 { 00061 return pImplementation_->isEventEnabled(logicalEventName, eventSourceName); 00062 } 00063 00064 void AbstractServiceLocator::synchronizeSettingFields(const MultiplexingContext& context) const 00065 { 00066 pImplementation_->synchronizeSettingFields(context); 00067 } 00068 00069 void AbstractServiceLocator::triggerPersistency() const 00070 { 00071 pImplementation_->triggerPersistency(); 00072 } 00073 00074 const std::vector<AbstractDevice*>& AbstractServiceLocator::getDeviceCollection() const 00075 { 00076 return (pImplementation_->getDeviceCollection()); 00077 } 00078 00079 AbstractDevice* AbstractServiceLocator::getDevice(const std::string& deviceName) const 00080 { 00081 return (pImplementation_->getDevice(deviceName)); 00082 } 00083 00084 AbstractDevice* AbstractServiceLocator::getGlobalDevice() const 00085 { 00086 return (pImplementation_->getGlobalDevice()); 00087 } 00088 00089 }// fesa