source: CMT/v1r25p20140131/source/cmt_cmtpath_pattern.h

Last change on this file was 664, checked in by rybkin, 10 years ago

merge -r 646:663 HEAD

  • Property svn:eol-style set to native
File size: 1.2 KB
Line 
1//-----------------------------------------------------------
2// Copyright Christian Arnault LAL-Orsay CNRS
3// arnault@lal.in2p3.fr
4// Modified by Grigory Rybkin
5// See the complete license in cmt_license.txt "http://www.cecill.info".
6//-----------------------------------------------------------
7
8#ifndef __cmt_cmtpath_pattern_h__
9#define __cmt_cmtpath_pattern_h__
10
11#include "cmt_pattern.h"
12
13class CmtPathPattern
14{
15public:
16  typedef cmt_vector<CmtPathPattern> CmtPathPatternVector;
17  typedef cmt_vector<CmtPathPattern*> CmtPathPatternPtrVector;
18
19  static void action (const CmtSystem::cmt_string_vector& words, Use* use, bool revert = false);
20
21  static void add (const CmtSystem::cmt_string_vector& words, Use* use, bool revert);
22
23  static int pattern_number ();
24  static CmtPathPattern& pattern (int index);
25  static void clear_all ();
26  static CmtPathPatternVector& patterns ();
27
28  static void apply_all ();
29  static void show_all ();
30
31public:
32  CmtPathPattern ();
33  ~CmtPathPattern ();
34
35  void clear ();
36  void apply () const;
37  void expand (cmt_string& line, const cmt_string& path, const cmt_string& project) const;
38  bool is_constant () const;
39
40  cmt_string line;
41  Use* use;
42  bool revert;
43};
44
45#endif
Note: See TracBrowser for help on using the repository browser.