ROOT logo
//____________________________________________________________________
//
// $Id$
//
// Read in the geometry, and get alignment data from CDB, and  apply
// that to the geometry. 
//
/** Print alignment to a geometry 
    @ingroup simple_script
 */
#include <iomanip>
void
PrintAlignment()
{
  AliCDBManager* cdb   = AliCDBManager::Instance();
  cdb->SetDefaultStorage("local://$ALICE_ROOT/OCDB");
  AliCDBEntry*   align = cdb->Get("FMD/Align/Data");
  if (!align) {
    Error("PrintAlignment","didn't alignment data from CDB");
    return;
  }
  
  TClonesArray* array = dynamic_cast<TClonesArray*>(align->GetObject());
  if (!array) {
    Warning("PrintAlignement", "Invalid align data from CDB");
    return;
  }
  Int_t nAlign = array->GetEntries();
  for (Int_t i = 0; i < nAlign; i++) {
    AliAlignObjParams* a = static_cast<AliAlignObjParams*>(array->At(i));
    Double_t ang[3];
    Double_t trans[3];
    a->GetAngles(ang);
    a->GetTranslation(trans);
    std::cout << a->GetVolPath() << "\n" 
	      << "  translation: "
	      << "(" << std::setw(12) << trans[0] 
	      << "," << std::setw(12) << trans[1] 
	      << "," << std::setw(12) << trans[2] << ")\n"
	      << "  rotation:    "
	      << "(" << std::setw(12) << ang[0] 
	      << "," << std::setw(12) << ang[1] 
	      << "," << std::setw(12) << ang[2]  << ")" << std::endl;
    // a->Print();
  }
}
//____________________________________________________________________
//
// EOF
// 
 PrintAlignment.C:1
 PrintAlignment.C:2
 PrintAlignment.C:3
 PrintAlignment.C:4
 PrintAlignment.C:5
 PrintAlignment.C:6
 PrintAlignment.C:7
 PrintAlignment.C:8
 PrintAlignment.C:9
 PrintAlignment.C:10
 PrintAlignment.C:11
 PrintAlignment.C:12
 PrintAlignment.C:13
 PrintAlignment.C:14
 PrintAlignment.C:15
 PrintAlignment.C:16
 PrintAlignment.C:17
 PrintAlignment.C:18
 PrintAlignment.C:19
 PrintAlignment.C:20
 PrintAlignment.C:21
 PrintAlignment.C:22
 PrintAlignment.C:23
 PrintAlignment.C:24
 PrintAlignment.C:25
 PrintAlignment.C:26
 PrintAlignment.C:27
 PrintAlignment.C:28
 PrintAlignment.C:29
 PrintAlignment.C:30
 PrintAlignment.C:31
 PrintAlignment.C:32
 PrintAlignment.C:33
 PrintAlignment.C:34
 PrintAlignment.C:35
 PrintAlignment.C:36
 PrintAlignment.C:37
 PrintAlignment.C:38
 PrintAlignment.C:39
 PrintAlignment.C:40
 PrintAlignment.C:41
 PrintAlignment.C:42
 PrintAlignment.C:43
 PrintAlignment.C:44
 PrintAlignment.C:45
 PrintAlignment.C:46
 PrintAlignment.C:47
 PrintAlignment.C:48
 PrintAlignment.C:49
 PrintAlignment.C:50
 PrintAlignment.C:51