GnuCash  5.6-150-g038405b370+
Account.hpp
Go to the documentation of this file.
1 /**********************************************************************
2  * Account.hpp
3  * *
4  * This program is free software; you can redistribute it and/or *
5  * modify it under the terms of the GNU General Public License as *
6  * published by the Free Software Foundation; either version 2 of *
7  * the License, or (at your option) any later version. *
8  * *
9  * This program is distributed in the hope that it will be useful, *
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of *
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
12  * GNU General Public License for more details. *
13  * *
14  * You should have received a copy of the GNU General Public License *
15  * along with this program; if not, contact: *
16  * *
17  * Free Software Foundation Voice: +1-617-542-5942 *
18  * 51 Franklin Street, Fifth Floor Fax: +1-617-542-2652 *
19  * Boston, MA 02110-1301, USA gnu@gnu.org *
20  * *
21  *********************************************************************/
22 
32 #ifndef GNC_ACCOUNT_HPP
33 #define GNC_ACCOUNT_HPP
34 
35 #include <vector>
36 #include <functional>
37 
38 #include <Account.h>
39 
40 using SplitsVec = std::vector<Split*>;
41 using AccountVec = std::vector<Account*>;
42 
43 const SplitsVec& xaccAccountGetSplits (const Account*);
44 
45 void gnc_account_foreach_descendant (const Account *, std::function<void(Account*)> func);
46 
47 void gnc_account_foreach_split (const Account*, std::function<void(Split*)>, bool);
48 
49 void gnc_account_foreach_split_until_date (const Account *acc, time64 end_date,
50  std::function<void(Split*)> f);
51 
62 Split* gnc_account_find_split (const Account*, std::function<bool(const Split*)>, bool);
63 
64 #endif /* GNC_COMMODITY_HPP */
65 
STRUCTS.
Account handling public routines.
Split * gnc_account_find_split(const Account *, std::function< bool(const Split *)>, bool)
scans account split list (in forward or reverse order) until predicate split->bool returns true...
Definition: Account.cpp:1168
gint64 time64
Most systems that are currently maintained, including Microsoft Windows, BSD-derived Unixes and Linux...
Definition: gnc-date.h:87