// $Revision: 1.5 $ // Copyright (C) 1994-1995 Taligent, Inc. All rights reserved. #ifndef TaligentSamples_ADDITIONIMPLEMENTATION #define TaligentSamples_ADDITIONIMPLEMENTATION #ifndef Taligent_COREPRIMITIVECLASSES #include #endif #ifndef TaligentSamples_ADDITIONPROTOCOL #include "AdditionProtocol.h" #endif //---- TAdditionImplementation ----------------------------------------------------------- class TAdditionImplementation : public MAdditionProtocol { public: TaligentTypeExtensionDeclarationsMacro(TAdditionImplementation) public: TAdditionImplementation(); TAdditionImplementation(const TAdditionImplementation& source); virtual ~TAdditionImplementation(); TAdditionImplementation& operator=(const TAdditionImplementation& source); virtual TStream& operator>>=(TStream& toStream) const; virtual TStream& operator<<=(TStream& fromStream); virtual long Add(long num1, long num2); virtual void AddOne(long& num); protected: void TestForOverflowAndUnderflow(long num1, long num2); private: enum {kOriginalVersion}; }; #endif