|
// // // // // $Id: BrDbParameter.cxx,v 1.3 2001/10/08 10:40:48 cholm Exp $ // $Author: cholm $ // $Date: 2001/10/08 10:40:48 $ // $Copyright: 2000 Brahms Collaboration // #include <BrDbParameter.h> #ifndef BRAT_BrException #include "BrException.h" #endif #ifndef WIN32 #include <cstdlib> #include <iostream> #else #include <cstdlib> #include <iostream.h> #endif ClassImp(BrDbParameter); //____________________________________________________________________ const Char_t* BrDbParameter::kTableName = "Parameter"; //____________________________________________________________________ BrDbParameter::BrDbParameter(void) { // Empty default constructor. } //____________________________________________________________________ BrDbParameter::BrDbParameter(const Char_t* name, Int_t referenceId, const Char_t* typeName, Int_t policy, const Char_t* comment) : fReferenceID(referenceId), fPolicy(policy) { // Constructor. SetName(name); SetTypeName(typeName); SetComment(comment); } //____________________________________________________________________ BrDbQuery* BrDbParameter::Create(void) { // Returns a SQL query string suitable for creation of this table in // a database. return BrDbQuery::Create(BrDbParameter::kTableName, "name VARCHAR(64) NOT NULL, " "referenceID INT NOT NULL, " "typeName VARCHAR(32) NOT NULL, " "policy INT DEFAULT 0, " "comment VARCHAR(255)"); } //____________________________________________________________________ BrDbParameter* BrDbParameter::SingleInstance(TSQLRow* row) { // Returns an instance of a BrDbParameter. User needs to store this // object imidiatly. if (!row) return 0; BrDbParameter* param = new BrDbParameter(row->GetField(1), strtol(row->GetField(2),NULL,0), row->GetField(3), strtol(row->GetField(4),NULL,0), row->GetField(5)); param->SetDBID(strtol(row->GetField(0),NULL,0)); return param; } //____________________________________________________________________ TObjArray* BrDbParameter::MultipleInstance(TSQLResult* res) { // Returns an (1D) array of BrDbParameter's matching Query that made // the TSQLResult. User need to store this immediately. Int_t count = (res) ? res->GetRowCount() : 0; TObjArray* table = new TObjArray(count); for (Int_t i = 0; i < count; i++) table->Add(BrDbParameter::SingleInstance(res->Next())); return table; } //____________________________________________________________________ BrDbQuery* BrDbParameter::Insert(void) { return BrDbQuery::Insert(BrDbParameter::kTableName, Form("%d, '%s', %d, '%s', %d, '%s'", GetDBID(), fName, fReferenceID, fTypeName, fPolicy, fComment)); } //____________________________________________________________________ void BrDbParameter::SetName(const Char_t* name) { if (strlen(name) > 64) { strncpy(fName, name, 63); fName[63] = '0'; } else strcpy(fName, name); } //____________________________________________________________________ void BrDbParameter::SetTypeName(const Char_t* typeName) { if (strlen(typeName) > 32) { strncpy(fTypeName, typeName, 31); fName[31] = '0'; } else strcpy(fTypeName, typeName); } //____________________________________________________________________ void BrDbParameter::SetComment(const Char_t* comment) { if (strlen(comment) > 254) { strncpy(fComment, comment, 254); fComment[254] = '0'; } else strcpy(fComment, comment); } //____________________________________________________________________ // // EOF |
||||||
This page automatically generated by script docBrat by Christian Holm |
Copyright ; 2002 BRAHMS Collaboration
<brahmlib@rcf.rhic.bnl.gov>
|