Browse Source

init

tags/v1.0
Robin Thoni 9 years ago
commit
5ed2162d6b
5 changed files with 66 additions and 0 deletions
  1. 6
    0
      .gitignore
  2. 14
    0
      Makefile
  3. 7
    0
      src/main.cpp
  4. 24
    0
      src/mainclass.cpp
  5. 15
    0
      src/mainclass.hh

+ 6
- 0
.gitignore View File

@@ -0,0 +1,6 @@
1
+*.o
2
+*.a
3
+*.lib
4
+*.swp
5
+*~
6
+camotion-pifaceo

+ 14
- 0
Makefile View File

@@ -0,0 +1,14 @@
1
+CXX = g++
2
+CXXFLAGS = -Wall -Wextra -Werror -pedantic -std=c++1y
3
+SRC = main.cpp mainclass.cpp
4
+OBJ = $(addprefix src/, $(SRC:.cpp=.o))
5
+
6
+
7
+all: camotion-pifaceo
8
+
9
+camotion-pifaceo: $(OBJ)
10
+	$(LINK.cpp) $(OBJ) $(OUTPUT_OPTION)
11
+
12
+clean:
13
+	rm -f $(OBJ)
14
+	rm -f camotion-pifaceo

+ 7
- 0
src/main.cpp View File

@@ -0,0 +1,7 @@
1
+#include "mainclass.hh"
2
+
3
+int main(int argc, char* argv[])
4
+{
5
+  MainClass m{argc, argv};
6
+  return m.execute();
7
+}

+ 24
- 0
src/mainclass.cpp View File

@@ -0,0 +1,24 @@
1
+#include "mainclass.hh"
2
+#include <iostream>
3
+#include <libgen.h>
4
+#include <sysexits.h>
5
+
6
+MainClass::MainClass(int argc, char* argv[])
7
+  : argc_(argc)
8
+  , argv_(argv)
9
+{
10
+}
11
+
12
+int MainClass::usage()
13
+{
14
+  std::cerr << "Usage: " << basename(argv_[0]) <<
15
+    " [--up 0-7] [--down 0-7] [--sleep ms]" << std::endl;
16
+  return EX_USAGE;
17
+}
18
+
19
+int MainClass::execute()
20
+{
21
+  if (argc_ <= 2)
22
+    return usage();
23
+  return 0;
24
+}

+ 15
- 0
src/mainclass.hh View File

@@ -0,0 +1,15 @@
1
+#ifndef MAINCLASS_HH
2
+# define MAINCLASS_HH
3
+class MainClass
4
+{
5
+  public:
6
+    MainClass(int argc, char* argv[]);
7
+
8
+    int usage();
9
+    int execute();
10
+
11
+  private:
12
+    int argc_;
13
+    char** argv_;
14
+};
15
+#endif /* !MAINCLASS_HH */

Loading…
Cancel
Save