Motr  M0
fop.h File Reference
#include "lib/types.h"
#include "lib/list.h"
#include "lib/refs.h"
#include "lib/errno.h"
#include "fol/fol.h"
#include "fop/fom.h"
#include "rpc/item.h"
#include "net/net_otw_types.h"
Include dependency graph for fop.h:

Go to the source code of this file.

Data Structures

struct  m0_fop_data
 
struct  m0_fop
 
struct  m0_fop_type
 
struct  m0_fop_type_ops
 
struct  __m0_fop_type_init_args
 
struct  m0_fop_type_batch
 
struct  m0_fop_fol_frag
 

Macros

#define __MOTR_FOP_FOP_H__
 
#define M0_FOP_DEFAULT_ITEM_TYPE_OPS
 
#define M0_FOP_TYPE_INIT(ft, ...)
 
#define M0_FOP_TYPE_INIT2_DECL   struct __m0_fop_type_init_args __args
 
#define M0_FOP_TYPE_INIT2(ft, ...)
 
#define M0_FOP_XCODE_OBJ(f)
 

Typedefs

typedef uint32_t m0_fop_type_code_t
 

Enumerations

enum  m0_addb2_fop_counter { M0_AFC_PHASE, M0_AFC_STATE, M0_AFC_RPC_OUT, M0_AFC_RPC_IN }
 

Functions

M0_INTERNAL void m0_fop_init (struct m0_fop *fop, struct m0_fop_type *fopt, void *data, void(*fop_release)(struct m0_ref *))
 
M0_INTERNAL void m0_fop_fini (struct m0_fop *fop)
 
struct m0_fopm0_fop_get (struct m0_fop *fop)
 
void m0_fop_put (struct m0_fop *fop)
 
void m0_fop_put0 (struct m0_fop *fop)
 
void m0_fop_put_lock (struct m0_fop *fop)
 
void m0_fop_put0_lock (struct m0_fop *fop)
 
struct m0_fopm0_fop_alloc (struct m0_fop_type *fopt, void *data, struct m0_rpc_machine *mach)
 
struct m0_fopm0_fop_alloc_at (struct m0_rpc_session *sess, struct m0_fop_type *fopt)
 
struct m0_fopm0_fop_reply_alloc (struct m0_fop *req, struct m0_fop_type *rept)
 
M0_INTERNAL void m0_fop_release (struct m0_ref *ref)
 
void * m0_fop_data (const struct m0_fop *fop)
 
M0_INTERNAL int m0_fop_data_alloc (struct m0_fop *fop)
 
struct m0_rpc_itemm0_fop_to_rpc_item (const struct m0_fop *fop)
 
struct m0_fopm0_rpc_item_to_fop (const struct m0_rpc_item *item)
 
void m0_fop_rpc_machine_set (struct m0_fop *fop, struct m0_rpc_machine *mach)
 
struct m0_rpc_machinem0_fop_rpc_machine (const struct m0_fop *fop)
 
uint32_t m0_fop_opcode (const struct m0_fop *fop)
 
M0_INTERNAL const char * m0_fop_name (const struct m0_fop *fop)
 
struct m0_net_transfer_mcm0_fop_tm_get (const struct m0_fop *fop)
 
struct m0_net_domainm0_fop_domain_get (const struct m0_fop *fop)
 
M0_INTERNAL struct m0_fop_typem0_item_type_to_fop_type (const struct m0_rpc_item_type *item_type)
 
M0_INTERNAL struct m0_fop_typem0_fop_type_next (struct m0_fop_type *ftype)
 
M0_INTERNAL struct m0_fop_typem0_fop_type_find (uint32_t opcode)
 
void m0_fop_type_init (struct m0_fop_type *ft, const struct __m0_fop_type_init_args *args)
 
void m0_fop_type_fini (struct m0_fop_type *fopt)
 
M0_INTERNAL void m0_fop_type_init_nr (const struct m0_fop_type_batch *batch)
 
M0_INTERNAL void m0_fop_type_fini_nr (const struct m0_fop_type_batch *batch)
 
M0_INTERNAL int m0_fops_init (void)
 
M0_INTERNAL void m0_fops_fini (void)
 
M0_INTERNAL int m0_fop_encdec (struct m0_fop *fop, struct m0_bufvec_cursor *cur, enum m0_xcode_what what)
 
M0_INTERNAL int m0_fop_xc_type (const struct m0_xcode_obj *par, const struct m0_xcode_type **out)
 
M0_INTERNAL int m0_fop_rep_xc_type (const struct m0_xcode_obj *par, const struct m0_xcode_type **out)
 
M0_INTERNAL int m0_fop_fol_add (struct m0_fop *fop, struct m0_fop *rep, struct m0_dtx *dtx)
 
struct m0_rpc_machinem0_fop_session_machine (const struct m0_rpc_session *s)
 
int m0_fop_type_addb2_instrument (struct m0_fop_type *type)
 
void m0_fop_type_addb2_deinstrument (struct m0_fop_type *type)
 

Variables

const struct m0_rpc_item_type_ops m0_fop_default_item_type_ops
 
struct m0_fol_frag_type m0_fop_fol_frag_type
 

Macro Definition Documentation

◆ __MOTR_FOP_FOP_H__

#define __MOTR_FOP_FOP_H__

Definition at line 26 of file fop.h.