home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / VSCPPv8.zip / VACPP / IBMCPP / samples / VISBUILD / RAPSHEET / CPPOV23 / IADDRREC.HPP < prev    next >
Text File  |  1995-05-14  |  4KB  |  83 lines

  1. #ifndef _IADDRREC_
  2. #define _IADDRREC_
  3. //****************************************************************************
  4. // IAddressRecord Class - C++ Header File (iaddrrec.hpp)                     *
  5. //                                                                           *
  6. // COPYRIGHT: Copyright (C) International Business Machines Corp., 1994,1995 *
  7. //                                                                           *
  8. // DISCLAIMER OF WARRANTIES:                                                 *
  9. //   The following [enclosed] code is sample code created by IBM             *
  10. //   Corporation.  This sample code is not part of any standard IBM product  *
  11. //   and is provided to you solely for the purpose of assisting you in the   *
  12. //   development of your applications.  The code is provided "AS IS",        *
  13. //   without warranty of any kind.  IBM shall not be liable for any damages  *
  14. //   arising out of your use of the sample code, even if they have been      *
  15. //   advised of the possibility of such damages.                             *
  16. //****************************************************************************
  17. //NOTE: WE RECOMMEND USING A FIXED-SPACE FONT TO LOOK AT THE SOURCE.
  18. //
  19.  
  20. #include <istring.hpp>
  21. #include <irecord.hpp>
  22.  
  23. //Forward declarations of other classes
  24.  
  25. /*----------------------------------------------------------------------------*/
  26. /* Align classes on four byte boundary.                                       */
  27. /*----------------------------------------------------------------------------*/
  28. #pragma pack(4)
  29.  
  30. //**************************************************************************
  31. // Class:   IAddressRecord
  32. //
  33. // Purpose: Describes IAddressRecord
  34. //
  35. //**************************************************************************
  36. class _Export IAddressRecord : public IRecord
  37. {
  38. public:
  39.            IAddressRecord ();
  40.            IAddressRecord ( const IString & recordData );
  41.            IAddressRecord ( const IAddressRecord & aRecord );
  42.   virtual  ~IAddressRecord ();
  43.  
  44. IAddressRecord & operator = ( const IAddressRecord & aRecord );
  45. IAddressRecord & operator = ( const IString & aString );
  46.  
  47. /*------------------------------------------------------------------
  48.  * street
  49.  *-----------------------------------------------------------------*/
  50. virtual IString street () const;
  51. virtual IAddressRecord & setStreet (IString iStreet);
  52.  
  53. /*------------------------------------------------------------------
  54.  * city
  55.  *-----------------------------------------------------------------*/
  56. virtual IString city () const;
  57. virtual IAddressRecord & setCity (const IString & iCity);
  58.  
  59. /*------------------------------------------------------------------
  60.  * state
  61.  *-----------------------------------------------------------------*/
  62. virtual IString state () const;
  63. virtual IAddressRecord & setState (const IString iState);
  64.  
  65. /*------------------------------------------------------------------
  66.  * zip
  67.  *-----------------------------------------------------------------*/
  68. virtual IString zip () const;
  69. virtual IAddressRecord & setZip (const IString & iZip);
  70.  
  71.  
  72. private:
  73.    unsigned long dParentSize;
  74.    const unsigned long dMySize;
  75. };
  76.  
  77. /*----------------------------------------------------------------------------*/
  78. /* Resume compiler default packing.                                           */
  79. /*----------------------------------------------------------------------------*/
  80. #pragma pack()
  81.  
  82. #endif
  83.