예제 #1
0
void
datareader_factory::accept( adplugin::visitor& visitor, const char * adplugin )
{
    visitor.visit( this, adplugin );

    adcontrols::DataReader::register_factory(
        [] ( const char * traceid ) {  return std::make_shared< DataReader >( traceid ); }
        , typeid( DataReader ).name() );

    // register all supported 'traceid' by name
    for ( const auto& traceid: DataReader::traceid_list() )
        adcontrols::DataReader::assign_reader( typeid( DataReader ).name(), traceid.c_str() );

    if ( auto ptr = factory_plugin< histogram::DataInterpreter, IID_DataInterpreter >::make_this() ) {
        ptr->accept( visitor, adplugin );
    }

    if ( auto ptr = factory_plugin< timecount::DataInterpreter< acqrscontrols::u5303a::threshold_result >, IID_DataInterpreter >::make_this() ) {
        ptr->accept( visitor, adplugin );
    }

    if ( auto ptr = factory_plugin< softavgr::DataInterpreter, IID_DataInterpreter >::make_this() ) {
        ptr->accept( visitor, adplugin );
    }

    if ( auto ptr = factory_plugin< waveform::DataInterpreter< acqrscontrols::u5303a::waveform >, IID_DataInterpreter >::make_this() ) {
        ptr->accept( visitor, adplugin );
    }

    if ( auto ptr = factory_plugin< waveform::DataInterpreter< acqrscontrols::ap240::waveform >, IID_DataInterpreter >::make_this() ) {
        ptr->accept( visitor, adplugin );
    }    

}
예제 #2
0
 void accept( adplugin::visitor& v, const char * adplugin ) {
     v.visit( this, adplugin );
 }
예제 #3
0
void
tofServantPlugin::accept( adplugin::visitor& v, const char * adplugin )
{
	v.visit( this, adplugin );
}
예제 #4
0
 // adplugin::plugin
 void accept( adplugin::visitor& visitor, const char * adplugin ) override {
     visitor.visit( this, adplugin );
 }
예제 #5
0
void
datafile_factory::accept( adplugin::visitor& v, const char * adplugin )
{
	v.visit( this, adplugin );
}
예제 #6
0
void
factory::accept( adplugin::visitor& v, const char * adpluginspec )
{
    v.visit( this, adpluginspec );
}