summaryrefslogtreecommitdiff
path: root/sched.c
diff options
context:
space:
mode:
Diffstat (limited to 'sched.c')
-rw-r--r--sched.c48
1 files changed, 48 insertions, 0 deletions
diff --git a/sched.c b/sched.c
new file mode 100644
index 0000000..d5f110e
--- /dev/null
+++ b/sched.c
@@ -0,0 +1,48 @@
+#include <stdio.h>
+#include <ncurses.h>
+#include <time.h>
+
+/* report of working on a task, records start time in time_t, and elapsed time
+ * also in time_t. % of work done in float.
+ */
+struct report {
+ time_t start; //start date
+ time_t interval; //interval of work
+ float completed; // percent of task completed
+};
+/* Task to be scheduled
+ */
+struct task {
+ const char * name; //name of task
+ int lvl;
+ time_t start; //Date at which you can work on this task
+ time_t end; //due date
+ time_t workable; //workable interval
+ time_t deJureCost;// De Jure estimate of total cost
+ float completed; // percent of the task completed
+ float cost; // time per percent completed, current bayesian analysis
+ float saturation; //saturation
+ struct report * reports; //list of reports
+ time_t lastupdated; // last date the task was edited/created, for syncing
+};
+/*global array of all tasks*/
+struct task * tasks;
+
+int main (int argc,char * argv[]) {
+ initscr();
+ raw(); //Characters immediately available
+ noecho(); //Typed Characters not printed
+ keypad(stdscr, true); // enables Keyoad and Function keys
+ mvprintw(LINES/2, COLS/2, "%s\n", argv[0]);
+ refresh(); //refreshes the screen
+ getch(); //Stalls the thread
+ endwin();
+ return 0;
+}
+/* creates a tab transversable menu list of input boxes
+ * Arguments: names of the inputs and the defaults in the text field
+ * if def
+ */
+int inputmenu(char * names[], char * in) {
+
+}