Subversion Repositories shark

Rev

Rev 889 | Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
881 trimarchi 1
//fsf.h
2
//===========================================================
3
//       FFFFFFIII   RRRRR      SSTTTTTTT
4
//      FF         IIR   RR    SS
5
//     FF           IR        SS
6
//    FFFFFF         RRRR    SSSSST
7
//   FF       FI       RRR  SS
8
//  FF         II     RRR  SS
9
// FF           IIIIIR    RS
10
//
11
// FSF(FIRST Scheduling Framework) available functionality
12
//============================================================
13
 
14
#include "fsf_configuration_parameters.h"
15
#include "fsf_opaque_types.h"
16
#include "fsf_basic_types.h"
17
#include "fsf_core.h"
18
#include "fsf_server.h"
19
 
20
 
21
 
22
// Configure theses modules by commenting out the appropiate lines
23
 
24
#include "fsf_hierarchical.h"         //
25
#include "fsf_shared_objects.h"
26
#include "fsf_dynamic_reclaiming.h"   //
27
#include "fsf_spare_capacity.h"
28
//#include "fsf_distributed_services.h"
29
 
30
#ifndef _FSF_H_
31
#define _FSF_H_
32
 
33
#ifndef FSF_HIERARCHICAL_MODULE_SUPPORTED
34
    #define FSF_HIERARCHICAL_MODULE_SUPPORTED        0
35
 
36
#endif  //FSF_HIERARCHICAL_MODULE_SUPPORTED
37
 
38
#ifndef FSF_SHARED_OBJECTS_MODULE_SUPPORTED
39
    #define FSF_SHARED_OBJECTS_MODULE_SUPPORTED      0
40
#endif  //FSF_SHARED_OBJECTS_MODULE_SUPPORTED
41
 
42
#ifndef FSF_DYNAMIC_RECLAIMING_MODULE_SUPPORTED
43
    #define FSF_DYNAMIC_RECLAIMING_MODULE_SUPPORTED  0
44
#endif  //FSF_DYNAMIC_RECLAIMING_MODULE_SUPPORTED
45
 
46
#ifndef FSF_SPARE_CAPACITY_MODULE_SUPPORTED
47
    #define FSF_SPARE_CAPACITY_MODULE_SUPPORTED      0
48
 
49
    //Return warnings if spare_capacity module is not included:
50
 
51
    //get rid of the pritfs (t.b.d)
52
 
53
    #define fsf_set_contract_reclamation_parameters  \
54
      (contract, budget_max, period_min, granularity,\
55
       utilization_set, quality,  importance)        \
56
       ( FSF_WRN_MODULE_NOT SUPPORTED )
57
 
58
    #define fsf_get_contract_reclamation_parameters  \
59
      (contract, budget_max, period_min, granularity,\
60
       utilization_set, quality, importance)         \
61
       ( FSF_WRN_MODULE_NOT SUPPORTED )
62
 
63
    #define fsf_request_change_quality_and_importance\
64
      (server, new_importance, new_quality)          \
65
       ( FSF_WRN_MODULE_NOT SUPPORTED )
66
 
67
    #define fsf_get_total_quality (server,total_quality)\
68
       ( FSF_WRN_MODULE_NOT SUPPORTED )
69
 
70
#endif  //FSF_SPARE_CAPACITY_MODULE_SUPPORTED
71
 
72
#ifndef FSF_DISTRIBUTED_SERVICES_MODULE_SUPPORTED
73
   #define FSF_DISTRIBUTED_SERVICES_MODULE_SUPPORTED 0
74
#else
75
 
76
   //system topology, it is the same in all the 
77
   //nodes involved
78
   fsf_system_topology_t  system =
79
   { 1,                          // number of networks
80
     { 1,                          //network id
81
          3,                         //number of nodes
82
                                     // in the network
83
            { 1, 2, 3, 0, 0 }           //node ids
84
     },
85
     { 0, 0, { 0, 0, 0, 0, 0 } },
86
     { 0, 0, { 0, 0, 0, 0, 0 } },
87
     { 0, 0, { 0, 0, 0, 0, 0 } }
88
   }
89
 
90
   //this value should be different in each node. 
91
   //But may be modified on-line before starting 
92
   //network/remote negotiations
93
   fsf_node_id_t          local_node_id = 1;
94
 
95
#endif  //FSF_DISTRIBUTED_SERVICES_MODULE_SUPPORTED
96
 
97
#endif // _FSF_H_