00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029 #ifndef TXFMCHAIN_INCLUDE
00030 #define TXFMCHAIN_INCLUDE
00031
00032 #include <xsec/framework/XSECDefs.hpp>
00033
00034 class TXFMBase;
00035
00036
00044 class DSIG_EXPORT TXFMChain {
00045
00046 public:
00047
00048
00049
00050 TXFMChain(TXFMBase * baseTxfm, bool deleteChainWhenDone = true);
00051 ~TXFMChain();
00052
00053
00054 void appendTxfm(TXFMBase * txfm);
00055 TXFMBase * getLastTxfm(void);
00056
00057 private:
00058
00059 TXFMChain();
00060 TXFMChain(TXFMChain &toCopy);
00061
00062 TXFMBase * mp_currentTxfm;
00063 bool m_deleteChainWhenDone;
00064
00065 void deleteTXFMChain(TXFMBase * toDelete);
00066
00067 };
00068
00069 inline
00070 TXFMBase * TXFMChain::getLastTxfm(void) {return mp_currentTxfm;}
00071
00072
00073
00074 #endif