- Add support for abtract python classes

- Create first modules: the Policy Python class


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@335 3ecf2c5c-341e-0410-92b4-d18e462d057c
This commit is contained in:
tchernobog 2006-02-16 22:50:32 +00:00
parent 5554ec2256
commit b6c49d98d6
6 changed files with 145 additions and 38 deletions

View file

@ -30,36 +30,35 @@
namespace sgpem
{
class Policy;
class Policy;
/** \brief
e' una Strategy che rappresenta un algoritmo di scheduling che implementa una politica
di scheduling.
*/
class SG_DLLEXPORT Policy
{
public:
virtual ~Policy();
/** \brief
e' una Strategy che rappresenta un algoritmo di scheduling che implementa una politica
di scheduling.
*/
class SG_DLLEXPORT Policy
{
public:
virtual ~Policy();
virtual void configure() = 0;
virtual void sort_queue(sgpem::Scheduler::event) const = 0;
int get_id() const;
virtual Glib::ustring get_description() const = 0;
virtual bool is_pre_emptive() const = 0;
virtual int get_time_slice() const = 0;
virtual void set_time_slice(const int&) = 0;
virtual void configure() = 0;
virtual void sort_queue(sgpem::Scheduler::event) const = 0;
int get_id() const;
virtual Glib::ustring get_description() const = 0;
virtual bool is_pre_emptive() const = 0;
virtual int get_time_slice() const = 0;
virtual void set_time_slice(const int&) = 0;
const PolicyParameters& get_parameters() const;
const PolicyParameters& get_parameters() const;
private:
PolicyParameters _parameters;
int _id;
};
private:
PolicyParameters _parameters;
int _id;
};
}//~ namespace sgpem
#endif
#endif

View file

@ -27,19 +27,17 @@
namespace sgpem
{
class PolicyManager;
class SG_DLLEXPORT PolicyManager
{
public:
virtual ~PolicyManager() = 0;
class PolicyManager;
class SG_DLLEXPORT PolicyManager
{
public:
virtual ~PolicyManager() = 0;
virtual Policy* get_policy() = 0;
virtual void init() = 0;
};
}
virtual Policy& get_policy() = 0;
virtual void init() = 0;
};
} //~ namespace sgpem
#endif