/*========================================================================= Program: CMake - Cross-Platform Makefile Generator Module: $RCSfile$ Language: C++ Date: $Date$ Version: $Revision$ Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved. See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details. This software is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the above copyright notices for more information. =========================================================================*/ #ifndef cmExecutionStatus_h #define cmExecutionStatus_h #include "cmObject.h" /** \class cmExecutionStatus * \brief Superclass for all command status classes * * when a command is involked it may set values on a command status instance */ class cmExecutionStatus : public cmObject { public: cmTypeMacro(cmExecutionStatus, cmObject); cmExecutionStatus() { this->Clear();}; virtual void SetReturnInvoked(bool val) { this->ReturnInvoked = val; } virtual bool GetReturnInvoked() { return this->ReturnInvoked; } virtual void SetBreakInvoked(bool val) { this->BreakInvoked = val; } virtual bool GetBreakInvoked() { return this->BreakInvoked; } virtual void Clear() { this->ReturnInvoked = false; this->BreakInvoked = false; this->NestedError = false; } virtual void SetNestedError(bool val) { this->NestedError = val; } virtual bool GetNestedError() { return this->NestedError; } protected: bool ReturnInvoked; bool BreakInvoked; bool NestedError; }; #endif