Commit Graph

426 Commits

Author SHA1 Message Date
tchernobog e2211907f5 - Add documentation for classes:
- (C++) PythonPolicyManager
  - (Python) Policy, ScriptAdapter, fcfs


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@408 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-23 18:55:14 +00:00
elvez 9091035003 - Commented file
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@407 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-23 18:09:33 +00:00
elvez 34fba3517a - Commented file
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@406 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-23 18:01:00 +00:00
johnny 1d326590ee - "Commenting The Source(tm)" 02-2006 - The best summer camp of the world - First part
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@405 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-23 17:59:02 +00:00
elvez cf01cd6611 - Commented file
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@404 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-23 17:19:20 +00:00
tchernobog c996eca3ba - Add yet-not-functional code for managing the "return" keypress
in the input entrybox


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@398 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-23 12:50:19 +00:00
tchernobog 1a1c9b943a - Temporarily solve synchronization problem. A more correct
and complete solution is of course using a mutex.


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@397 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-23 12:12:43 +00:00
tchernobog ec5d813a7c - Move SWIG interface file to the correct subdir
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@396 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-23 11:36:13 +00:00
tchernobog 8d6b7c500e - Fix test to initialize a set of processes and run a simulation
- The test needs to be linked to Gtkmm, even if it doesn't use it. 
This is wrong and a coding anomaly that will need to be resolved.
- Add debug code to fcfs.py. Please remove it when it'll be okay
- Calling dir(SchedulableList.get_item_at(x)) from Python shows
a worringly empty list!


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@395 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-23 11:29:25 +00:00
tchernobog a2a492b5d5 - Previous segmentation fault was due to a faulty call (wrong parameters
to ScriptAdapter.__wrap_sort_queue()). Now prints an error and check
for retval before Py_DECREF'ing it.
- Fix(?) qsort implementation in Policy
- SWIG doesn't understand "uint". Change into more verbose (but surely
standard) unsigned int


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@394 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-23 10:12:27 +00:00
tchernobog 075e12d14d - Add note that building with --disable-shared at the moment doesn't work
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@393 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-23 09:26:27 +00:00
fpaparel 8eeeaae3f5 - hemm... updated also the header!!
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@391 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-22 23:21:12 +00:00
fpaparel b7f3086286 - implemented swap in schedulable_list.cc
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@390 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-22 23:19:51 +00:00
tchernobog 73a3e72118 - Implement first draft of quicksort in Python
- Extend test to have a set of processes (now lacks
significative output)
- Extend FCFS policy to do something useful
- FIXME : segfaults on sortQueue()
- FIXME : needs implementation for SchedulableQueue.swap()


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@389 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-22 22:57:32 +00:00
fpaparel 7110279f53 - The grafical interpreter now works
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@388 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-22 22:45:06 +00:00
tchernobog 47451bf78d - Add swap() method signature to SchedulableQueue
- Export swap() to SWIG
- Add sort function (just its documentation, actually, implementation will
follow) to Policy.py


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@385 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-22 21:35:26 +00:00
tchernobog eecb9f109f - "Yeehaw! It's working! I can't believe it! And they said that an imitation
diamond wasn't good enough..." :-)


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@384 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-22 20:36:33 +00:00
tchernobog 8f655f2f69 - Finish implementing async setup for Python policies' access
- Correct method names for the Python policy (design problem?)
- Compiles, but can't run it on this machine. I'll test it later
(and I expect quite a lot of SIGSEGVs).


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@382 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-22 15:16:08 +00:00
tchernobog 4e65ca6cd0 - Super mega hacked implementation of python_policy_manager.
Haven't tried running it.


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@380 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-22 12:39:30 +00:00
tchernobog 712e14f558 - Add first undocumented (and quite useless) test for libpyloader.
It doesn't work properly for no apparent reason.
- Add SWIG interface generation for Scheduler


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@375 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-21 22:57:14 +00:00
tchernobog 9471870adb - Added initial interface for the PythonScript adapter
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@371 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-21 15:18:13 +00:00
tchernobog 633416f340 - Add preliminary code for Python policy management
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@370 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-21 12:20:14 +00:00
tchernobog 2e1a699b65 - This is a save point (everything compiles again) ;-)
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@369 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-21 11:30:19 +00:00
fpaparel ef659927c4 - Die tortoise-svn die
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@368 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-21 11:29:05 +00:00
fpaparel 0de370f4d3 - Add dummy policy left out of previous commit
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@367 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-21 11:15:57 +00:00
fpaparel 4482b98df7 - fixed a number of bugs
- added dummy_policy written in C++
- the interpreter is now finished (hopefully)


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@366 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-21 11:09:55 +00:00
tchernobog ea70e2f092 - Typos
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@365 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-21 10:31:01 +00:00
tchernobog 7d58c965ff - Add initial layout for further builtin policies (needs
to be expanded / fixed)


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@363 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-21 07:39:39 +00:00
tchernobog b788ebab4b - Fix Python/C++ module compilation when compiler supports
the -fvisibility=hidden option
- Update Makefile consequentially


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@361 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-20 21:26:08 +00:00
tchernobog b3ba006800 - Rewrite sgpem module interface file with adapter methods
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@360 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-20 19:10:16 +00:00
tchernobog c4c4ef378f - Fix documentation a little
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@359 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-20 12:56:28 +00:00
tchernobog 8c05219cec - Add newlines at the end of source files. I hope not having to do this
frequently! (it's a two-liner script, but nevertheless...)


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@355 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-19 22:36:24 +00:00
tchernobog b9c4813f11 - Add first draft of SWIG interface file, and create Python
loadable module. However, please note that:
	- All the methods accepting a Glib::ustring should
	not be exported, instead they should be replaced by wrapper
	functions accepting PyObject*.
	- The same thing applies to every other method accepting
	a ``non built-in'' data type
	- Return types should probably be wrapped, too
	- It may be a good idea to implement wrapper methods 
	that print out the content of a C++ object, 
	so that a Python user can do a simple "print schedStat". 
	This is achieved by adding a "__str__()" method to the 
	class. See the SWIG manual for further infos about
	returning const char* values.


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@354 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-19 22:25:23 +00:00
tchernobog 9b40d632eb - Fix documentation for Python Abstract module
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@353 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-19 16:22:53 +00:00
tchernobog 8bb6220819 - Merged branch to avoid recursive make
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@349 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-19 14:34:41 +00:00
tchernobog 07b0cd2687 - Fix compilation
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@343 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-17 23:33:35 +00:00
fpaparel 759dfdad25 - added console interpreter
- added string_utils

git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@342 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-17 22:19:25 +00:00
tchernobog 3ba6b90f30 - Add missing files
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@338 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-17 16:08:54 +00:00
tchernobog 74df8ba0d2 - Temporary hack to Makefile. To be fixed.
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@337 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-17 12:45:30 +00:00
tchernobog 6e15465e16 - Remove spurious files left from previous commit (these
files were moved to the pyloader directory)


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@336 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-17 12:34:12 +00:00
tchernobog b6c49d98d6 - 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
2006-02-16 22:50:32 +00:00
tchernobog 5554ec2256 - Initial split of libpyloader from libbackend. Will need rework
in order to:
  - fix wrong design
  - fix include paths
  - fix installation of header files


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@333 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-16 21:29:51 +00:00
fpaparel 6d5e9270a8 - added few frontend classes
- updated others from backend

git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@330 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-15 22:58:18 +00:00
tchernobog 6cf67202c7 - Add Python preprocessor flags to src/ and src/backend Makefiles
- Add -Wno-long-long to compiler options in order to workaround Python types' evilness


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@322 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-13 16:35:00 +00:00
fpaparel 146b3c99cc - Now all backend classes are present (not all complete)
- Can't compile when trying to link with Python
         + check -pedantic parameter
         + when compiling main.cc there is no -I/..../Python parameter


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@321 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-13 11:32:05 +00:00
fpaparel e2a0c3f248 - added scheduler and other incomplete backend classes
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@319 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-12 17:12:54 +00:00
tchernobog 98cc6fb20b - Check for --as-needed linking flag
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@318 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-12 16:06:38 +00:00
tchernobog d6a19ca35d - Write code for the graphical terminal widget
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@315 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-10 20:44:48 +00:00
tchernobog be3de1dade - Add exception throwing specifications to methods
- Coding style fixes


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@313 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-10 11:47:25 +00:00
tchernobog 87558b5c26 - Change filenames to follow a consistent naming scheme
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@307 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-09 19:43:24 +00:00
tchernobog 68a0cef9d9 - Fixed code to follow function naming conventions a bit more
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@306 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-09 19:33:35 +00:00
fpaparel e8b28cc2ec - Added some source code
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@304 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-09 18:51:26 +00:00
tchernobog d56fd53f2d - Revert my own commit - revision 299 (unneeded changes)
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@302 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-07 20:48:22 +00:00
tchernobog 235fdfdbe0 - Prefix our macros with "SG_", as per Luca request
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@301 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-07 20:41:59 +00:00
tchernobog 7de2c281bb - Fix documentation for smartp.hh
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@300 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-07 20:21:19 +00:00
tchernobog ab3b8e5686 - Update makefiles to make use of include dir with templates
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@299 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-07 20:13:50 +00:00
tchernobog 78de185d75 - Add template class implementing a smart pointer (a class of general utility)
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@298 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-07 20:11:03 +00:00
fpaparel 8f02d11b0a - Added some source in the backend lib
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@293 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-06 21:37:32 +00:00
tchernobog 07d76c3554 - Use pkgdatadir instead of datadir + pkgname
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@287 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-04 13:14:55 +00:00
tchernobog d007d72011 - Typo
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@286 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-03 21:53:30 +00:00
tchernobog 061404dedc - Never add autotool generated files to repository (e.g. Makefile.in)
- Use a "\" to prevent line breaks when you must split some command on more than a line. The slash must be the _last_ character present on a line.


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@285 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-02 14:37:06 +00:00
fpaparel b1822d7284 - Can't compile source. Need help...
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@284 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-02 13:46:48 +00:00
tchernobog e008b0d4db - Corrected TextView -> Entry
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@282 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-01 22:56:29 +00:00
tchernobog fc8d5cb258 - Make inserting filenames into vector simpler
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@281 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-01 14:07:09 +00:00
tchernobog fc84d1ec9d - Fix api docs: aesthetics
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@273 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-01-31 11:59:38 +00:00
tchernobog 4cad356657 - Get DSO visibility check right in configure.ac. Now it should
work correctly with GCC >= 4.0, while doing nothing for GCC < 4.0
- Add class sgpem::schedulable to test for DSO visibility export.
Methods may need to be reordered to conform to coding style guidelines


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@244 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-01-28 20:39:29 +00:00
tchernobog 50c64762ef - Added the possibility to pass LT_LDFLAGS to configure in order
to obtain a completely static build


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@241 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-01-27 19:26:27 +00:00
tchernobog 420a7f0e95 - Reorganize sources to split them across three parts:
- The main program, the frontend
	- A pyton loader library
	- The backend library
Happy hacking.


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@240 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-01-27 17:57:53 +00:00
tchernobog 042549c290 - Start adding interface for the frontend IO section.
Should we use namespaces?


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@236 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-01-27 15:04:06 +00:00
tchernobog bf61f8bebd - Put opening braces on a newline, as per coding-style rules
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@226 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-01-27 10:04:49 +00:00
tchernobog 2f9d0367cd - Show an example of the use of a signal, and basic packing, for
the developer


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@217 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-01-26 23:06:18 +00:00
tchernobog 692fc55553 - Small fixes to class documentation
- Now distcheck works correctly, including a copy of the API
documentation in the built dist tar.


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@214 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-01-26 22:41:42 +00:00
tchernobog 26f88aa4cf - Separate work in a main program and two libraries. This is experimental, and
ideally it should be a target to work towards decoupling
- Still more experimental, added support for visibility exports from DSOs. Need
testing from someone with GCC 4.0


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@206 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-01-26 18:31:23 +00:00
tchernobog 72fac2b901 - Added support for command line option parsing
- Creates a vector with filenames to be opened; not actually useful now,
it's already in place when it'll be needed.


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@191 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-01-25 17:50:36 +00:00
tchernobog ef6dd558d2 - Added separate directory for keeping builtin policies
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@181 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-01-21 15:02:09 +00:00
tchernobog 3c1883fafd - Lay out directory for keeping tests
- Create Makefile for sources, add main.cc that just prints the 
license as a test for the rules.


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@175 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-01-15 19:40:02 +00:00