Filter for combining the above.
void add(const ScenarioFilter &filter)
CompositeScenarioFilter()
CompositeScenarioFilter(const vector< ScenarioFilter > &filters)
bool allow(const RiskFactorKey &key) const override
If any one of the filters allows this key, we allow it.
std::vector< ScenarioFilter > filters_
Data types stored in the scenario class.
std::string name
Key name.
Filter that will only allow specified keys.
RiskFactorScenarioFilter(const RiskFactorKey &key, bool ignoreIndex=true)
Include only this risk factor.
bool allow(const RiskFactorKey &key) const override
Allow this key to be updated.
Filter that will only allow specified RiskFactorKey::KeyTypes.
RiskFactorTypeScenarioFilter(const std::vector< RiskFactorKey::KeyType > &factors)
Include any RiskFactorKey::KeyTypes.
std::vector< RiskFactorKey::KeyType > factors_
bool allow(const RiskFactorKey &key) const override
Allow this key to be updated.
A scenario filter can exclude certain key from updating the scenario.
SafeStack< Filter > filter
A Market class that can be updated by Scenarios.