29 {
30
31 MsgStream log(
msgSvc(), name());
32
33 log << MSG::INFO << "creating DTag sub Algorithm" << endreq;
34
35 StatusCode sc;
36
37
38
39
40 if(m_recD0) {
41 sc = createSubAlgorithm("NeutralDReconstruction", "NeutralDReconstruction", m_NeutralDReconstruction);
42 if(sc.isFailure()) {
43 log << MSG::ERROR << "Error while creating D0Reconstruction" << endreq;
44 return StatusCode::FAILURE;
45 }
46 }
47
48 if(m_recDp) {
49 sc = createSubAlgorithm("ChargedDReconstruction", "ChargedDReconstruction", m_ChargedDReconstruction);
50 if(sc.isFailure()) {
51 log << MSG::ERROR << "Error while creating D+Reconstruction" << endreq;
52 return StatusCode::FAILURE;
53 }
54 }
55
56 if(m_recDs) {
57 sc = createSubAlgorithm("DsReconstruction", "DsReconstruction", m_DsReconstruction);
58 if(sc.isFailure()) {
59 log << MSG::ERROR << "Error while creating DsReconstruction" << endreq;
60 return StatusCode::FAILURE;
61 }
62 }
63
64
65 if(m_recLc) {
66 sc = createSubAlgorithm("LambdaCReconstruction", "LambdaCReconstruction", m_LambdaCReconstruction);
67 if(sc.isFailure()) {
68 log << MSG::ERROR << "Error while creating LcReconstruction" << endreq;
69 return StatusCode::FAILURE;
70 }
71 }
72
73 log << MSG::INFO << "successfully return from initialize()" <<endmsg;
74 return StatusCode::SUCCESS;
75
76}