SimGrid  3.18
Versatile Simulation of Distributed Systems
surf_interface.hpp File Reference
#include "xbt/signal.hpp"
#include "xbt/utility.hpp"
#include "src/surf/surf_private.hpp"
#include "surf/surf.hpp"
#include "xbt/str.h"
#include <boost/heap/pairing_heap.hpp>
#include <boost/intrusive/list.hpp>
#include <boost/optional.hpp>
#include <cmath>
#include <set>
#include <string>
#include <unordered_map>

Classes

class  simgrid::surf::Action
 SURF action interface class. More...
 
class  simgrid::surf::Model
 SURF model interface class. More...
 
struct  s_surf_metric_t
 Resource which have a metric handled by a maxmin system. More...
 
class  simgrid::surf::Resource
 SURF resource interface class. More...
 
class  std::hash< simgrid::surf::Resource >
 

Namespaces

 simgrid
 Alltoall Bruck.
 
 simgrid::surf
 
 std
 

Macros

#define NO_MAX_DURATION   -1.0
 

Typedefs

typedef std::pair< double, simgrid::surf::Action * > simgrid::surf::heap_element_type
 
typedef boost::heap::pairing_heap< heap_element_type, boost::heap::constant_time_size< false >, boost::heap::stable< true >, boost::heap::compare< simgrid::xbt::HeapComparator< heap_element_type > > > simgrid::surf::heap_type
 
typedef Action::ActionList simgrid::surf::ActionList
 
typedef boost::intrusive::member_hook< Action, boost::intrusive::list_member_hook<>, &Action::action_lmm_hook > simgrid::surf::ActionLmmOptions
 
typedef boost::intrusive::list< Action, ActionLmmOptions > simgrid::surf::ActionLmmList
 
typedef ActionLmmList * simgrid::surf::ActionLmmListPtr
 

Enumerations

enum  heap_action_type { LATENCY = 100, MAX_DURATION, NORMAL, NOTSET }
 

Functions

static void double_update (double *variable, double value, double precision)
 
static int double_positive (double value, double precision)
 
static int double_equals (double value1, double value2, double precision)
 
double surf_get_clock ()
 Return the current time. More...
 
int __surf_is_absolute_file_path (const char *file_path)
 

Variables

double sg_maxmin_precision
 
double sg_surf_precision
 
int sg_concurrency_limit
 
double sg_tcp_gamma
 
double sg_latency_factor
 
double sg_bandwidth_factor
 
double sg_weight_S_parameter
 
int sg_network_crosstraffic
 
std::vector< std::stringsurf_path
 
std::unordered_map< std::string, tmgr_trace_ttraces_set_list
 
std::set< std::stringwatched_hosts
 set of hosts for which one want to be notified if they ever restart. More...
 
std::vector< sg_host_thost_that_restart
 List of hosts that have just restarted and whose autorestart process should be restarted. More...
 
std::vector< surf_model_t > * all_existing_models
 List of initialized models. More...
 

Macro Definition Documentation

◆ NO_MAX_DURATION

#define NO_MAX_DURATION   -1.0

Enumeration Type Documentation

◆ heap_action_type

Enumerator
LATENCY 
MAX_DURATION 
NORMAL 
NOTSET 

Function Documentation

◆ double_update()

static void double_update ( double *  variable,
double  value,
double  precision 
)
inlinestatic

◆ double_positive()

static int double_positive ( double  value,
double  precision 
)
inlinestatic

◆ double_equals()

static int double_equals ( double  value1,
double  value2,
double  precision 
)
inlinestatic

◆ __surf_is_absolute_file_path()

int __surf_is_absolute_file_path ( const char *  file_path)

Variable Documentation

◆ sg_maxmin_precision

double sg_maxmin_precision

◆ sg_surf_precision

double sg_surf_precision

◆ sg_concurrency_limit

int sg_concurrency_limit

◆ sg_tcp_gamma

double sg_tcp_gamma

◆ sg_latency_factor

double sg_latency_factor

◆ sg_bandwidth_factor

double sg_bandwidth_factor

◆ sg_weight_S_parameter

double sg_weight_S_parameter

◆ sg_network_crosstraffic

int sg_network_crosstraffic

◆ surf_path

std::vector<std::string> surf_path

◆ traces_set_list

std::unordered_map<std::string, tmgr_trace_t> traces_set_list

◆ watched_hosts

std::set<std::string> watched_hosts

set of hosts for which one want to be notified if they ever restart.