summaryrefslogtreecommitdiffstats
path: root/Source/cmMSProjectGenerator.h
blob: e572db7e082c8a1fad45498fafa167688bd70ddb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
/*=========================================================================

  Program:   Insight Segmentation & Registration Toolkit
  Module:    $RCSfile$
  Language:  C++
  Date:      $Date$
  Version:   $Revision$


  Copyright (c) 2000 National Library of Medicine
  All rights reserved.

  See COPYRIGHT.txt for copyright details.

=========================================================================*/
#ifndef cmMSProjectGenerator_h
#define cmMSProjectGenerator_h

#include "cmStandardIncludes.h"
#include "cmMakefileGenerator.h"

class cmDSPMakefile;
class cmDSWMakefile;

/** \class cmMSProjectGenerator
 * \brief Write a Microsoft Visual C++ DSP (project) file.
 *
 * cmMSProjectGenerator produces a Microsoft Visual C++ DSP (project) file.
 */
class cmMSProjectGenerator : public cmMakefileGenerator
{
public:
  /**
   * Constructor sets the generation of DSW files on.
   */
  cmMSProjectGenerator();

  /**
   * Destructor.
   */
  ~cmMSProjectGenerator();

  /**
   * Produce the makefile (in this case a Microsoft Visual C++ project).
   */
  virtual void GenerateMakefile();

  /**
   * Turn off the generation of a Microsoft Visual C++ DSP file.
   */
  void BuildDSPOff() 
    {m_BuildDSW = false;}

  /**
   * Turn on the generation of a Microsoft Visual C++ DSW file.
   */
  void BuildDSWOn() 
    {m_BuildDSW = true;}

  /**
   * Retrieve a pointer to a cmDSWMakefile instance.
   */
  cmDSWMakefile* GetDSWMakefile() 
    {return m_DSWMakefile;}

  /**
   * Retrieve a pointer to a cmDSPMakefile instance.
   */
  cmDSPMakefile* GetDSPMakefile() 
    {return m_DSPMakefile;}

private:
  cmDSWMakefile* m_DSWMakefile;
  cmDSPMakefile* m_DSPMakefile;
  bool m_BuildDSW;
};


#endif