1 // 2 // aegis - project change supervisor 3 // Copyright (C) 1991-1997, 1999, 2000, 2002-2008, 2011, 2012 Peter Miller 4 // Copyright (C) 2007 Walter Franzini 5 // 6 // This program is free software; you can redistribute it and/or modify 7 // it under the terms of the GNU General Public License as published by 8 // the Free Software Foundation; either version 3 of the License, or (at 9 // your option) any later version. 10 // 11 // This program is distributed in the hope that it will be useful, 12 // but WITHOUT ANY WARRANTY; without even the implied warranty of 13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 14 // General Public License for more details. 15 // 16 // You should have received a copy of the GNU General Public License 17 // along with this program. If not, see <http://www.gnu.org/licenses/>. 18 // 19 20 #ifndef CHANGE_FILE_H 21 #define CHANGE_FILE_H 22 23 #include <common/gcc-attribute.h> 24 #include <libaegis/change.h> 25 #include <libaegis/view_path.h> 26 27 class string_list_ty; // forward 28 class nstring; // forward 29 30 /** Deprecated. Use change::file_path instead. */ 31 string_ty *change_file_path(change::pointer cp, string_ty *file_name) 32 DEPRECATED; 33 34 /** Deprecated. Use change::file_path_by_uuid instead. */ 35 string_ty *change_file_path_by_uuid(change::pointer cp, string_ty *uuid) 36 DEPRECATED; 37 38 /** Deprecated. Use change::file_path instead. */ 39 string_ty *change_file_path(change::pointer cp, fstate_src_ty *src) 40 DEPRECATED; 41 42 string_ty *change_file_version_path(change::pointer cp, fstate_src_ty *src, 43 int *unlink_p); 44 string_ty *change_file_source(change::pointer , string_ty *); 45 void change_file_remove(change::pointer , string_ty *); 46 47 void change_file_remove_all(change::pointer ); 48 fstate_src_ty *change_file_nth(change::pointer , size_t, view_path_ty); 49 size_t change_file_count(change::pointer ); 50 void change_file_directory_query(change::pointer cp, string_ty *file_name, 51 string_list_ty *result_in, string_list_ty *result_out); 52 string_ty *change_file_directory_conflict(change::pointer cp, 53 string_ty *file_name); 54 55 void change_file_test_time_clear(change::pointer cp, fstate_src_ty *src, 56 string_ty *); 57 void change_file_test_time_set(change::pointer , fstate_src_ty *, time_t, 58 string_ty *); 59 time_t change_file_test_time_get(change::pointer cp, fstate_src_ty *src, 60 string_ty *); 61 void change_file_test_baseline_time_clear(change::pointer , fstate_src_ty *, 62 string_ty *); 63 void change_file_test_baseline_time_set(change::pointer cp, fstate_src_ty *src, 64 time_t, string_ty *); 65 time_t change_file_test_baseline_time_get(change::pointer , fstate_src_ty *, 66 string_ty *); 67 68 int change_fingerprint_same(fingerprint_ty *, string_ty *, int); 69 void change_file_fingerprint_check(change::pointer , fstate_src_ty *); 70 int change_file_up_to_date(project *, fstate_src_ty *); 71 metric_list_ty *change_file_metrics_get(change::pointer , string_ty *); 72 void change_file_list_metrics_check(change::pointer ); 73 void change_file_template(change::pointer , string_ty *, user_ty::pointer, int); 74 75 /** 76 * The change_file_copy_basic_attributes function is used to copy the 77 * basic change file attributes (usage, attributes and uuid) from one 78 * file to another. This is a common activity for aecp, et al. 79 * 80 * @param to 81 * The file meta data to receive the attributes 82 * @param from 83 * The file meta data from which the attributes are to be taken. 84 */ 85 void change_file_copy_basic_attributes(fstate_src_ty *to, fstate_src_ty *from); 86 87 // vim: set ts=8 sw=4 et : 88 #endif // CHANGE_FILE_H 89