1 /*=========================================================================
3 Program: CMake - Cross-Platform Makefile Generator
4 Module: $RCSfile: cmCTestUpdateHandler.h,v $
6 Date: $Date: 2009-07-10 15:07:58 $
7 Version: $Revision: 1.14 $
9 Copyright (c) 2002 Kitware, Inc. All rights reserved.
10 See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details.
12 This software is distributed WITHOUT ANY WARRANTY; without even
13 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
14 PURPOSE. See the above copyright notices for more information.
16 =========================================================================*/
18 #ifndef cmCTestUpdateHandler_h
19 #define cmCTestUpdateHandler_h
22 #include "cmCTestGenericHandler.h"
23 #include "cmListFileCache.h"
25 #if defined(__sgi) && !defined(__GNUC__)
26 # pragma set woff 1375 /* base class destructor not virtual */
29 /** \class cmCTestUpdateHandler
30 * \brief A class that handles ctest -S invocations
33 class cmCTestUpdateHandler
: public cmCTestGenericHandler
36 cmTypeMacro(cmCTestUpdateHandler
, cmCTestGenericHandler
);
39 * The main entry point for this class
43 cmCTestUpdateHandler();
58 virtual void Initialize();
61 // Some structures needed for update
63 public std::pair
<std::string
, std::string
>{};
64 struct UpdateFiles
: public std::vector
<StringPair
>{};
66 // Determine the type of version control
67 int DetermineType(const char* cmd
, const char* type
);
69 // The VCS command to update the working tree.
70 std::string UpdateCommand
;
73 bool InitialCheckout(std::ostream
& ofs
);
74 int DetectVCS(const char* dir
);
78 #if defined(__sgi) && !defined(__GNUC__)
79 # pragma reset woff 1375 /* base class destructor not virtual */