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.

118 lines
3.1 KiB

  1. // V1Cont.h: interface for the CV1Container 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. // Note: This file should only be included by the CCI, not directly
  10. // by the client.
  11. #if !defined(SLBCCI_V1CONT_H)
  12. #define SLBCCI_V1CONT_H
  13. #include <string>
  14. #include <memory> // for auto_ptr
  15. #include "slbCci.h"
  16. #include "cciCard.h"
  17. #include "ACont.h"
  18. namespace cci
  19. {
  20. class CV1Card;
  21. class CV1ContainerRecord;
  22. class CV1Container
  23. : public CAbstractContainer
  24. {
  25. public:
  26. // Types
  27. // C'tors/D'tors
  28. explicit
  29. CV1Container(CV1Card const &rv1card,
  30. std::string const &rsCntrTag,
  31. bool fCreateContainer);
  32. virtual
  33. ~CV1Container() throw();
  34. // Operators
  35. // Operations
  36. virtual void
  37. ID(std::string const &rstrID);
  38. static CV1Container *
  39. Make(CV1Card const &rv1card);
  40. virtual void
  41. Name(std::string const &rstrName);
  42. // Access
  43. virtual std::string
  44. ID();
  45. virtual std::string
  46. Name();
  47. CV1ContainerRecord &
  48. Record() const;
  49. // Predicates
  50. bool
  51. Exists() const;
  52. protected:
  53. // Types
  54. // C'tors/D'tors
  55. // Operators
  56. // Operations
  57. virtual void
  58. DoDelete();
  59. // Access
  60. // Predicates
  61. bool
  62. DoEquals(CAbstractContainer const &rhs) const;
  63. // Variables
  64. private:
  65. // Types
  66. typedef CAbstractContainer SuperClass;
  67. // C'tors/D'tors
  68. CV1Container(CV1Container const &rhs);
  69. // not defined, copying not allowed.
  70. // Operators
  71. CV1Container &
  72. operator=(CV1Container const &rhs);
  73. // not defined, initialization not allowed.
  74. // Operations
  75. // Access
  76. // Predicates
  77. // Variables
  78. std::auto_ptr<CV1ContainerRecord> m_apcr;
  79. };
  80. } // namespace cci
  81. #endif // !defined(SLBCCI_V1CONT_H)