xref: /aosp_15_r20/external/erofs-utils/include/erofs/compress_hints.h (revision 33b1fccf6a0fada2c2875d400ed01119b7676ee5)
1*33b1fccfSAndroid Build Coastguard Worker /* SPDX-License-Identifier: GPL-2.0+ OR Apache-2.0 */
2*33b1fccfSAndroid Build Coastguard Worker /*
3*33b1fccfSAndroid Build Coastguard Worker  * Copyright (C), 2008-2021, OPPO Mobile Comm Corp., Ltd.
4*33b1fccfSAndroid Build Coastguard Worker  * Created by Huang Jianan <[email protected]>
5*33b1fccfSAndroid Build Coastguard Worker  */
6*33b1fccfSAndroid Build Coastguard Worker #ifndef __EROFS_COMPRESS_HINTS_H
7*33b1fccfSAndroid Build Coastguard Worker #define __EROFS_COMPRESS_HINTS_H
8*33b1fccfSAndroid Build Coastguard Worker 
9*33b1fccfSAndroid Build Coastguard Worker #ifdef __cplusplus
10*33b1fccfSAndroid Build Coastguard Worker extern "C"
11*33b1fccfSAndroid Build Coastguard Worker {
12*33b1fccfSAndroid Build Coastguard Worker #endif
13*33b1fccfSAndroid Build Coastguard Worker 
14*33b1fccfSAndroid Build Coastguard Worker #include "erofs/internal.h"
15*33b1fccfSAndroid Build Coastguard Worker #include <sys/types.h>
16*33b1fccfSAndroid Build Coastguard Worker #include <regex.h>
17*33b1fccfSAndroid Build Coastguard Worker 
18*33b1fccfSAndroid Build Coastguard Worker struct erofs_compress_hints {
19*33b1fccfSAndroid Build Coastguard Worker 	struct list_head list;
20*33b1fccfSAndroid Build Coastguard Worker 
21*33b1fccfSAndroid Build Coastguard Worker 	regex_t reg;
22*33b1fccfSAndroid Build Coastguard Worker 	unsigned int physical_clusterblks;
23*33b1fccfSAndroid Build Coastguard Worker 	unsigned char algorithmtype;
24*33b1fccfSAndroid Build Coastguard Worker };
25*33b1fccfSAndroid Build Coastguard Worker 
26*33b1fccfSAndroid Build Coastguard Worker bool z_erofs_apply_compress_hints(struct erofs_inode *inode);
27*33b1fccfSAndroid Build Coastguard Worker void erofs_cleanup_compress_hints(void);
28*33b1fccfSAndroid Build Coastguard Worker int erofs_load_compress_hints(struct erofs_sb_info *sbi);
29*33b1fccfSAndroid Build Coastguard Worker 
30*33b1fccfSAndroid Build Coastguard Worker #ifdef __cplusplus
31*33b1fccfSAndroid Build Coastguard Worker }
32*33b1fccfSAndroid Build Coastguard Worker #endif
33*33b1fccfSAndroid Build Coastguard Worker 
34*33b1fccfSAndroid Build Coastguard Worker #endif
35