Motr  M0
index_op.h
Go to the documentation of this file.
1 /* -*- C -*- */
2 /*
3  * Copyright (c) 2020 Seagate Technology LLC and/or its Affiliates
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  *
17  * For any questions about this software or licensing,
18  * please email opensource@seagate.com or cortx-questions@seagate.com.
19  *
20  */
21 
22 
23 
24 #pragma once
25 
26 #ifndef __MOTR_M0INDEX_OP_H__
27 #define __MOTR_M0INDEX_OP_H__
28 
34 struct m0_realm;
35 struct m0_fid_arr;
36 struct m0_fid;
37 struct m0_bufvec;
38 
39 int index_create(struct m0_realm *parent,
40  struct m0_fid_arr *fids);
41 int index_drop(struct m0_realm *parent, struct m0_fid_arr *fids);
42 int index_list(struct m0_realm *parent,
43  struct m0_fid *fid,
44  int cnt,
45  struct m0_bufvec *keys);
46 int index_lookup(struct m0_realm *parent,
47  struct m0_fid_arr *fids,
48  struct m0_bufvec *rets);
49 int index_put(struct m0_realm *parent,
50  struct m0_fid_arr *fids,
51  struct m0_bufvec *keys,
52  struct m0_bufvec *vals);
53 int index_del(struct m0_realm *parent,
54  struct m0_fid_arr *fids,
55  struct m0_bufvec *keys);
56 int index_get(struct m0_realm *parent,
57  struct m0_fid *fid,
58  struct m0_bufvec *keys,
59  struct m0_bufvec *vals);
60 int index_next(struct m0_realm *parent,
61  struct m0_fid *fid,
62  struct m0_bufvec *keys, int cnt,
63  struct m0_bufvec *vals);
64 
66 #endif /* __MOTR_M0INDEX_OP_H__ */
67 
68 /*
69  * Local variables:
70  * c-indentation-style: "K&R"
71  * c-basic-offset: 8
72  * tab-width: 8
73  * fill-column: 80
74  * scroll-step: 1
75  * End:
76  */
77 /*
78  * vim: tabstop=8 shiftwidth=8 noexpandtab textwidth=80 nowrap
79  */
int index_drop(struct m0_realm *parent, struct m0_fid_arr *fids)
Definition: index_op.c:98
int index_create(struct m0_container *container, struct m0_uint128 *fid)
Definition: example2.c:80
int index_del(struct m0_realm *parent, struct m0_fid_arr *fids, struct m0_bufvec *keys)
Definition: index_op.c:227
int index_next(struct m0_realm *parent, struct m0_fid *fid, struct m0_bufvec *keys, int cnt, struct m0_bufvec *vals)
Definition: index_op.c:266
struct m0_fid fid
Definition: di.c:46
Definition: cnt.h:36
int index_get(struct m0_container *container, struct m0_uint128 *fid)
Definition: example2.c:153
Definition: fid.h:43
static const struct m0_fid fids[]
Definition: diter.c:76
int index_lookup(struct m0_realm *parent, struct m0_fid_arr *fids, struct m0_bufvec *rets)
Definition: index_op.c:146
Definition: fid.h:38
int index_list(struct m0_realm *parent, struct m0_fid *fid, int cnt, struct m0_bufvec *keys)
Definition: index_op.c:119
int index_put(struct m0_container *container, struct m0_uint128 *fid)
Definition: example2.c:117
Definition: vec.h:145