ROOT logo
// @(#)root/physics:$Id: TOracleRow.h 23102 2008-04-09 22:18:41Z pcanal $
// Author: Yan Liu and Shaowen Wang   23/11/04

/*************************************************************************
 * Copyright (C) 1995-2005, Rene Brun and Fons Rademakers.               *
 * All rights reserved.                                                  *
 *                                                                       *
 * For the licensing terms see $ROOTSYS/LICENSE.                         *
 * For the list of contributors see $ROOTSYS/README/CREDITS.             *
 *************************************************************************/

#ifndef ROOT_TOracleRow
#define ROOT_TOracleRow

#ifndef ROOT_TSQLRow
#include "TSQLRow.h"
#endif

#if !defined(__CINT__)
#ifndef R__WIN32
#include <sys/time.h>
#endif
#include <occi.h>
using namespace oracle::occi;
#ifdef CONST
#undef CONST
#endif
#else
class ResultSet;
class MetaData;
#endif

class TOracleRow : public TSQLRow {

private:
   ResultSet                *fResult;      // current result set
   std::vector<MetaData>    *fFieldInfo;   // metadata for columns
   Int_t                     fFieldCount;
   char                    **fFieldsBuffer;

   Bool_t  IsValid(Int_t field);

protected:
   void        GetRowData();

public:
   TOracleRow(ResultSet *rs, std::vector<MetaData> *fieldMetaData);
   ~TOracleRow();

   void        Close(Option_t *opt="");
   ULong_t     GetFieldLength(Int_t field);
   const char *GetField(Int_t field);

   ClassDef(TOracleRow,0)  // One row of Oracle query result
};

#endif
 TOracleRow.h:1
 TOracleRow.h:2
 TOracleRow.h:3
 TOracleRow.h:4
 TOracleRow.h:5
 TOracleRow.h:6
 TOracleRow.h:7
 TOracleRow.h:8
 TOracleRow.h:9
 TOracleRow.h:10
 TOracleRow.h:11
 TOracleRow.h:12
 TOracleRow.h:13
 TOracleRow.h:14
 TOracleRow.h:15
 TOracleRow.h:16
 TOracleRow.h:17
 TOracleRow.h:18
 TOracleRow.h:19
 TOracleRow.h:20
 TOracleRow.h:21
 TOracleRow.h:22
 TOracleRow.h:23
 TOracleRow.h:24
 TOracleRow.h:25
 TOracleRow.h:26
 TOracleRow.h:27
 TOracleRow.h:28
 TOracleRow.h:29
 TOracleRow.h:30
 TOracleRow.h:31
 TOracleRow.h:32
 TOracleRow.h:33
 TOracleRow.h:34
 TOracleRow.h:35
 TOracleRow.h:36
 TOracleRow.h:37
 TOracleRow.h:38
 TOracleRow.h:39
 TOracleRow.h:40
 TOracleRow.h:41
 TOracleRow.h:42
 TOracleRow.h:43
 TOracleRow.h:44
 TOracleRow.h:45
 TOracleRow.h:46
 TOracleRow.h:47
 TOracleRow.h:48
 TOracleRow.h:49
 TOracleRow.h:50
 TOracleRow.h:51
 TOracleRow.h:52
 TOracleRow.h:53
 TOracleRow.h:54
 TOracleRow.h:55
 TOracleRow.h:56
 TOracleRow.h:57