SvnCpp
status_selection.hpp
Go to the documentation of this file.
1 /*
2  * ====================================================================
3  * Copyright (c) 2002-2009 The RapidSvn Group. All rights reserved.
4  *
5  * This program is free software: you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License as published by
7  * the Free Software Foundation, either version 3 of the License, or
8  * (at your option) any later version.
9  *
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  * GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License
16  * along with this program (in the file GPL.txt.
17  * If not, see <http://www.gnu.org/licenses/>.
18  *
19  * This software consists of voluntary contributions made by many
20  * individuals. For exact contribution history, see the revision
21  * history and logs, available at http://rapidsvn.tigris.org/.
22  * ====================================================================
23  */
24 
25 #ifndef _SVNCPP_STATUS_SELECTION_HPP_
26 #define _SVNCPP_STATUS_SELECTION_HPP_
27 
28 // svncpp
29 #include "svncpp/status.hpp"
30 #include "svncpp/path.hpp"
31 
32 
33 namespace svn
34 {
35  // forward declarations
36  class Pool;
37  class Targets;
38 
42  class StatusSel
43  {
44  public:
48  StatusSel();
49 
53  virtual ~ StatusSel();
54 
60  StatusSel(const StatusSel & src);
61 
65  StatusSel &
66  operator = (const StatusSel & src);
67 
74  const apr_array_header_t *
75  array(const Pool & pool) const;
76 
82  const StatusVector &
83  statusVector() const;
84 
90  const Targets &
91  targets() const;
92 
99  const Path &
100  target() const;
101 
105  size_t size() const;
106 
110  void
111  reserve(size_t size);
112 
118  void
119  push_back(const Status & status);
120 
124  void
125  clear();
126 
132  operator const PathVector & () const;
133 
135  bool
136  hasFiles() const;
137 
139  bool
140  hasDirs() const;
141 
143  bool
144  hasVersioned() const;
145 
147  bool
148  hasUnversioned() const;
149 
151  bool
152  hasUrl() const;
153 
155  bool
156  hasLocal() const;
157 
158  private:
159  struct Data;
160  Data * m;
161  };
162 }
163 
164 #endif
165 /* -----------------------------------------------------------------
166  * local variables:
167  * eval: (load-file "../../rapidsvn-dev.el")
168  * end:
169  */
StatusSel & operator=(const StatusSel &src)
Definition: status.hpp:44
bool hasUnversioned() const
Definition: targets.hpp:43
size_t size() const
bool hasDirs() const
Definition: path.hpp:37
const Targets & targets() const
Definition: annotate_line.hpp:31
const apr_array_header_t * array(const Pool &pool) const
const StatusVector & statusVector() const
virtual ~StatusSel()
bool hasVersioned() const
bool hasUrl() const
Definition: pool.hpp:36
std::vector< Path > PathVector
Definition: path.hpp:205
bool hasFiles() const
Definition: status_selection.hpp:42
const Path & target() const
void reserve(size_t size)
void push_back(const Status &status)
bool hasLocal() const
std::vector< Status > StatusVector
Definition: status.hpp:180