-/* Copyright (c) 2010-2019. The SimGrid Team.
+/* Copyright (c) 2010-2020. The SimGrid Team.
* All rights reserved. */
/* This program is free software; you can redistribute it and/or modify it
namespace simgrid{
namespace smpi{
-class File{
+class File : public F2C{
MPI_Comm comm_;
int flags_;
simgrid::s4u::File* file_;
File(const File&) = delete;
File& operator=(const File&) = delete;
~File();
- int size();
- int get_position(MPI_Offset* offset);
- int get_position_shared(MPI_Offset* offset);
- int flags();
- MPI_Comm comm();
+ int size() const;
+ int get_position(MPI_Offset* offset) const;
+ int get_position_shared(MPI_Offset* offset) const;
+ int flags() const;
+ MPI_Comm comm() const;
int sync();
int seek(MPI_Offset offset, int whence);
int seek_shared(MPI_Offset offset, int whence);
int set_view(MPI_Offset disp, MPI_Datatype etype, MPI_Datatype filetype, const char* datarep, const Info* info);
- int get_view(MPI_Offset *disp, MPI_Datatype *etype, MPI_Datatype *filetype, char *datarep);
+ int get_view(MPI_Offset* disp, MPI_Datatype* etype, MPI_Datatype* filetype, char* datarep) const;
MPI_Info info();
void set_info( MPI_Info info);
static int read(MPI_File fh, void *buf, int count,MPI_Datatype datatype, MPI_Status *status);
static int del(const char* filename, const Info* info);
MPI_Errhandler errhandler();
void set_errhandler( MPI_Errhandler errhandler);
+ static File* f2c(int id);
};
/* Read_all, Write_all : loosely based on */