[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[lmi-commits] [5089] Query product database with nondefault index pro re
From: |
Greg Chicares |
Subject: |
[lmi-commits] [5089] Query product database with nondefault index pro re nata |
Date: |
Sun, 01 Aug 2010 15:15:42 +0000 |
Revision: 5089
http://svn.sv.gnu.org/viewvc/?view=rev&root=lmi&revision=5089
Author: chicares
Date: 2010-08-01 15:15:42 +0000 (Sun, 01 Aug 2010)
Log Message:
-----------
Query product database with nondefault index pro re nata
Modified Paths:
--------------
lmi/trunk/ChangeLog
lmi/trunk/basicvalues.cpp
lmi/trunk/ihs_basicval.cpp
lmi/trunk/mec_server.cpp
Modified: lmi/trunk/ChangeLog
===================================================================
--- lmi/trunk/ChangeLog 2010-08-01 15:14:42 UTC (rev 5088)
+++ lmi/trunk/ChangeLog 2010-08-01 15:15:42 UTC (rev 5089)
@@ -26685,3 +26685,28 @@
Explicitly assert certain postconditions. See:
http://lists.nongnu.org/archive/html/lmi/2010-07/msg00037.html
+20100801T1217Z <address@hidden> [656]
+
+ dbindex.hpp
+ dbvalue.cpp
+Rectify names.
+
+20100801T1513Z <address@hidden> [656]
+
+ dbindex.hpp
+Offer the "named parameter idiom".
+
+20100801T1514Z <address@hidden> [656]
+
+ database.cpp
+ database.hpp
+ input_test.cpp
+Permit querying product database with nondefault index.
+
+20100801T1515Z <address@hidden> [656]
+
+ basicvalues.cpp
+ ihs_basicval.cpp
+ mec_server.cpp
+Query product database with nondefault index pro re nata.
+
Modified: lmi/trunk/basicvalues.cpp
===================================================================
--- lmi/trunk/basicvalues.cpp 2010-08-01 15:14:42 UTC (rev 5088)
+++ lmi/trunk/basicvalues.cpp 2010-08-01 15:15:42 UTC (rev 5089)
@@ -134,12 +134,8 @@
Outlay_ .reset(new modal_outlay (yare_input_));
Loads_ .reset(new Loads(*Database_, IsSubjectToIllustrationReg()));
- {
- yare_input yi_premtax(*Input_);
- yi_premtax.StateOfJurisdiction = GetPremiumTaxState();
- product_database db_premtax(yi_premtax);
- PremiumTaxRate_ = db_premtax.Query(DB_PremTaxRate);
- }
+ database_index index = Database_->index().state(GetPremiumTaxState());
+ PremiumTaxRate_ = Database_->Query(DB_PremTaxRate, index);
MinSpecAmt = Database_->Query(DB_MinSpecAmt);
MinWD = Database_->Query(DB_MinWd );
Modified: lmi/trunk/ihs_basicval.cpp
===================================================================
--- lmi/trunk/ihs_basicval.cpp 2010-08-01 15:14:42 UTC (rev 5088)
+++ lmi/trunk/ihs_basicval.cpp 2010-08-01 15:15:42 UTC (rev 5089)
@@ -842,12 +842,8 @@
PremiumTaxLoadIsTieredInStateOfDomicile_ =
StratifiedCharges_->premium_tax_is_tiered(GetStateOfDomicile());
PremiumTaxLoadIsTieredInPremiumTaxState_ =
StratifiedCharges_->premium_tax_is_tiered(GetPremiumTaxState());
- yare_input yi_premtax(*Input_);
- yi_premtax.StateOfJurisdiction = GetPremiumTaxState();
- product_database db_premtax(yi_premtax);
-
LowestPremiumTaxLoad_ = lowest_premium_tax_load
- (db_premtax
+ (*Database_
,*StratifiedCharges_
,GetPremiumTaxState()
,yare_input_.AmortizePremiumLoad
@@ -856,24 +852,22 @@
// TODO ?? It would be better not to constrain so many things
// not to vary by duration by using Query(enumerator).
- PremiumTaxRate_ = db_premtax.Query(DB_PremTaxRate);
- PremiumTaxLoad_ = db_premtax.Query(DB_PremTaxLoad);
+ database_index index = Database_->index().state(GetPremiumTaxState());
+ PremiumTaxRate_ = Database_->Query(DB_PremTaxRate ,
index);
+ PremiumTaxLoad_ = Database_->Query(DB_PremTaxLoad ,
index);
+ FirstYearPremiumRetaliationLimit_ = Database_->Query(DB_PremTaxRetalLimit,
index);
StateOfDomicile_ =
mc_state_from_string(ProductData_->datum("InsCoDomicile"));
{
- yare_input yi_domicile(*Input_);
- yi_domicile.StateOfJurisdiction = GetStateOfDomicile();
- product_database db_domicile(yi_domicile);
+ database_index index = Database_->index().state(GetStateOfDomicile());
DomiciliaryPremiumTaxLoad_ = 0.0;
if(!yare_input_.AmortizePremiumLoad)
{
- DomiciliaryPremiumTaxLoad_ = db_domicile.Query(DB_PremTaxLoad);
+ DomiciliaryPremiumTaxLoad_ = Database_->Query(DB_PremTaxLoad, index);
}
}
TestPremiumTaxLoadConsistency();
-
- FirstYearPremiumRetaliationLimit_ = db_premtax.Query(DB_PremTaxRetalLimit);
}
/// Lowest premium-tax load, for 7702 and 7702A purposes.
@@ -909,7 +903,8 @@
return z;
}
- z = db.Query(DB_PremTaxLoad);
+ database_index index = db.index().state(premium_tax_state);
+ z = db.Query(DB_PremTaxLoad, index);
if(!db.varies_by_state(DB_PremTaxLoad))
{
@@ -1678,16 +1673,11 @@
,mcenum_smoking smoking
) const
{
- yare_input YI(*Input_);
- YI.Gender = gender ;
- YI.Smoking = smoking;
-
- product_database TempDatabase(YI);
-
+ database_index index = Database_->index().gender(gender).smoking(smoking);
return GetActuarialTable
(TableFile
,TableID
- ,static_cast<long int>(TempDatabase.Query(TableID))
+ ,static_cast<long int>(Database_->Query(TableID, index))
);
}
Modified: lmi/trunk/mec_server.cpp
===================================================================
--- lmi/trunk/mec_server.cpp 2010-08-01 15:14:42 UTC (rev 5088)
+++ lmi/trunk/mec_server.cpp 2010-08-01 15:15:42 UTC (rev 5089)
@@ -302,17 +302,8 @@
;
}
- product_database db_premtax
- (ProductName
- ,Gender
- ,UnderwritingClass
- ,Smoking
- ,input.issue_age()
- ,GroupUnderwritingType
- ,PremiumTaxState
- );
double const premium_tax_load = lowest_premium_tax_load
- (db_premtax
+ (database
,stratified
,PremiumTaxState
,false
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [lmi-commits] [5089] Query product database with nondefault index pro re nata,
Greg Chicares <=