// ProtCrypt.h -- declaration of CProtectableCrypt // (c) Copyright Schlumberger Technology Corp., unpublished work, created // 2000. This computer program includes Confidential, Proprietary // Information and is a Trade Secret of Schlumberger Technology Corp. All // use, disclosure, and/or reproduction is prohibited unless authorized // in writing. All Rights Reserved. #if !defined(SLBCCI_PROTCRYPT_H) #define SLBCCI_PROTCRYPT_H #include "slbCci.h" #include "CryptObj.h" namespace cci { // Pure virtual mixin for an object that has an ObjectAccess attribute class CProtectableCrypt : public CCryptObject { public: // Types // C'tors/D'tors virtual ~CProtectableCrypt() = 0; // Operators // Operations // Access ObjectAccess Access() const; virtual bool Private() = 0; // Predicates protected: // Types // C'tors/D'tors CProtectableCrypt(CAbstractCard const &racard, ObjectAccess oa); // Operators bool operator==(CProtectableCrypt const &rhs) const; // TO DO: this should be superceded by implementing singletons bool operator!=(CProtectableCrypt const &rhs) const; // TO DO: this should be superceded by implementing singletons // Operations // Access // Predicates // Variables ObjectAccess const m_oa; private: // Types // C'tors/D'tors // Operators // Operations // Access // Predicates // Variables }; } // namespace cci #endif // SLBCCI_PROTCRYPT_H