Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Reimplement s4u::Barrier natively, and make them visible from MC
[simgrid.git] / include / simgrid / mailbox.h
index a21900a681d202a94b2520a4784c44a2f0beb523..7680a6d73bc6e839bf1f9560e84bdd67aa3ed1ff 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (c) 2018-2019. The SimGrid Team. All rights reserved.          */
+/* Copyright (c) 2018-2022. The SimGrid Team. All rights reserved.          */
 
 /* This program is free software; you can redistribute it and/or modify it
  * under the terms of the license (GNU LGPL) which comes with this package. */
@@ -7,14 +7,22 @@
 #define INCLUDE_SIMGRID_MAILBOX_H_
 
 #include <simgrid/forward.h>
-#include <xbt/base.h>
 
 /* C interface */
 SG_BEGIN_DECL
 
+XBT_PUBLIC sg_mailbox_t sg_mailbox_by_name(const char* alias);
+XBT_PUBLIC const char* sg_mailbox_get_name(const_sg_mailbox_t mailbox);
 XBT_PUBLIC void sg_mailbox_set_receiver(const char* alias);
 XBT_PUBLIC int sg_mailbox_listen(const char* alias);
 
+XBT_PUBLIC sg_comm_t sg_mailbox_put_init(sg_mailbox_t mailbox, void* payload, long simulated_size_in_bytes);
+XBT_PUBLIC sg_comm_t sg_mailbox_put_async(sg_mailbox_t mailbox, void* payload, long simulated_size_in_bytes);
+XBT_PUBLIC void sg_mailbox_put(sg_mailbox_t mailbox, void* payload, long simulated_size_in_bytes);
+
+XBT_PUBLIC sg_comm_t sg_mailbox_get_async(sg_mailbox_t mailbox, void** data);
+XBT_PUBLIC void* sg_mailbox_get(sg_mailbox_t mailbox);
+
 SG_END_DECL
 
 #endif /* INCLUDE_SIMGRID_MAILBOX_H_ */