1 // vim: set expandtab tabstop=4 shiftwidth=4:
17 * HIT template with groups of templates added. You can specify a template
18 * group. The group is used as a subdirectory in root template directory, so you
19 * can group templates together. The default group ('') templates are stored in
22 class GHIT: public HIT {
26 typedef std::stack<string> GroupStack;
36 * Gets file name based on the blockname and the group.
38 * @param blockname Name of the block to get the filename.
39 * @return Block's filename.
41 virtual string getFileName(const string&);
47 * @param root Root directory from where to get the templates.
48 * @param postfix Postfix of the template files.
49 * @param group Starting group.
51 GHIT(const string& = string("."), const string& = string(".tpl"),
52 const string& = string(""));
60 * Starts working with a new group of templates.
62 * @param group Group of templates to work with.
64 virtual void pushGroup(const string&);
67 * Stops working with a group of templates.
69 * @return Last template's group used.
71 virtual string popGroup(void);
74 * Gets the current working group.
76 * @return Current template's group.
78 virtual string getGroup(void);