Panda3D
 All Classes Functions Variables Enumerations
softCVS.h
1 // Filename: softCVS.h
2 // Created by: drose (10Nov00)
3 //
4 ////////////////////////////////////////////////////////////////////
5 //
6 // PANDA 3D SOFTWARE
7 // Copyright (c) Carnegie Mellon University. All rights reserved.
8 //
9 // All use of this software is subject to the terms of the revised BSD
10 // license. You should have received a copy of this license along
11 // with this source code in a file named "LICENSE."
12 //
13 ////////////////////////////////////////////////////////////////////
14 
15 #ifndef SOFTCVS_H
16 #define SOFTCVS_H
17 
18 #include "pandatoolbase.h"
19 
20 #include "softFilename.h"
21 
22 #include "programBase.h"
23 #include "vector_string.h"
24 #include "filename.h"
25 
26 #include "pvector.h"
27 #include "pset.h"
28 
29 class Multifile;
30 
31 ////////////////////////////////////////////////////////////////////
32 // Class : SoftCVS
33 // Description : This program prepares a SoftImage database for CVS by
34 // renaming everything to version 1-0, and adding new
35 // files to CVS.
36 ////////////////////////////////////////////////////////////////////
37 class SoftCVS : public ProgramBase {
38 public:
39  SoftCVS();
40 
41  void run();
42 
43 private:
46 
47  void traverse_root();
48  void traverse_subdir(const Filename &directory);
49 
50  void collapse_scene_files();
51  bool get_scenes();
52  void remove_unused_elements();
53 
54  bool rename_file(SceneFiles::iterator begin, SceneFiles::iterator end);
55  bool scan_cvs(const string &dirname, pset<string> &cvs_elements);
56  bool scan_scene_file(istream &in, Multifile &multifile);
57 
58  bool cvs_add(const string &path);
59  bool cvs_add_or_remove(const string &cvs_command,
60  const vector_string &paths);
61 
62  SceneFiles _scene_files;
63  ElementFiles _element_files;
64  vector_string _global_files;
65 
66  vector_string _cvs_add;
67  vector_string _cvs_remove;
68 
69  bool _no_cvs;
70  string _cvs_binary;
71 };
72 
73 #endif
This is intended to be the base class for most general-purpose utility programs in the PANDATOOL tree...
Definition: programBase.h:37
The name of a file, such as a texture file or an Egg file.
Definition: filename.h:44
A file that contains a set of files.
Definition: multifile.h:34
This program prepares a SoftImage database for CVS by renaming everything to version 1-0...
Definition: softCVS.h:37