00001 /******************************************************************** 00002 00003 Copyright 2006, ACCESS Systems Americas, Inc. All rights reserved. 00004 00005 The contents of this file are subject to the Mozilla Public License Version 00006 1.1 (the "License"); you may not use this file except in compliance with 00007 the License. You may obtain a copy of the License at 00008 http://www.mozilla.org/MPL/ 00009 00010 Software distributed under the License is distributed on an "AS IS" basis, 00011 WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 00012 for the specific language governing rights and limitations under the 00013 License. 00014 00015 The Original Code is the entire contents of this file. 00016 00017 The Initial Developer of the Original Code is ACCESS Systems Americas, Inc. 00018 00019 Portions created by ACCESS Systems Americas, Inc. are Copyright © 2006. All 00020 Rights Reserved. 00021 00022 Contributor(s): none. 00023 00024 ********************************************************************/ 00025 00033 #ifndef VOLUMESVCS_TYPES_H 00034 #define VOLUMESVCS_TYPES_H 00035 00036 #include <glib.h> 00037 #include <hiker/syspaths.h> 00038 00039 #ifdef __cplusplus 00040 extern "C" { 00041 #endif 00042 00049 00050 #define ALP_STATUS_VOLUMESVCS_OK ALP_STATUS_OK 00051 00052 #define ALP_STATUS_VOLUMESVCS_INVALID_PARAMETER ( ALP_CLASS_VOLUMESVCS | 0x01) 00053 00054 #define ALP_STATUS_VOLUMESVCS_NOT_FOUND ( ALP_CLASS_VOLUMESVCS | 0x02) 00055 00056 #define ALP_STATUS_VOLUMESVCS_DEVICE_BUSY ( ALP_CLASS_VOLUMESVCS | 0x03) 00057 00065 00066 #define ALP_NOTIFY_EVENT_VOLUME_ADDED "/alp/volumesvcs/volume_added" 00067 00068 #define ALP_NOTIFY_EVENT_VOLUME_REMOVED "/alp/volumesvcs/volume_removed" 00069 00070 #define ALP_NOTIFY_EVENT_DEVICE_ADDED "/alp/volumesvcs/device_added" 00071 00072 #define ALP_NOTIFY_EVENT_DEVICE_REMOVED "/alp/volumesvcs/device_removed" 00073 00082 00083 #define ALP_SYSTEM_SLOTS_PREFIX "/system/slots/" 00084 00085 #define ALP_SYSTEM_SLOTS_NAME "/name" 00086 00087 #define ALP_SYSTEM_SLOTS_DEV_PATH "/dev_path" 00088 00090 #define ALP_VOLUMESVCS_HIDEVOL_PATH ALP_EXT_SYSPATH_HIDDEN_VOL 00091 00098 00099 typedef char* AlpNotifyEventVolumeAdded; 00101 typedef char* AlpNotifyEventVolumeRemoved; 00103 typedef char* AlpNotifyEventDeviceAdded; 00105 typedef char* AlpNotifyEventdeviceRemoved; 00106 00109 typedef struct _AlpVolumeSvcsFSinfo { 00110 gchar *udi; 00111 gchar *dev_path; 00112 gchar *fs_path; 00113 gchar *name; 00114 gchar *slot; 00115 gchar *vendor_model; 00116 gchar *uuid; 00117 gchar *card_type; 00118 guint64 total_space; 00119 guint64 used_space; 00120 guint64 total_files; 00121 guint64 used_files; 00122 guint32 flags; 00123 guint index; 00124 00125 } AlpVolumeSvcsFSinfo; 00126 00128 #define ALP_VOLUMESVCS_FLAGS_BINDMOUNT 0x1 00129 00130 #define ALP_VOLUMESVCS_FLAGS_PARTITION 0x2 00131 00132 #define ALP_VOLUMESVCS_FLAGS_HIDDEN 0x4 00133 00164 #ifdef __cplusplus 00165 } // extern "C" 00166 #endif 00167 00168 #endif 00169