home *** CD-ROM | disk | FTP | other *** search
/ ftp.parl.clemson.edu / 2015-02-07.ftp.parl.clemson.edu.tar / ftp.parl.clemson.edu / pub / pvfs2 / orangefs-2.8.3-20110323.tar.gz / orangefs-2.8.3-20110323.tar / orangefs / test / io / buffer / test1.c < prev    next >
C/C++ Source or Header  |  2006-10-18  |  2KB  |  84 lines

  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include "ncac-interface.h"
  4. #include "internal.h"
  5.  
  6. #include "trove.h"
  7.  
  8. #include "trove-init.c"
  9.  
  10. int main(int argc, char * argv[])
  11. {
  12.     PVFS_offset offarr[100];
  13.     PVFS_size sizearr[100];
  14.  
  15.     cache_read_desc_t desc;
  16.     cache_request_t request[100];
  17.     cache_reply_t reply[100];
  18.     NCAC_info_t info;
  19.  
  20.     int ret;
  21.  
  22.     int flag;
  23.  
  24.     TROVE_coll_id coll_id;
  25.     TROVE_handle file_handle;
  26.     TROVE_context_id trove_context;
  27.  
  28.     trove_init( &coll_id, &file_handle, &trove_context );
  29.  
  30.     info.max_req_num = 1000;
  31.     info.extsize     = 32768;
  32.     info.cachesize   = 1048576;
  33.  
  34.     cache_init(&info);
  35.  
  36.     desc.coll_id     = coll_id;
  37.     desc.handle     = file_handle;
  38.     desc.context_id     = trove_context;
  39.  
  40.     desc.buffer = 0;
  41.     desc.len    = 0;
  42.  
  43.     desc.stream_array_count=1;
  44.     desc.stream_offset_array = offarr;
  45.     desc.stream_size_array = sizearr;
  46.     offarr[0] = 1024;
  47.     sizearr[0] = 32768;
  48.     
  49.     ret = cache_read_post(&desc, &request[0], &reply[0], NULL);
  50.     if (ret<0){
  51.         fprintf(stderr, "cache_read_post error\n");
  52.     }else{
  53.         fprintf(stderr, "cache_read_post ok: status: %d, cbufcnt=%d\n", request[0].status, reply[0].count);
  54.     }
  55.  
  56.  
  57. #if 1
  58.     while ( 1 ){
  59.         ret = cache_req_test(&request[0], &flag, &reply[0], NULL);
  60.         if (ret<0){
  61.             fprintf(stderr, "cache_req_test error\n");
  62.         }else{
  63.             if (flag){
  64.                 fprintf(stderr, "cache_req_test ok: flag=%d, status: %d, cbufcnt=%d\n", flag, request[0].status, reply[0].count);
  65.         break;        
  66.             }
  67.         }
  68.     }
  69.  
  70.     if (flag){
  71.         ret = cache_req_done(&request[0]);
  72.         if (ret<0){
  73.             fprintf(stderr, "cache_req_done error\n");
  74.         }else
  75.             fprintf(stderr, "cache_req_done ok---\n");
  76.     }
  77. #endif
  78.  
  79.     trove_close_context(coll_id, trove_context);
  80.     trove_finalize(TROVE_METHOD_DBPF);
  81.  
  82.     return 0;
  83. }
  84.