TimeManager
Functions | Variables
add.c File Reference

データベースにスケジュールを追加するコマンドに関する実装。 More...

#include "../include/add.h"
#include <limits.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#include <unistd.h>
#include "../include/common.h"
#include "../include/lock.h"
#include "../include/unlock.h"

Functions

static void print_usage ()
 ヘルプをstderrに出力する。
 
static int parse_arguments (int argc, char **argv, char *shm_name, int *d_opt, int *verbose)
 コマンドライン引数を解析する。 More...
 
static int read_schedule (struct schedule **sched)
 stdinからスケジュールを読み込む。 More...
 
int add (int argc, char *argv[])
 stdinからスケジュールを読み込み、データベースにレコードを追加する。 More...
 

Variables

static int verbose = 0
 

Detailed Description

データベースにスケジュールを追加するコマンドに関する実装。

Function Documentation

int add ( int  argc,
char *  argv[] 
)

stdinからスケジュールを読み込み、データベースにレコードを追加する。

stdinから始めの1行をスケジュールとして読み込む。 読み込んだスケジュールの終了時刻が、現在時刻よりも過去の場合は2を返す。

Parameters
[in]argcargc値
[in]argvargv値
Returns
成功時は0、失敗時には1、使用方法に誤りがある場合は2を返す。
static int parse_arguments ( int  argc,
char **  argv,
char *  shm_name,
int *  d_opt,
int *  verbose 
)
static

コマンドライン引数を解析する。

Parameters
[in]argcargc値
[in]argvargv値
[out]shm_name'-d'オプション(データベース番号)が反映される。
[out]d_opt'-d'オプション(データベース番号)が指定された場合、1が設 定される。
[out]verbose'-v'オプション(verboseモード)の値が反映される。
Returns
成功時は0、'h'オプションが指定された場合は1、不正な値が与えられた場 合は2を返す。
static int read_schedule ( struct schedule **  sched)
static

stdinからスケジュールを読み込む。

stdinから始めの1行をスケジュールとして読み込む。 読み込んだスケジュールの終了時刻が、現在時刻よりも過去の場合は1を返す。

Parameters
[out]sched読み込んだスケジュールが反映される。
Returns
成功時は0、失敗時には-1、不正なスケジュールの場合は1を返す。