TimeManager
|
空き時間のスケジュールを作成するコマンドに関する実装。 More...
#include "../include/unoccupied.h"
#include <assert.h>
#include <limits.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#include <unistd.h>
#include "../include/common.h"
Macros | |
#define | DEFAULT_RANGE 3600 |
#define | EXIT_NOT_FOUND 3 |
Functions | |
static int | generate_unoccupied_sched (const char *shm_name, time_t begin, unsigned int range, struct schedule *sched) |
指定された条件から、空き時間のスケジュールを作成する。 More... | |
static int | output_input () |
stdinの内容をstdoutに受け流す。 More... | |
static int | output_schedule (struct schedule *in, struct schedule *uo) |
inにuoの値を反映したスケジュールをstdoutに出力する。 More... | |
static void | print_usage () |
ヘルプをstderrに出力する。 | |
static int | parse_arguments (int argc, char **argv, char *shm_name, int *opt_d, time_t *begin, unsigned int *range, int *verbose) |
コマンドライン引数を解析する。 More... | |
static int | read_schedule (struct schedule *sched) |
stdinからスケジュールを読み込む。スケジュールはバリデートされる。 More... | |
int | unoccupied (int argc, char *argv[]) |
空き時間のスケジュールを作成し、stdinから読み込んだスケジュールに反映 して、stdoutに出力する。 More... | |
Variables | |
static int | verbose = 0 |
空き時間のスケジュールを作成するコマンドに関する実装。
#define DEFAULT_RANGE 3600 |
空き時間を検索する範囲の初期値(sec)
#define EXIT_NOT_FOUND 3 |
空き時間が見つからない場合の戻り値
|
static |
指定された条件から、空き時間のスケジュールを作成する。
[in] | shm_name | データベース名。 |
[in] | begin | 開始時刻(time_t)。 |
[in] | range | 検索範囲(sec)。 |
[out] | sched | 作成したスケジュールが反映される。 |
|
static |
stdinの内容をstdoutに受け流す。
inにuoの値を反映したスケジュールをstdoutに出力する。
inのduration値が0以外の場合は、uoのduration値を反映しない。
[in] | in | stdinから読み込んだスケジュール。 |
[in] | uo | 反映する空き時間のスケジュール。 |
|
static |
コマンドライン引数を解析する。
[in] | argc | argc値 |
[in] | argv | argv値 |
[out] | shm_name | '-i'オプション(id値)が反映される。 |
[out] | opt_d | '-d'オプション(データベース番号)が指定された場合、1が設定される。 |
[out] | begin | '-b'オプション(検索開始時刻(time_t))の値が反映される。 |
[out] | range | '-r'オプション(空き時間を検索する範囲(sec))の値が反映される。 |
[out] | verbose | '-v'オプション(verboseモード)の値が反映される。 |
|
static |
stdinからスケジュールを読み込む。スケジュールはバリデートされる。
[out] | sched | 読み込んだスケジュールが反映される。 |
int unoccupied | ( | int | argc, |
char * | argv[] | ||
) |
空き時間のスケジュールを作成し、stdinから読み込んだスケジュールに反映 して、stdoutに出力する。
[in] | argc | argc値 |
[in] | argv | argv値 |