Good Afternoon,

I am working in a research about compression in ROMIO and I have a few problems for compressing/decompressing the noncontiguous types.
I have implemented a compression algorithm in the functions ADIOI_GEN_ReadContig/ADIOI_GEN_WriteContig that works fine (in UFS). 
For the noncontiguous case I have tried to let it like this given that ADIOI_GEN_ReadStrided/ADIOI_GEN_WriteStrided calls to the functions modified before, but this is not working.
Certainly I cannot understand some pieces of the code, and I cannot understand what is going on. 
My question is, how does the read-modify-write operation work (which I suppose is implemented in the macro ADIOI_BUFFERED_WRITE)?
What is your opinion about the possibility/impossibility of implementing compression this way?

Regards,

Alejandro Sanjuan