00001 /*========================================================================= 00002 00003 Program: Medical Imaging & Interaction Toolkit 00004 Language: C++ 00005 Date: $Date$ 00006 Version: $Revision$ 00007 00008 Copyright (c) German Cancer Research Center, Division of Medical and 00009 Biological Informatics. All rights reserved. 00010 See MITKCopyright.txt or https://www.mitk.org/copyright.html for details. 00011 00012 This software is distributed WITHOUT ANY WARRANTY; without even 00013 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00014 PURPOSE. See the above copyright notices for more information. 00015 00016 =========================================================================*/ 00017 00018 00019 #ifndef STATETRANSITIONOPERATION_H_HEADER_INCLUDED_C1695462 00020 #define STATETRANSITIONOPERATION_H_HEADER_INCLUDED_C1695462 00021 00022 #include "mitkCommon.h" 00023 #include "mitkOperation.h" 00024 #include "mitkState.h" 00025 00026 namespace mitk { 00027 //##Documentation 00028 //## @brief operation, that changes the stateMachine and sets a state according to a 00029 //## transition to an other state. 00030 //## 00031 //## @ingroup Undo 00032 class MITK_CORE_EXPORT StateTransitionOperation : public Operation 00033 { 00034 public: 00041 StateTransitionOperation(OperationType operationType, State* state, unsigned int time = 0); 00042 00046 ~StateTransitionOperation(); 00047 00051 State* GetState(); 00052 00056 unsigned int GetTime(); 00057 00058 private: 00059 State::Pointer m_State; 00060 00061 unsigned int m_Time; 00062 00063 }; 00064 }//namespace mitk 00065 #endif /* STATETRANSITIONOPERATION_H_HEADER_INCLUDED_C1695462 */