00001 /* 00002 * libopensync - A synchronization framework 00003 * Copyright (C) 2004-2005 Armin Bauer <armin.bauer@opensync.org> 00004 * 00005 * This library is free software; you can redistribute it and/or 00006 * modify it under the terms of the GNU Lesser General Public 00007 * License as published by the Free Software Foundation; either 00008 * version 2.1 of the License, or (at your option) any later version. 00009 * 00010 * This library is distributed in the hope that it will be useful, 00011 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00012 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00013 * Lesser General Public License for more details. 00014 * 00015 * You should have received a copy of the GNU Lesser General Public 00016 * License along with this library; if not, write to the Free Software 00017 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 00018 * 00019 */ 00020 00021 #ifndef _OPENSYNC_CHANGE_H_ 00022 #define _OPENSYNC_CHANGE_H_ 00023 00031 00038 OSYNC_EXPORT OSyncChange *osync_change_new(OSyncError **error); 00039 00045 OSYNC_EXPORT OSyncChange *osync_change_ref(OSyncChange *change); 00046 00052 OSYNC_EXPORT void osync_change_unref(OSyncChange *change); 00053 00060 OSYNC_EXPORT void osync_change_set_hash(OSyncChange *change, const char *hash); 00061 00068 OSYNC_EXPORT const char *osync_change_get_hash(OSyncChange *change); 00069 00076 OSYNC_EXPORT void osync_change_set_uid(OSyncChange *change, const char *uid); 00077 00084 OSYNC_EXPORT const char *osync_change_get_uid(OSyncChange *change); 00085 00095 OSYNC_EXPORT OSyncChangeType osync_change_get_changetype(OSyncChange *change); 00096 00103 OSYNC_EXPORT void osync_change_set_changetype(OSyncChange *change, OSyncChangeType type); 00104 00111 OSYNC_EXPORT void osync_change_set_data(OSyncChange *change, OSyncData *data); 00112 00119 OSYNC_EXPORT OSyncData *osync_change_get_data(OSyncChange *change); 00120 00127 OSYNC_EXPORT OSyncObjFormat *osync_change_get_objformat(OSyncChange *change); 00128 00135 OSYNC_EXPORT const char *osync_change_get_objtype(OSyncChange *change); 00136 00143 OSYNC_EXPORT void osync_change_set_objtype(OSyncChange *change, const char *objtype); 00144 00159 OSYNC_EXPORT OSyncConvCmpResult osync_change_compare(OSyncChange *leftchange, OSyncChange *rightchange); 00160 00163 #endif /*_OPENSYNC_CHANGE_H_*/
1.5.7.1