00001 #include "expander.h"
00002 #include "cheezyparser.h"
00003
00004
00005
00006
00007
00008 CCorrFtn3dSphr expand( const CCorrFtn3dHisto& corrin, const parameterMap m ){
00009
00010 CCorrFtn3dSphr corrout;
00011 corrout.CObject3d::CopyState(corrin);
00012 corrout.CCorrFtnBase::CopyState(corrin);
00013
00014 CCart2SphrExpander<CCorrFtn1dHisto> ex;
00015 ex.Read(m);
00016 if (!ex.convert(corrin,corrout,corrin.likepair())) exit(-1);
00017
00018 for (CCorrFtn3dSphr::iterator it=corrout.begin(); it!=corrout.end(); ++it){
00019 it->second.CCorrFtnBase::CopyState(corrin);
00020 }
00021 return corrout;
00022 }
00023
00024 CCorrFtn3dHisto recombine( const CCorrFtn3dSphr& corrin, const parameterMap m ){
00025
00026 CCorrFtn3dHisto corrout;
00027 corrout.CObject3d::CopyState(corrin);
00028 corrout.CCorrFtnBase::CopyState(corrin);
00029
00030 CCart2SphrExpander<CCorrFtn1dHisto> ex;
00031 ex.Read(m);
00032 if (!ex.convert(corrin,corrout)) exit(-1);
00033 return corrout;
00034 }
00035
00036 CSourceFtn3dSphr<CSourceFtn1dHisto> expand( const CSourceFtn3dHisto& souin, const parameterMap m ){
00037
00038 CSourceFtn3dSphr<CSourceFtn1dHisto> souout;
00039 souout.CObject3d::CopyState(souin);
00040 souout.CSourceFtnBase::CopyState(souin);
00041
00042 CCart2SphrExpander<CSourceFtn1dHisto> ex;
00043 ex.Read(m);
00044 if (!ex.convert(souin,souout,souin.likepair())) exit(-1);
00045
00046 for (CSourceFtn3dSphr<CSourceFtn1dHisto>::iterator it=souout.begin(); it!=souout.end(); ++it){
00047 it->second.CSourceFtnBase::CopyState(souin);
00048 }
00049 return souout;
00050 }
00051
00052 CSourceFtn3dHisto recombine( const CSourceFtn3dSphr<CSourceFtn1dHisto>& souin, const parameterMap m ){
00053
00054 CSourceFtn3dHisto souout;
00055 souout.CObject3d::CopyState(souin);
00056 souout.CSourceFtnBase::CopyState(souin);
00057
00058 CCart2SphrExpander<CSourceFtn1dHisto> ex;
00059 ex.Read(m);
00060 if (!ex.convert(souin,souout)) exit(-1);
00061 return souout;
00062 }
00063