summaryrefslogtreecommitdiffstats
path: root/src/ctdow.h
blob: 8616185998fd3f88a7a7aa2871a717b5e459f281 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
/***************************************************************************
 *   CT Day of Week Header                                                 *
 *   --------------------------------------------------------------------  *
 *   Copyright (C) 1999, Gary Meyer <gary@meyer.net>                       *
 *   --------------------------------------------------------------------  *
 *   This program is free software; you can redistribute it and/or modify  *
 *   it under the terms of the GNU General Public License as published by  *
 *   the Free Software Foundation; either version 2 of the License, or     *
 *   (at your option) any later version.                                   * 
 ***************************************************************************/

#ifndef CTDOW_H
#define CTDOW_H

// Do not introduce any TQt or KDE dependencies into the "CT"-prefixed classes.
// I want to be able to reuse these classes with another GUI toolkit. -GM 11/99

#include "ctunit.h"
#include <string>

/**
  * Scheduled task days of week.
  */
class CTDayOfWeek : public CTUnit<1,7>
{
public:
/**
  * Constructs from a tokenized string.
  */
  CTDayOfWeek(const string& tokStr = "");

/**
  * Default copy constructor.
  */
  // CTDayOfWeek(const CTDayOfWeek& source);

/**
  * Default assignment operator
  */
  // void operator = (const CTDayOfWeek& source);

/**
  * Default destructor.
  */
  // ~CTDayOfWeek();

/**
  * Override initialize to support crontab using both 0 and 7 for
  * Sunday.
  */
  void initialize(const string &tokStr = "");

/**
  * Get natural language description.
  */
  virtual string describe() const;

/**
  * Get day of week name.
  */
  static string getName(const int ndx,
    const bool format = CTDayOfWeek::longFormat);

private:
  static void initializeNames();
  static string shortName[8];
  static string longName[8];
};

#endif // CTDOW_H