Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

AIDA_DevTupleFactory.cpp

Go to the documentation of this file.
00001 #include "AIDA_DevTupleFactory.h"
00002 #include "AIDA_Tuple.h"
00003 #include "AIDA_ChainedTuple.h"
00004 #include "AIDA_TupleVariableDescription.h"
00005 #include <exception>
00006 
00007 
00008 Anaphe::AIDA_Tuple_native::AIDA_DevTupleFactory::AIDA_DevTupleFactory()
00009 {}
00010 
00011 
00012 Anaphe::AIDA_Tuple_native::AIDA_DevTupleFactory::~AIDA_DevTupleFactory()
00013 {}
00014 
00015 
00016 AIDA::Dev::IDevTuple*
00017 Anaphe::AIDA_Tuple_native::AIDA_DevTupleFactory::create( AIDA::Dev::IBackingStore* backingStore,
00018                                                          const std::string& title,
00019                                                          std::string options )
00020 {
00021   AIDA::Dev::IDevTuple* tuple = 0;
00022   try {
00023     tuple = new Anaphe::AIDA_Tuple_native::AIDA_Tuple;
00024   }
00025   catch ( std::exception& ) {
00026     return 0;
00027   }
00028   if ( ! tuple ) return 0;
00029   tuple->setTitle( title );
00030   tuple->header().setOptions( options );
00031   tuple->connectToStore( backingStore );
00032   return tuple;
00033 }
00034 
00035 
00036 AIDA::Dev::IDevTuple*
00037 Anaphe::AIDA_Tuple_native::AIDA_DevTupleFactory::createChained( const std::string& title,
00038                                                                 const std::vector<AIDA::Dev::IDevTuple*>& tupleset )
00039 {
00040   AIDA::Dev::IDevTuple* tuple = 0;
00041   try {
00042     tuple = new Anaphe::AIDA_Tuple_native::AIDA_ChainedTuple( tupleset );
00043   }
00044   catch( std::exception& ) {
00045     return 0;
00046   }
00047   if ( ! tuple ) return 0;
00048   tuple->setTitle( title );
00049   return tuple;
00050 }
00051 
00052 
00053 AIDA::Dev::ITupleVariableDescription*
00054 Anaphe::AIDA_Tuple_native::AIDA_DevTupleFactory::createDescription()
00055 {
00056   return new Anaphe::AIDA_Tuple_native::AIDA_TupleVariableDescription;
00057 }
00058 
00059 
00060 AIDA::Dev::ITupleVariableDescription*
00061 Anaphe::AIDA_Tuple_native::AIDA_DevTupleFactory::createDescription( const AIDA::Dev::ITupleVariableDescription& original )
00062 {
00063   AIDA::Dev::ITupleVariableDescription* copy = new Anaphe::AIDA_Tuple_native::AIDA_TupleVariableDescription;
00064   copy->setVariableName( original.variableName() );
00065   copy->setVariableType( original.variableType() );
00066   for ( int iVariable = 0; iVariable < original.numberOfVariables(); ++iVariable ) {
00067     copy->setVariableDescription( createDescription( *( original.variableDescription( iVariable ) ) ), true );
00068   }
00069   return copy;
00070 }

Generated on Tue Feb 18 17:51:19 2003 for AIDA_Tuple_native by doxygen1.2.16