//----------------------------------------------------------------------------- // // File: optionval.h // Copyright (C) 1994-1997 Microsoft Corporation // All rights reserved. // // // //----------------------------------------------------------------------------- #pragma once #pragma warning(disable: 4275) // non dll-interface class 'foo' used // as base for dll-interface class 'bar' class LTAPIENTRY CLocOptionVal : public CRefCount, public CObject { public: NOTHROW CLocOptionVal(); void AssertValid(void) const; enum OptionCode { ocNoError, ocUnknownOption, ocInvalidValue, ocInvalidType }; NOTHROW void SetName(const CLString &); NOTHROW void SetValue(const CLocVariant &); NOTHROW const CLString & GetName(void) const; NOTHROW const CLocVariant & GetValue(void) const; void Serialize(CArchive &); void Load(CArchive &); void Store(CArchive &) const; protected: virtual ~CLocOptionVal(); private: CLString m_strName; CLocVariant m_lvValue; }; class LTAPIENTRY CLocOptionValList : public CTypedPtrList { public: NOTHROW CLocOptionValList(); void AssertValid(void) const; NOTHROW ~CLocOptionValList(); private: CLocOptionValList(const CLocOptionValList &); void operator=(const CLocOptionValList &); }; #pragma warning(default: 4275) // // Worker function for options upgrade. LTAPIENTRY void DorkData(BYTE *, DWORD &); #if !defined(_DEBUG) || defined(IMPLEMENT) #include "optionval.inl" #endif