# Transaction Iterator Callback

When `mco_trans_iterate()` is called it must pass a callback function defined as follows:

        typedef MCO_RET (*mco_trans_iterator_callback_t)(mco_trans_h t, MCO_Hf* obj, int cid, int obj_state, void* user_ctx);

The parameters are as follows:

t | A valid transaction handle.
obj | A valid object handle.
cid | The class code of this object.
obj_state | The state of this object in the transaction as defined by enum MCO_TRANS_OBJ_STATE.
ctx | Any user-defined context data to be used by the callback function.

An example of an iterator callback implementation is provided in the SDK sample "samples/native/core/07-transactions/iterate".