Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

107 lines
3.3 KiB

  1. // ADataObj.h: interface for the CAbstractDataObject class.
  2. //
  3. // (c) Copyright Schlumberger Technology Corp., unpublished work, created
  4. // 1999. This computer program includes Confidential, Proprietary
  5. // Information and is a Trade Secret of Schlumberger Technology Corp. All
  6. // use, disclosure, and/or reproduction is prohibited unless authorized
  7. // in writing. All Rights Reserved.
  8. //////////////////////////////////////////////////////////////////////
  9. #if !defined(SLBCCI_ADATAOBJ_H)
  10. #define SLBCCI_ADATAOBJ_H
  11. // Note: This file should only be included by the CCI, not directly
  12. // by the client.
  13. #include <string>
  14. #include <slbRCObj.h>
  15. #include "AZipValue.h"
  16. namespace cci
  17. {
  18. class CAbstractDataObject
  19. : public slbRefCnt::RCObject,
  20. public CAbstractZipValue
  21. {
  22. public:
  23. // Types
  24. // C'tors/D'tors
  25. virtual
  26. ~CAbstractDataObject() throw() = 0;
  27. // Operators
  28. bool
  29. operator==(CAbstractDataObject const &rhs) const;
  30. // TO DO: this should be superceded by implementing singletons
  31. bool
  32. operator!=(CAbstractDataObject const &rhs) const;
  33. // TO DO: this should be superceded by implementing singletons
  34. // Operations
  35. virtual void
  36. Application(std::string const &rstr) = 0;
  37. void
  38. Delete();
  39. virtual void
  40. Label(std::string const &rstrLabel) = 0;
  41. virtual void
  42. Modifiable(bool flag) = 0;
  43. // Access
  44. virtual std::string
  45. Application() = 0;
  46. virtual std::string
  47. Label() = 0;
  48. virtual bool
  49. Modifiable() = 0;
  50. // Predicates
  51. protected:
  52. // Types
  53. // C'tors/D'tors
  54. CAbstractDataObject(CAbstractCard const &racard,
  55. ObjectAccess oa,
  56. bool fAlwaysZip = false);
  57. // Operators
  58. // Operations
  59. virtual void
  60. DoDelete() = 0;
  61. // Access
  62. // Predicates
  63. virtual bool
  64. DoEquals(CAbstractDataObject const &rhs) const = 0;
  65. // Variables
  66. private:
  67. // Types
  68. // C'tors/D'tors
  69. CAbstractDataObject(CAbstractDataObject const &rhs);
  70. // not defined, copying not allowed.
  71. // Operators
  72. CAbstractDataObject &
  73. operator=(CAbstractDataObject const &rhs);
  74. // not defined, initialization not allowed.
  75. // Operations
  76. // Access
  77. // Predicates
  78. // Variables
  79. };
  80. } // namespace cci
  81. #endif // SLBCCI_ADATAOBJ_H