638 <<
":" <<
tMIN.minute() <<
"." <<
tMIN.second() << std::endl;
641 session->transaction().start(
true);
642 coral::ISchema& schema = session->nominalSchema();
643 std::cout <<
">> creating FEB object..." << std::endl;
646 coral::IQuery* queryFVTH1 = schema.newQuery();
647 queryFVTH1->addToTableList(
"RPCFEB");
648 queryFVTH1->addToOutputList(
"RPCFEB.DPID",
"DPID");
649 queryFVTH1->addToOutputList(
"RPCFEB.CHANGE_DATE",
"TSTAMP");
650 queryFVTH1->addToOutputList(
"RPCFEB.VTH1",
"VTH1");
653 coral::IQuery* queryFVTH2 = schema.newQuery();
654 queryFVTH2->addToTableList(
"RPCFEB");
655 queryFVTH2->addToOutputList(
"RPCFEB.DPID",
"DPID");
656 queryFVTH2->addToOutputList(
"RPCFEB.CHANGE_DATE",
"TSTAMP");
657 queryFVTH2->addToOutputList(
"RPCFEB.VTH2",
"VTH2");
660 coral::IQuery* queryFVTH3 = schema.newQuery();
661 queryFVTH3->addToTableList(
"RPCFEB");
662 queryFVTH3->addToOutputList(
"RPCFEB.DPID",
"DPID");
663 queryFVTH3->addToOutputList(
"RPCFEB.CHANGE_DATE",
"TSTAMP");
664 queryFVTH3->addToOutputList(
"RPCFEB.VTH3",
"VTH3");
667 coral::IQuery* queryFVTH4 = schema.newQuery();
668 queryFVTH4->addToTableList(
"RPCFEB");
669 queryFVTH4->addToOutputList(
"RPCFEB.DPID",
"DPID");
670 queryFVTH4->addToOutputList(
"RPCFEB.CHANGE_DATE",
"TSTAMP");
671 queryFVTH4->addToOutputList(
"RPCFEB.VTH4",
"VTH4");
674 coral::IQuery* queryFVMON1 = schema.newQuery();
675 queryFVMON1->addToTableList(
"RPCFEB");
676 queryFVMON1->addToOutputList(
"RPCFEB.DPID",
"DPID");
677 queryFVMON1->addToOutputList(
"RPCFEB.CHANGE_DATE",
"TSTAMP");
678 queryFVMON1->addToOutputList(
"RPCFEB.VMON1",
"VMON1");
681 coral::IQuery* queryFVMON2 = schema.newQuery();
682 queryFVMON2->addToTableList(
"RPCFEB");
683 queryFVMON2->addToOutputList(
"RPCFEB.DPID",
"DPID");
684 queryFVMON2->addToOutputList(
"RPCFEB.CHANGE_DATE",
"TSTAMP");
685 queryFVMON2->addToOutputList(
"RPCFEB.VMON2",
"VMON2");
688 coral::IQuery* queryFVMON3 = schema.newQuery();
689 queryFVMON3->addToTableList(
"RPCFEB");
690 queryFVMON3->addToOutputList(
"RPCFEB.DPID",
"DPID");
691 queryFVMON3->addToOutputList(
"RPCFEB.CHANGE_DATE",
"TSTAMP");
692 queryFVMON3->addToOutputList(
"RPCFEB.VMON3",
"VMON3");
695 coral::IQuery* queryFVMON4 = schema.newQuery();
696 queryFVMON4->addToTableList(
"RPCFEB");
697 queryFVMON4->addToOutputList(
"RPCFEB.DPID",
"DPID");
698 queryFVMON4->addToOutputList(
"RPCFEB.CHANGE_DATE",
"TSTAMP");
699 queryFVMON4->addToOutputList(
"RPCFEB.VMON4",
"VMON4");
702 coral::IQuery* queryFTEMP1 = schema.newQuery();
703 queryFTEMP1->addToTableList(
"RPCFEB");
704 queryFTEMP1->addToOutputList(
"RPCFEB.DPID",
"DPID");
705 queryFTEMP1->addToOutputList(
"RPCFEB.CHANGE_DATE",
"TSTAMP");
706 queryFTEMP1->addToOutputList(
"RPCFEB.TEMPERATURE1",
"TEMP1");
709 coral::IQuery* queryFTEMP2 = schema.newQuery();
710 queryFTEMP2->addToTableList(
"RPCFEB");
711 queryFTEMP2->addToOutputList(
"RPCFEB.DPID",
"DPID");
712 queryFTEMP2->addToOutputList(
"RPCFEB.CHANGE_DATE",
"TSTAMP");
713 queryFTEMP2->addToOutputList(
"RPCFEB.TEMPERATURE2",
"TEMP2");
716 std::vector<RPCObFebmap::Feb_Item> febarray;
717 coral::TimeStamp tlast =
tMIN;
721 <<
":" <<
tMAX.minute() <<
"." <<
tMAX.second() << std::endl;
722 std::cout <<
"Processing VTH1..." << std::endl;
723 coral::AttributeList conditionData;
724 conditionData.extend<coral::TimeStamp>(
"tmin");
725 conditionData.extend<coral::TimeStamp>(
"tmax");
726 conditionData[
"tmin"].data<coral::TimeStamp>() =
tMIN;
727 conditionData[
"tmax"].data<coral::TimeStamp>() =
tMAX;
728 std::string conditionVTH1 =
"RPCFEB.VTH1 IS NOT NULL AND RPCFEB.CHANGE_DATE >:tmin AND RPCFEB.CHANGE_DATE <:tmax";
729 queryFVTH1->setCondition(conditionVTH1, conditionData);
730 coral::ICursor& cursorFVTH1 = queryFVTH1->execute();
731 while (cursorFVTH1.next()) {
746 const coral::AttributeList& row = cursorFVTH1.currentRow();
747 float idoub = row[
"DPID"].data<
float>();
748 int id =
static_cast<int>(idoub);
749 float vth1 = row[
"VTH1"].data<
float>();
750 coral::TimeStamp ts = row[
"TSTAMP"].data<coral::TimeStamp>();
751 int ndate = (ts.day() * 10000) + (ts.month() * 100) + (ts.year() - 2000);
752 int ntime = (ts.hour() * 10000) + (ts.minute() * 100) + ts.second();
757 febarray.push_back(Itemp);
760 std::cout <<
">> Processing VTH1..." << std::endl;
761 coral::AttributeList conditionData;
762 conditionData.extend<coral::TimeStamp>(
"tmin");
763 conditionData[
"tmin"].data<coral::TimeStamp>() =
tMIN;
764 std::string conditionVTH1 =
"RPCFEB.VTH1 IS NOT NULL AND RPCFEB.CHANGE_DATE >:tmin";
765 queryFVTH1->setCondition(conditionVTH1, conditionData);
766 coral::ICursor& cursorFVTH1 = queryFVTH1->execute();
767 while (cursorFVTH1.next()) {
782 const coral::AttributeList& row = cursorFVTH1.currentRow();
783 float idoub = row[
"DPID"].data<
float>();
784 int id =
static_cast<int>(idoub);
785 float vth1 = row[
"VTH1"].data<
float>();
786 coral::TimeStamp ts = row[
"TSTAMP"].data<coral::TimeStamp>();
787 int ndate = (ts.day() * 10000) + (ts.month() * 100) + (ts.year() - 2000);
788 int ntime = (ts.hour() * 10000) + (ts.minute() * 100) + ts.second();
793 febarray.push_back(Itemp);
799 std::cout <<
"Processing VTH2..." << std::endl;
800 coral::AttributeList conditionData;
801 conditionData.extend<coral::TimeStamp>(
"tmin");
802 conditionData.extend<coral::TimeStamp>(
"tmax");
803 conditionData[
"tmin"].data<coral::TimeStamp>() =
tMIN;
804 conditionData[
"tmax"].data<coral::TimeStamp>() =
tMAX;
805 std::string conditionVTH2 =
"RPCFEB.VTH2 IS NOT NULL AND RPCFEB.CHANGE_DATE >:tmin AND RPCFEB.CHANGE_DATE <:tmax";
806 queryFVTH2->setCondition(conditionVTH2, conditionData);
807 coral::ICursor& cursorFVTH2 = queryFVTH2->execute();
808 while (cursorFVTH2.next()) {
823 const coral::AttributeList& row = cursorFVTH2.currentRow();
824 float idoub = row[
"DPID"].data<
float>();
825 int id =
static_cast<int>(idoub);
826 float vth2 = row[
"VTH2"].data<
float>();
827 coral::TimeStamp ts = row[
"TSTAMP"].data<coral::TimeStamp>();
828 int ndate = (ts.day() * 10000) + (ts.month() * 100) + (ts.year() - 2000);
829 int ntime = (ts.hour() * 10000) + (ts.minute() * 100) + ts.second();
834 febarray.push_back(Itemp);
837 std::cout <<
">> Processing VTH2..." << std::endl;
838 coral::AttributeList conditionData;
839 conditionData.extend<coral::TimeStamp>(
"tmin");
840 conditionData[
"tmin"].data<coral::TimeStamp>() =
tMIN;
841 std::string conditionVTH2 =
"RPCFEB.VTH2 IS NOT NULL AND RPCFEB.CHANGE_DATE >:tmin";
842 queryFVTH2->setCondition(conditionVTH2, conditionData);
843 coral::ICursor& cursorFVTH2 = queryFVTH2->execute();
844 while (cursorFVTH2.next()) {
859 const coral::AttributeList& row = cursorFVTH2.currentRow();
860 float idoub = row[
"DPID"].data<
float>();
861 int id =
static_cast<int>(idoub);
862 float vth2 = row[
"VTH2"].data<
float>();
863 coral::TimeStamp ts = row[
"TSTAMP"].data<coral::TimeStamp>();
864 int ndate = (ts.day() * 10000) + (ts.month() * 100) + (ts.year() - 2000);
865 int ntime = (ts.hour() * 10000) + (ts.minute() * 100) + ts.second();
870 febarray.push_back(Itemp);
876 std::cout <<
"Processing VTH3..." << std::endl;
877 coral::AttributeList conditionData;
878 conditionData.extend<coral::TimeStamp>(
"tmin");
879 conditionData.extend<coral::TimeStamp>(
"tmax");
880 conditionData[
"tmin"].data<coral::TimeStamp>() =
tMIN;
881 conditionData[
"tmax"].data<coral::TimeStamp>() =
tMAX;
882 std::string conditionVTH3 =
"RPCFEB.VTH3 IS NOT NULL AND RPCFEB.CHANGE_DATE >:tmin AND RPCFEB.CHANGE_DATE <:tmax";
883 queryFVTH3->setCondition(conditionVTH3, conditionData);
884 coral::ICursor& cursorFVTH3 = queryFVTH3->execute();
885 while (cursorFVTH3.next()) {
900 const coral::AttributeList& row = cursorFVTH3.currentRow();
901 float idoub = row[
"DPID"].data<
float>();
902 int id =
static_cast<int>(idoub);
903 float vth3 = row[
"VTH3"].data<
float>();
904 coral::TimeStamp ts = row[
"TSTAMP"].data<coral::TimeStamp>();
905 int ndate = (ts.day() * 10000) + (ts.month() * 100) + (ts.year() - 2000);
906 int ntime = (ts.hour() * 10000) + (ts.minute() * 100) + ts.second();
911 febarray.push_back(Itemp);
914 std::cout <<
">> Processing VTH3..." << std::endl;
915 coral::AttributeList conditionData;
916 conditionData.extend<coral::TimeStamp>(
"tmin");
917 conditionData[
"tmin"].data<coral::TimeStamp>() =
tMIN;
918 std::string conditionVTH3 =
"RPCFEB.VTH3 IS NOT NULL AND RPCFEB.CHANGE_DATE >:tmin";
919 queryFVTH3->setCondition(conditionVTH3, conditionData);
920 coral::ICursor& cursorFVTH3 = queryFVTH3->execute();
921 while (cursorFVTH3.next()) {
936 const coral::AttributeList& row = cursorFVTH3.currentRow();
937 float idoub = row[
"DPID"].data<
float>();
938 int id =
static_cast<int>(idoub);
939 float vth3 = row[
"VTH3"].data<
float>();
940 coral::TimeStamp ts = row[
"TSTAMP"].data<coral::TimeStamp>();
941 int ndate = (ts.day() * 10000) + (ts.month() * 100) + (ts.year() - 2000);
942 int ntime = (ts.hour() * 10000) + (ts.minute() * 100) + ts.second();
947 febarray.push_back(Itemp);
953 std::cout <<
"Processing VTH4..." << std::endl;
954 coral::AttributeList conditionData;
955 conditionData.extend<coral::TimeStamp>(
"tmin");
956 conditionData.extend<coral::TimeStamp>(
"tmax");
957 conditionData[
"tmin"].data<coral::TimeStamp>() =
tMIN;
958 conditionData[
"tmax"].data<coral::TimeStamp>() =
tMAX;
959 std::string conditionVTH4 =
"RPCFEB.VTH4 IS NOT NULL AND RPCFEB.CHANGE_DATE >:tmin AND RPCFEB.CHANGE_DATE <:tmax";
960 queryFVTH4->setCondition(conditionVTH4, conditionData);
961 coral::ICursor& cursorFVTH4 = queryFVTH4->execute();
962 while (cursorFVTH4.next()) {
977 const coral::AttributeList& row = cursorFVTH4.currentRow();
978 float idoub = row[
"DPID"].data<
float>();
979 int id =
static_cast<int>(idoub);
980 float vth4 = row[
"VTH4"].data<
float>();
981 coral::TimeStamp ts = row[
"TSTAMP"].data<coral::TimeStamp>();
982 int ndate = (ts.day() * 10000) + (ts.month() * 100) + (ts.year() - 2000);
983 int ntime = (ts.hour() * 10000) + (ts.minute() * 100) + ts.second();
988 febarray.push_back(Itemp);
991 std::cout <<
">> Processing VTH4..." << std::endl;
992 coral::AttributeList conditionData;
993 conditionData.extend<coral::TimeStamp>(
"tmin");
994 conditionData[
"tmin"].data<coral::TimeStamp>() =
tMIN;
995 std::string conditionVTH4 =
"RPCFEB.VTH4 IS NOT NULL AND RPCFEB.CHANGE_DATE >:tmin";
996 queryFVTH4->setCondition(conditionVTH4, conditionData);
997 coral::ICursor& cursorFVTH4 = queryFVTH4->execute();
998 while (cursorFVTH4.next()) {
1013 const coral::AttributeList& row = cursorFVTH4.currentRow();
1014 float idoub = row[
"DPID"].data<
float>();
1015 int id =
static_cast<int>(idoub);
1016 float vth4 = row[
"VTH4"].data<
float>();
1017 coral::TimeStamp ts = row[
"TSTAMP"].data<coral::TimeStamp>();
1018 int ndate = (ts.day() * 10000) + (ts.month() * 100) + (ts.year() - 2000);
1019 int ntime = (ts.hour() * 10000) + (ts.minute() * 100) + ts.second();
1024 febarray.push_back(Itemp);
1030 std::cout <<
"Processing VMON1..." << std::endl;
1031 coral::AttributeList conditionData;
1032 conditionData.extend<coral::TimeStamp>(
"tmin");
1033 conditionData.extend<coral::TimeStamp>(
"tmax");
1034 conditionData[
"tmin"].data<coral::TimeStamp>() =
tMIN;
1035 conditionData[
"tmax"].data<coral::TimeStamp>() =
tMAX;
1036 std::string conditionVMON1 =
"RPCFEB.VMON1 IS NOT NULL AND RPCFEB.CHANGE_DATE >:tmin AND RPCFEB.CHANGE_DATE <:tmax";
1037 queryFVMON1->setCondition(conditionVMON1, conditionData);
1038 coral::ICursor& cursorFVMON1 = queryFVMON1->execute();
1039 while (cursorFVMON1.next()) {
1054 const coral::AttributeList& row = cursorFVMON1.currentRow();
1055 float idoub = row[
"DPID"].data<
float>();
1056 int id =
static_cast<int>(idoub);
1057 float vmon1 = row[
"VMON1"].data<
float>();
1058 coral::TimeStamp ts = row[
"TSTAMP"].data<coral::TimeStamp>();
1059 int ndate = (ts.day() * 10000) + (ts.month() * 100) + (ts.year() - 2000);
1060 int ntime = (ts.hour() * 10000) + (ts.minute() * 100) + ts.second();
1062 Itemp.
vmon1 = vmon1;
1065 febarray.push_back(Itemp);
1068 std::cout <<
">> Processing VMON1..." << std::endl;
1069 coral::AttributeList conditionData;
1070 conditionData.extend<coral::TimeStamp>(
"tmin");
1071 conditionData[
"tmin"].data<coral::TimeStamp>() =
tMIN;
1072 std::string conditionVMON1 =
"RPCFEB.VMON1 IS NOT NULL AND RPCFEB.CHANGE_DATE >:tmin";
1073 queryFVMON1->setCondition(conditionVMON1, conditionData);
1074 coral::ICursor& cursorFVMON1 = queryFVMON1->execute();
1075 while (cursorFVMON1.next()) {
1090 const coral::AttributeList& row = cursorFVMON1.currentRow();
1091 float idoub = row[
"DPID"].data<
float>();
1092 int id =
static_cast<int>(idoub);
1093 float vmon1 = row[
"VMON1"].data<
float>();
1094 coral::TimeStamp ts = row[
"TSTAMP"].data<coral::TimeStamp>();
1095 int ndate = (ts.day() * 10000) + (ts.month() * 100) + (ts.year() - 2000);
1096 int ntime = (ts.hour() * 10000) + (ts.minute() * 100) + ts.second();
1098 Itemp.
vmon1 = vmon1;
1101 febarray.push_back(Itemp);
1107 std::cout <<
"Processing VMON2..." << std::endl;
1108 coral::AttributeList conditionData;
1109 conditionData.extend<coral::TimeStamp>(
"tmin");
1110 conditionData.extend<coral::TimeStamp>(
"tmax");
1111 conditionData[
"tmin"].data<coral::TimeStamp>() =
tMIN;
1112 conditionData[
"tmax"].data<coral::TimeStamp>() =
tMAX;
1113 std::string conditionVMON2 =
"RPCFEB.VMON2 IS NOT NULL AND RPCFEB.CHANGE_DATE >:tmin AND RPCFEB.CHANGE_DATE <:tmax";
1114 queryFVMON2->setCondition(conditionVMON2, conditionData);
1115 coral::ICursor& cursorFVMON2 = queryFVMON2->execute();
1116 while (cursorFVMON2.next()) {
1131 const coral::AttributeList& row = cursorFVMON2.currentRow();
1132 float idoub = row[
"DPID"].data<
float>();
1133 int id =
static_cast<int>(idoub);
1134 float vmon2 = row[
"VMON2"].data<
float>();
1135 coral::TimeStamp ts = row[
"TSTAMP"].data<coral::TimeStamp>();
1136 int ndate = (ts.day() * 10000) + (ts.month() * 100) + (ts.year() - 2000);
1137 int ntime = (ts.hour() * 10000) + (ts.minute() * 100) + ts.second();
1139 Itemp.
vmon2 = vmon2;
1142 febarray.push_back(Itemp);
1145 std::cout <<
">> Processing VMON2..." << std::endl;
1146 coral::AttributeList conditionData;
1147 conditionData.extend<coral::TimeStamp>(
"tmin");
1148 conditionData[
"tmin"].data<coral::TimeStamp>() =
tMIN;
1149 std::string conditionVMON2 =
"RPCFEB.VMON2 IS NOT NULL AND RPCFEB.CHANGE_DATE >:tmin";
1150 queryFVMON2->setCondition(conditionVMON2, conditionData);
1151 coral::ICursor& cursorFVMON2 = queryFVMON2->execute();
1152 while (cursorFVMON2.next()) {
1167 const coral::AttributeList& row = cursorFVMON2.currentRow();
1168 float idoub = row[
"DPID"].data<
float>();
1169 int id =
static_cast<int>(idoub);
1170 float vmon2 = row[
"VMON2"].data<
float>();
1171 coral::TimeStamp ts = row[
"TSTAMP"].data<coral::TimeStamp>();
1172 int ndate = (ts.day() * 10000) + (ts.month() * 100) + (ts.year() - 2000);
1173 int ntime = (ts.hour() * 10000) + (ts.minute() * 100) + ts.second();
1175 Itemp.
vmon2 = vmon2;
1178 febarray.push_back(Itemp);
1184 std::cout <<
"Processing VMON3..." << std::endl;
1185 coral::AttributeList conditionData;
1186 conditionData.extend<coral::TimeStamp>(
"tmin");
1187 conditionData.extend<coral::TimeStamp>(
"tmax");
1188 conditionData[
"tmin"].data<coral::TimeStamp>() =
tMIN;
1189 conditionData[
"tmax"].data<coral::TimeStamp>() =
tMAX;
1190 std::string conditionVMON3 =
"RPCFEB.VMON3 IS NOT NULL AND RPCFEB.CHANGE_DATE >:tmin AND RPCFEB.CHANGE_DATE <:tmax";
1191 queryFVMON3->setCondition(conditionVMON3, conditionData);
1192 coral::ICursor& cursorFVMON3 = queryFVMON3->execute();
1193 while (cursorFVMON3.next()) {
1208 const coral::AttributeList& row = cursorFVMON3.currentRow();
1209 float idoub = row[
"DPID"].data<
float>();
1210 int id =
static_cast<int>(idoub);
1211 float vmon3 = row[
"VMON3"].data<
float>();
1212 coral::TimeStamp ts = row[
"TSTAMP"].data<coral::TimeStamp>();
1213 int ndate = (ts.day() * 10000) + (ts.month() * 100) + (ts.year() - 2000);
1214 int ntime = (ts.hour() * 10000) + (ts.minute() * 100) + ts.second();
1216 Itemp.
vmon3 = vmon3;
1219 febarray.push_back(Itemp);
1222 std::cout <<
">> Processing VMON3..." << std::endl;
1223 coral::AttributeList conditionData;
1224 conditionData.extend<coral::TimeStamp>(
"tmin");
1225 conditionData[
"tmin"].data<coral::TimeStamp>() =
tMIN;
1226 std::string conditionVMON3 =
"RPCFEB.VMON3 IS NOT NULL AND RPCFEB.CHANGE_DATE >:tmin";
1227 queryFVMON3->setCondition(conditionVMON3, conditionData);
1228 coral::ICursor& cursorFVMON3 = queryFVMON3->execute();
1229 while (cursorFVMON3.next()) {
1244 const coral::AttributeList& row = cursorFVMON3.currentRow();
1245 float idoub = row[
"DPID"].data<
float>();
1246 int id =
static_cast<int>(idoub);
1247 float vmon3 = row[
"VMON3"].data<
float>();
1248 coral::TimeStamp ts = row[
"TSTAMP"].data<coral::TimeStamp>();
1249 int ndate = (ts.day() * 10000) + (ts.month() * 100) + (ts.year() - 2000);
1250 int ntime = (ts.hour() * 10000) + (ts.minute() * 100) + ts.second();
1252 Itemp.
vmon3 = vmon3;
1255 febarray.push_back(Itemp);
1261 std::cout <<
"Processing VMON4..." << std::endl;
1262 coral::AttributeList conditionData;
1263 conditionData.extend<coral::TimeStamp>(
"tmin");
1264 conditionData.extend<coral::TimeStamp>(
"tmax");
1265 conditionData[
"tmin"].data<coral::TimeStamp>() =
tMIN;
1266 conditionData[
"tmax"].data<coral::TimeStamp>() =
tMAX;
1267 std::string conditionVMON4 =
"RPCFEB.VMON4 IS NOT NULL AND RPCFEB.CHANGE_DATE >:tmin AND RPCFEB.CHANGE_DATE <:tmax";
1268 queryFVMON4->setCondition(conditionVMON4, conditionData);
1269 coral::ICursor& cursorFVMON4 = queryFVMON4->execute();
1270 while (cursorFVMON4.next()) {
1285 const coral::AttributeList& row = cursorFVMON4.currentRow();
1286 float idoub = row[
"DPID"].data<
float>();
1287 int id =
static_cast<int>(idoub);
1288 float vmon4 = row[
"VMON4"].data<
float>();
1289 coral::TimeStamp ts = row[
"TSTAMP"].data<coral::TimeStamp>();
1290 int ndate = (ts.day() * 10000) + (ts.month() * 100) + (ts.year() - 2000);
1291 int ntime = (ts.hour() * 10000) + (ts.minute() * 100) + ts.second();
1293 Itemp.
vmon4 = vmon4;
1296 febarray.push_back(Itemp);
1299 std::cout <<
">> Processing VMON4..." << std::endl;
1300 coral::AttributeList conditionData;
1301 conditionData.extend<coral::TimeStamp>(
"tmin");
1302 conditionData[
"tmin"].data<coral::TimeStamp>() =
tMIN;
1303 std::string conditionVMON4 =
"RPCFEB.VMON4 IS NOT NULL AND RPCFEB.CHANGE_DATE >:tmin";
1304 queryFVMON4->setCondition(conditionVMON4, conditionData);
1305 coral::ICursor& cursorFVMON4 = queryFVMON4->execute();
1306 while (cursorFVMON4.next()) {
1321 const coral::AttributeList& row = cursorFVMON4.currentRow();
1322 float idoub = row[
"DPID"].data<
float>();
1323 int id =
static_cast<int>(idoub);
1324 float vmon4 = row[
"VMON4"].data<
float>();
1325 coral::TimeStamp ts = row[
"TSTAMP"].data<coral::TimeStamp>();
1326 int ndate = (ts.day() * 10000) + (ts.month() * 100) + (ts.year() - 2000);
1327 int ntime = (ts.hour() * 10000) + (ts.minute() * 100) + ts.second();
1329 Itemp.
vmon4 = vmon4;
1332 febarray.push_back(Itemp);
1338 std::cout <<
"Processing TEMP1..." << std::endl;
1339 coral::AttributeList conditionData;
1340 conditionData.extend<coral::TimeStamp>(
"tmin");
1341 conditionData.extend<coral::TimeStamp>(
"tmax");
1342 conditionData[
"tmin"].data<coral::TimeStamp>() =
tMIN;
1343 conditionData[
"tmax"].data<coral::TimeStamp>() =
tMAX;
1345 "RPCFEB.TEMPERATURE1 IS NOT NULL AND RPCFEB.CHANGE_DATE >:tmin AND RPCFEB.CHANGE_DATE <:tmax";
1346 queryFTEMP1->setCondition(conditionTEMP1, conditionData);
1347 coral::ICursor& cursorFTEMP1 = queryFTEMP1->execute();
1348 while (cursorFTEMP1.next()) {
1363 const coral::AttributeList& row = cursorFTEMP1.currentRow();
1364 float idoub = row[
"DPID"].data<
float>();
1365 int id =
static_cast<int>(idoub);
1366 float temp1 = row[
"TEMP1"].data<
float>();
1367 coral::TimeStamp ts = row[
"TSTAMP"].data<coral::TimeStamp>();
1368 int ndate = (ts.day() * 10000) + (ts.month() * 100) + (ts.year() - 2000);
1369 int ntime = (ts.hour() * 10000) + (ts.minute() * 100) + ts.second();
1371 Itemp.
temp1 = temp1;
1374 febarray.push_back(Itemp);
1377 std::cout <<
">> Processing TEMP1..." << std::endl;
1378 coral::AttributeList conditionData;
1379 conditionData.extend<coral::TimeStamp>(
"tmin");
1380 conditionData[
"tmin"].data<coral::TimeStamp>() =
tMIN;
1381 std::string conditionTEMP1 =
"RPCFEB.TEMPERATURE1 IS NOT NULL AND RPCFEB.CHANGE_DATE >:tmin";
1382 queryFTEMP1->setCondition(conditionTEMP1, conditionData);
1383 coral::ICursor& cursorFTEMP1 = queryFTEMP1->execute();
1384 while (cursorFTEMP1.next()) {
1399 const coral::AttributeList& row = cursorFTEMP1.currentRow();
1400 float idoub = row[
"DPID"].data<
float>();
1401 int id =
static_cast<int>(idoub);
1402 float temp1 = row[
"TEMP1"].data<
float>();
1403 coral::TimeStamp ts = row[
"TSTAMP"].data<coral::TimeStamp>();
1404 int ndate = (ts.day() * 10000) + (ts.month() * 100) + (ts.year() - 2000);
1405 int ntime = (ts.hour() * 10000) + (ts.minute() * 100) + ts.second();
1407 Itemp.
temp1 = temp1;
1410 febarray.push_back(Itemp);
1416 std::cout <<
"Processing TEMP2..." << std::endl;
1417 coral::AttributeList conditionData;
1418 conditionData.extend<coral::TimeStamp>(
"tmin");
1419 conditionData.extend<coral::TimeStamp>(
"tmax");
1420 conditionData[
"tmin"].data<coral::TimeStamp>() =
tMIN;
1421 conditionData[
"tmax"].data<coral::TimeStamp>() =
tMAX;
1423 "RPCFEB.TEMPERATURE2 IS NOT NULL AND RPCFEB.CHANGE_DATE >:tmin AND RPCFEB.CHANGE_DATE <:tmax";
1424 queryFTEMP2->setCondition(conditionTEMP2, conditionData);
1425 coral::ICursor& cursorFTEMP2 = queryFTEMP2->execute();
1426 while (cursorFTEMP2.next()) {
1441 const coral::AttributeList& row = cursorFTEMP2.currentRow();
1442 float idoub = row[
"DPID"].data<
float>();
1443 int id =
static_cast<int>(idoub);
1444 float temp2 = row[
"TEMP2"].data<
float>();
1445 coral::TimeStamp ts = row[
"TSTAMP"].data<coral::TimeStamp>();
1446 int ndate = (ts.day() * 10000) + (ts.month() * 100) + (ts.year() - 2000);
1447 int ntime = (ts.hour() * 10000) + (ts.minute() * 100) + ts.second();
1449 Itemp.
temp2 = temp2;
1452 febarray.push_back(Itemp);
1455 std::cout <<
">> Processing TEMP2..." << std::endl;
1456 coral::AttributeList conditionData;
1457 conditionData.extend<coral::TimeStamp>(
"tmin");
1458 conditionData[
"tmin"].data<coral::TimeStamp>() =
tMIN;
1459 std::string conditionTEMP2 =
"RPCFEB.TEMPERATURE2 IS NOT NULL AND RPCFEB.CHANGE_DATE >:tmin";
1460 queryFTEMP2->setCondition(conditionTEMP2, conditionData);
1461 coral::ICursor& cursorFTEMP2 = queryFTEMP2->execute();
1462 while (cursorFTEMP2.next()) {
1477 const coral::AttributeList& row = cursorFTEMP2.currentRow();
1478 float idoub = row[
"DPID"].data<
float>();
1479 int id =
static_cast<int>(idoub);
1480 float temp2 = row[
"TEMP2"].data<
float>();
1481 coral::TimeStamp ts = row[
"TSTAMP"].data<coral::TimeStamp>();
1482 int ndate = (ts.day() * 10000) + (ts.month() * 100) + (ts.year() - 2000);
1483 int ntime = (ts.hour() * 10000) + (ts.minute() * 100) + ts.second();
1485 Itemp.
temp2 = temp2;
1488 febarray.push_back(Itemp);
1492 std::cout <<
">> FEB array --> size: " << febarray.size() <<
" >> done." << std::endl;
1498 session->transaction().commit();
coral::TimeStamp UTtoT(long long utime)
coral::ISession * connect(const std::string &connectionString, const std::string &userName, const std::string &password)
std::string m_connectionString