// $Revision: 1.4 $ // Copyright (C) 1994-1995 Taligent, Inc. All rights reserved. #ifndef TaligentSamples_ADDITIONDISPATCHER #define TaligentSamples_ADDITIONDISPATCHER #ifndef TaligentSamples_ADDITIONPROTOCOL #include "AdditionProtocol.h" #endif #ifndef Taligent_REMOTEDISPATCHER #include // Included for MRemoteDispatcher. #endif #ifndef TaligentSamples_ADDITIONIMPLEMENTATION #include "AdditionImplementation.h" #endif //---- TAdditionDispatcher ----------------------------------------------------------- class TAdditionDispatcher : public MRemoteDispatcher { public: TaligentTypeExtensionDeclarationsMacro(TAdditionDispatcher) public: TAdditionDispatcher(TAdditionImplementation* adoptedImplementation); virtual ~TAdditionDispatcher(); enum EAdditionRequest { kAdd, kAddOne, kLastRequest = kAddOne }; protected: TAdditionDispatcher(); void AddStub(TStream& argStream, TStream& resultStream); void AddOneStub(TStream& argStream, TStream& resultStream); private: TAdditionDispatcher(const TAdditionDispatcher& source) {} TAdditionDispatcher& operator=(const TAdditionDispatcher& source) {return *this;} virtual TStream& operator>>=(TStream& toStream) const {return toStream;} virtual TStream& operator<<=(TStream& fromStream) {return fromStream;} enum {kOriginalVersion}; TAdditionImplementation* fImplementation; }; #endif