home *** CD-ROM | disk | FTP | other *** search
/ Power GUI Programming with VisualAge C++ / powergui.iso / trialva / ibmcppw / include / spobfseq.hpp < prev    next >
Encoding:
C/C++ Source or Header  |  1996-02-22  |  1.9 KB  |  57 lines

  1. /********************************************************************************/
  2. /* File:  spobfseq.hpp                                                          */
  3. /* Class: IPOBufferSequence                                                     */
  4. /*                                                                              */
  5. /* IPOBufferSequence - a sequence of buffers                                    */
  6. /********************************************************************************/
  7.  
  8. /***********************************************
  9.  
  10.     Licensed Materials - Property of IBM
  11.  
  12.     5622-880   5801-AAR
  13.  
  14.     (c) Copyright IBM Corp 1991, 1996.
  15.  
  16. ************************************************/
  17.  
  18. #ifndef _SPOBFSEQ_HPP_
  19. #define _SPOBFSEQ_HPP_
  20.  
  21. #include "spobuf.hpp"
  22. #include <iseq.h>
  23. #include "sdssqlst.hpp"
  24.  
  25. class _Export IPOBufferSequence : public
  26.                             ISequence<IPOBufferBase*>
  27.  
  28. {
  29.    public:
  30.      IPOBufferSequence(){;}
  31.      virtual ~IPOBufferSequence(){allElementsDo(freeIPOBuffer);}
  32.  
  33. /*---------------------- Buffer Seq Functions ----------------------------------
  34. | These methods deals with Buffer Seq functions:                               |
  35. |   addBuffer - add buffer to sequence                                         |
  36. ------------------------------------------------------------------------------*/
  37.      void addBuffer( IPOBufferBase* pBuffer)
  38.                              {addAsLast(pBuffer);}
  39.      virtual void bindToStatement(ISQLStatement* pSqlStatement) = 0;
  40.    protected:
  41.      struct statementInfo
  42.      {
  43.        long number;
  44.        ISQLStatement* sqlStatement;
  45.        statementInfo(ISQLStatement* aStatement) : number(1), sqlStatement(aStatement) {}
  46.      };
  47.  
  48.     private:
  49.      static Boolean freeIPOBuffer( IPOBufferBase*& pBfr, void *)
  50.                                    {delete pBfr; return true;}
  51.  
  52.      friend class IPOAttributeSequence;
  53. };
  54.  
  55.  
  56. #endif
  57.