summaryrefslogtreecommitdiffstats
path: root/Source/CTest/cmCTestHandlerCommand.h
diff options
context:
space:
mode:
authorAndy Cedilnik <andy.cedilnik@kitware.com>2005-06-23 17:04:18 (GMT)
committerAndy Cedilnik <andy.cedilnik@kitware.com>2005-06-23 17:04:18 (GMT)
commit1b578d3180ce60976e4cbe928fce988acfd0da39 (patch)
treecdefbf878667d466318aeabfa77cc7625cb4777e /Source/CTest/cmCTestHandlerCommand.h
parent5c68b61a9caab3f89031155d129b9498d840e502 (diff)
downloadCMake-1b578d3180ce60976e4cbe928fce988acfd0da39.zip
CMake-1b578d3180ce60976e4cbe928fce988acfd0da39.tar.gz
CMake-1b578d3180ce60976e4cbe928fce988acfd0da39.tar.bz2
ENH: Several improvements with the way things are handled. Also, support multiple submited files
Diffstat (limited to 'Source/CTest/cmCTestHandlerCommand.h')
-rw-r--r--Source/CTest/cmCTestHandlerCommand.h63
1 files changed, 63 insertions, 0 deletions
diff --git a/Source/CTest/cmCTestHandlerCommand.h b/Source/CTest/cmCTestHandlerCommand.h
new file mode 100644
index 0000000..2f6b516
--- /dev/null
+++ b/Source/CTest/cmCTestHandlerCommand.h
@@ -0,0 +1,63 @@
+/*=========================================================================
+
+ 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 cmCTestHandlerCommand_h
+#define cmCTestHandlerCommand_h
+
+#include "cmCTestCommand.h"
+
+class cmCTestGenericHandler;
+
+/** \class cmCTestHandler
+ * \brief Run a ctest script
+ *
+ * cmCTestHandlerCommand defineds the command to test the project.
+ */
+class cmCTestHandlerCommand : public cmCTestCommand
+{
+public:
+ cmCTestHandlerCommand();
+
+ /**
+ * This is called when the command is first encountered in
+ * the CMakeLists.txt file.
+ */
+ virtual bool InitialPass(std::vector<std::string> const& args);
+
+ cmTypeMacro(cmCTestHandlerCommand, cmCTestCommand);
+
+ enum
+ {
+ ct_NONE,
+ ct_RETURN_VALUE,
+ ct_BUILD,
+ ct_SOURCE,
+ ct_SUBMIT_INDEX,
+ ct_LAST
+ };
+
+protected:
+ virtual cmCTestGenericHandler* InitializeHandler() = 0;
+ bool ProcessArguments(std::vector<std::string> const& args,
+ int last, const char** strings, std::vector<const char*>& values);
+
+ std::string m_ReturnVariable;
+ std::vector<const char*> m_Arguments;
+ std::vector<const char*> m_Values;
+ size_t m_Last;
+};
+
+#endif