dcsimg
Is there any better way of writing short CORBA IDL file for this class ?
0 posts in topic
Flat View  Flat View
TOPIC ACTIONS:
 

Posted By:   lakshmanan_sundaram
Posted On:   Monday, August 17, 2009 04:12 AM

class TermStructIRSens { public: TermStructIRSens(const FSparam &fsp, TermStructIR *tsir); ~TermStructIRSens(); RetCode getErrCode() const; const CDSString& getErrMsg() const; // FS factor access FsGrpType getFsGrpType() const; FSFactorGrp *getFSFactorGrp() const; FSFactorGrp *getSens0FSFactorGrp() const; FSFactorTSIR *getSens0FSFactor(TsSensGrpType sensType) const; void clearDependentFSFactor(TermStructIR *tsir); // base/sens curve access int getNumFSTenor() const; int getNumSensCurve() const; int getParallelIndex() const; TermStructIRCurve *getBaseCurve() const; TermStructIRCurve *getFSTenorCurve() const;    More>>

class TermStructIRSens {
public:
TermStructIRSens(const FSparam &fsp, TermStructIR *tsir);
~TermStructIRSens();

RetCode getErrCode() const;
const CDSString& getErrMsg() const;

// FS factor access
FsGrpType getFsGrpType() const;
FSFactorGrp *getFSFactorGrp() const;
FSFactorGrp *getSens0FSFactorGrp() const;
FSFactorTSIR *getSens0FSFactor(TsSensGrpType sensType) const;
void clearDependentFSFactor(TermStructIR *tsir);

// base/sens curve access
int getNumFSTenor() const;
int getNumSensCurve() const;
int getParallelIndex() const;
TermStructIRCurve *getBaseCurve() const;
TermStructIRCurve *getFSTenorCurve() const;
void setFSTenorCurve(TermStructIRCurve * fsTenorCurve);

TermStructIRCurve *getSens0Curve(TsSensGrpType sensType, int idx) const;
TermStructIRCurve *getSensCurve(TsSensGrpType sensType, int idx) const;

// match checking
Bool match(const Date &date, const FSparam &fsp) const;

// as of date and valuation date
const Date &getAsOfDate() const;
const Date &getValDate() const;
void setValDate(const Date& date);

// template and input PointInfos
TStemplateIR *getTStemplateIR() const;
int getNumInput() const;
PointInfo *getInput(int idx) const;
FSparam & getFSparam() { return _fsp ; }
FSBpaCurve * getFSBpaCurve() const;
FwdRiskFS * getFwdRiskFS() const;

const TermStructIR *getTSIR() { return _tsir;};
Bool useAltSens() { return _useAltSens;}
void setAltSens(Bool flag) { _useAltSens = flag;}
void dumpQuadCurve( const char *mode);

private:

FSBpaCurve * _fsBpaCurve;
FwdRiskFS * _fwdRiskFS;
FSparam _fsp; // local copy FS parameter
TermStructIR *_tsir; // TSIR pointer
TStemplateIR *_tst; // local copy of template
Date _asOfDate; // As Of Date
Date _valDate; // Valuation Date

FsGrpType _fsGrpType; // FS group type
FSFactorGrp *_fsGrp; // FS factor pointer
FSFactorGrp *_sens0FsGrp; // sens0 FSFactor pointer

int _numSensCurve; // number of sens curves
int _numSens0Curve; // number of sens 0 curves
int _parallelIndex; // index of parallel perturbation
TermStructIRCurve *_baseCurve; // base curve
TermStructIRCurve *_fsTenorCurve; // fs tenor curve
TermStructIRCurve **_sensCurveGrp[TSSG_NUM_GRP]; // sens curves
TermStructIRCurve **_sens0CurveGrp[TSSG_NUM_GRP]; // sens 0 curves

double _perturbAmt; // perturbation amount

Bool _needOverrideInput; // flag for override mkt input with implied yield
Bool _useAltSens;

// FS factor geneartion
void buildFSTenorCurve();
void buildSens0FSFactor();
void buildFSFactor();

// sens curve generation
TermStructIRCurve **getSensCurveGrp(TsSensGrpType sensType);
TermStructIRCurve **getSens0CurveGrp(TsSensGrpType sensType);
void buildSensCurve(TsSensGrpType sensType, int idx, Bool isSens0);

}

   <<Less
About | Sitemap | Contact