FArchive &FArchive::operator<< (const char *str) { if (str == NULL) { WriteCount (0); } else { DWORD size = strlen (str) + 1; WriteCount (size); Write (str, size - 1); } return *this; }
void WriteFullProcMLP::Loop() { std::cout << "Loop varSet = " << varSet << std::endl; addVariables(); FillMLP(varSet); WriteHeader(); WriteInput(); WriteCategory(); WriteCount("var1", "input", "trackSip2dSig"); //********Chunk for Combined BvsDUSG and BvsC starts*********** WriteNormalize(); WriteSplitters(); if (writeSplittersForNonMultiple) WriteSplittersForNonMultiple(); WriteLRx(); WriteLRall(); WriteLRsplit(); WriteOptional(); if (writeMatrices) {WriteMatrices(); WriteOutput("input", "jetPt"); return;} WriteProcMLP(mlp); WriteBiasNorm(procBiasNorm+tagVtx, "var1", procMLP+tagVtx, "var1"); WriteLRBias(procLike+tagVtx, "var1", procBiasNorm+tagVtx, "var1"); //********Chunk for Combined BvsDUSG and BvsC starts*********** if (Flavour != "Combined") { WriteOutput(procLike+tagVtx, "var1"); return; } tagVtx = "C"; //Need to reset Vector for ProcOptional Oprocess.clear(); Oid.clear(); //Need to reset mlp with the corresponding variables with C instead of "DUSG" tag FillMLP(varSet); //For combined xml, copy previuos structure from WriteNormalize to WriteLRBias // then add ProcLinear and output //**************Insert here Chunk for Combined: begin************** WriteNormalize(); WriteSplitters(); if (writeSplittersForNonMultiple) WriteSplittersForNonMultiple(); WriteLRx(); WriteLRall(); WriteLRsplit(); WriteOptional(); if (writeMatrices) {WriteMatrices(); WriteOutput("input", "jetPt"); return;} WriteProcMLP(mlp); WriteBiasNorm(procBiasNorm+tagVtx, "var1", procMLP+tagVtx, "var1"); WriteLRBias(procLike+tagVtx, "var1", procBiasNorm+tagVtx, "var1"); //**************Insert here Chunk for Combined: end**************** WriteLinear(); WriteOutput(procLinear, "var1"); }