CPP05 1.0
読み取り中…
検索中…
一致する文字列を見つけられません
ShrubberyCreationForm.hpp
[詳解]
1/* ************************************************************************** */
2/* */
3/* ::: :::::::: */
4/* ShrubberyCreationForm.hpp :+: :+: :+: */
5/* +:+ +:+ +:+ */
6/* By: kamitsui <kamitsui@student.42tokyo.jp> +#+ +:+ +#+ */
7/* +#+#+#+#+#+ +#+ */
8/* Created: 2025/06/30 12:48:26 by kamitsui #+# #+# */
9/* Updated: 2025/07/02 18:40:39 by kamitsui ### ########.fr */
10/* */
11/* ************************************************************************** */
12
18#ifndef SHRUBBERYCREATIONFORM_HPP
19#define SHRUBBERYCREATIONFORM_HPP
20
21#include "AForm.hpp"
22#include <fstream>
23
24class ShrubberyCreationForm : public AForm {
25 private:
27
28 public:
29 // Orthodox Canonical Form
34
35 // Action
36 virtual void performAction() const;
37};
38
39// ASCIIアートの各行を文字列配列として定義
40// 好みに合わせて内容を編集してください。
41const char *const ASCII_ART[] = {
42 "\033[93m * ",
43 " *** ",
44 " *****",
45 "\033[0m \033[32m*\033[0m",
46 " \033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m",
47 " \033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m",
48 " \033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m",
49 " \033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[94mO\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m",
50 " \033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[94mo\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m",
51 " \033[31mO\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32mO\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m",
52 " \033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[35mo\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[93mO\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m",
53 " \033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[92mO\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[34mO\033[0m\033[32m*\033[0m\033[32m*\033[0m",
54 " \033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[92mo\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m",
55 " \033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m",
56 " \033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[91mo\033[0m\033[31mo\033[0m\033[92mO\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[93mO\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[36mo\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m",
57 " \033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m",
58 " \033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[93mo\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[35mO\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32mo\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m",
59 "\033[32m*\033[0m\033[96mO\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[31mo\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m\033[32m*\033[0m",
60 "\033[33m |||",
61 " |||",
62 " |||",
63 "\033[0m",
64 "\033[92m Happy Holidays! \033[0m"};
65
66// ASCIIアートの行数を計算
67const int ASCII_ART_HEIGHT = sizeof(ASCII_ART) / sizeof(ASCII_ART[0]);
68
69#endif
An abstract base class for forms.
Definition AForm.hpp:34
A concrete form that creates a file with ASCII trees.
ShrubberyCreationForm & operator=(const ShrubberyCreationForm &other)
ShrubberyCreationForm(const std::string &target)
ShrubberyCreationForm(const ShrubberyCreationForm &other)
virtual void performAction() const
const char *const ASCII_ART[]
const int ASCII_ART_HEIGHT
Defines the abstract base class AForm for all specific forms.