etrobocon2018 feat.KatLab  770af34cce41ae9c30c41303275e1add2daae0c3 (with uncommitted changes)
 全て クラス 名前空間 ファイル 関数 変数 列挙型 列挙値 フレンド マクロ定義 ページ
公開メンバ関数 | 公開変数類 | 全メンバ一覧
Controller クラス

#include <Controller.h>

Controller 連携図
Collaboration graph

公開メンバ関数

 Controller ()
 
void speakerSetVolume (uint8_t volume)
 
void ledSetColorOrange ()
 
void ledSetColorGreen ()
 
int16_t getBrightness ()
 
void speakerPlayTone (uint16_t frequency, int32_t duration)
 
bool buttonIsPressedBack ()
 
bool buttonIsPressedUp ()
 
bool buttonIsPressedDown ()
 
bool buttonIsPressedRight ()
 
bool buttonIsPressedLeft ()
 
bool buttonIsPressedEnter ()
 
float measureBatteryVoltage ()
 
void tslpTsk (int16_t time)
 
void printDisplay (int8_t row, const char *format,...)
 
void getRawColor (uint16_t &r, uint16_t &g, uint16_t &b)
 
 Controller ()
 
void speakerSetVolume (int volume)
 
void ledSetColorOrange ()
 
void ledSetColorGreen ()
 
int getBrightness ()
 
void speakerPlayTone (int frequency, int duration)
 
bool buttonIsPressedBack ()
 
void getRawColor (std::uint16_t &r, std::uint16_t &g, std::uint16_t &b)
 
bool buttonIsPressedUp ()
 
bool buttonIsPressedDown ()
 
bool buttonIsPressedRight ()
 
bool buttonIsPressedLeft ()
 
bool buttonIsPressedEnter ()
 
void tslpTsk (int time)
 
void printDisplay (int row, const char *format,...)
 
void setMockRgb (std::uint16_t r, std::uint16_t g, std::uint16_t b)
 

公開変数類

uint16_t noteFs6 = NOTE_FS6
 
uint16_t noteFs4 = NOTE_FS4
 
TouchSensor touchSensor
 
ColorSensor colorSensor
 
Motor liftMotor
 
Motor rightWheel
 
Motor leftWheel
 
Motor tailMotor
 
Clock clock
 
int noteFs6 = 0
 
int noteFs4 = 0
 
int countLimit = 100
 
int counter = 0
 
int exitCounter = 0
 
int exitCountLimit = 1000
 
int brightness = 0
 
std::uint16_t mock_r
 
std::uint16_t mock_g
 
std::uint16_t mock_b
 

詳解

Controller.h29 行目に定義があります。

構築子と解体子

Controller::Controller ( )
inline

Controller.h31 行目に定義があります。

38  {
39  }
TouchSensor touchSensor
Definition: Controller.h:42
Motor liftMotor
Definition: Controller.h:44
Definition: Port.h:20
Definition: Port.h:32
Definition: Port.h:22
Definition: Port.h:33
Motor tailMotor
Definition: Controller.h:47
ColorSensor colorSensor
Definition: Controller.h:43
Motor leftWheel
Definition: Controller.h:46
Definition: Port.h:34
Definition: Port.h:31
Motor rightWheel
Definition: Controller.h:45
Controller::Controller ( )
inline

MockController.h49 行目に定義があります。

49 { mock_r = mock_g = mock_b = 0; }
std::uint16_t mock_r
std::uint16_t mock_g
std::uint16_t mock_b

関数詳解

bool Controller::buttonIsPressedBack ( )

Controller.cpp24 行目に定義があります。

25 {
26  return ev3_button_is_pressed(BACK_BUTTON);
27 }

被呼び出し関係図:

bool Controller::buttonIsPressedBack ( )
inline

MockController.h55 行目に定義があります。

56  {
57  counter++;
58  if(counter >= countLimit) {
59  return true;
60  }
61  return false;
62  };
bool Controller::buttonIsPressedDown ( )

Controller.cpp39 行目に定義があります。

40 {
41  return ev3_button_is_pressed(DOWN_BUTTON);
42 }

被呼び出し関係図:

bool Controller::buttonIsPressedDown ( )
inline

MockController.h72 行目に定義があります。

72 { return false; };
bool Controller::buttonIsPressedEnter ( )

Controller.cpp29 行目に定義があります。

30 {
31  return ev3_button_is_pressed(ENTER_BUTTON);
32 }

被呼び出し関係図:

bool Controller::buttonIsPressedEnter ( )
inline

MockController.h75 行目に定義があります。

76  {
77  static int counter = 0;
78  counter++;
79  if(counter >= 10) {
80  return true;
81  }
82  return false;
83  };
bool Controller::buttonIsPressedLeft ( )

Controller.cpp49 行目に定義があります。

50 {
51  return ev3_button_is_pressed(LEFT_BUTTON);
52 }

被呼び出し関係図:

bool Controller::buttonIsPressedLeft ( )
inline

MockController.h74 行目に定義があります。

74 { return false; };
bool Controller::buttonIsPressedRight ( )

Controller.cpp44 行目に定義があります。

45 {
46  return ev3_button_is_pressed(RIGHT_BUTTON);
47 }

被呼び出し関係図:

bool Controller::buttonIsPressedRight ( )
inline

MockController.h73 行目に定義があります。

73 { return false; };
bool Controller::buttonIsPressedUp ( )

Controller.cpp34 行目に定義があります。

35 {
36  return ev3_button_is_pressed(UP_BUTTON);
37 }

被呼び出し関係図:

bool Controller::buttonIsPressedUp ( )
inline

MockController.h71 行目に定義があります。

71 { return false; };
int16_t Controller::getBrightness ( )

Controller.cpp59 行目に定義があります。

60 {
62  int16_t luminance = 0.298912 * rgb.r + 0.586611 * rgb.g + 0.114478 * rgb.b;
63  return luminance;
64 }
void getRawColor(rgb_raw_t &rgb) const
Definition: ColorSensor.cpp:48
ColorSensor colorSensor
Definition: Controller.h:43

呼び出し関係図:

被呼び出し関係図:

int Controller::getBrightness ( )
inline

MockController.h53 行目に定義があります。

53 { return brightness; };
void Controller::getRawColor ( std::uint16_t &  r,
std::uint16_t &  g,
std::uint16_t &  b 
)
inline

MockController.h63 行目に定義があります。

64  {
65  r = mock_r;
66  g = mock_g;
67  b = mock_b;
68 
69  return;
70  };
std::uint16_t mock_r
std::uint16_t mock_g
std::uint16_t mock_b
void Controller::getRawColor ( uint16_t &  r,
uint16_t &  g,
uint16_t &  b 
)

Controller.cpp66 行目に定義があります。

67 {
69  r = rgb.r;
70  g = rgb.g;
71  b = rgb.b;
72 }
void getRawColor(rgb_raw_t &rgb) const
Definition: ColorSensor.cpp:48
ColorSensor colorSensor
Definition: Controller.h:43

呼び出し関係図:

void Controller::ledSetColorGreen ( )

Controller.cpp19 行目に定義があります。

20 {
21  ev3_led_set_color(LED_GREEN);
22 }

被呼び出し関係図:

void Controller::ledSetColorGreen ( )
inline

MockController.h52 行目に定義があります。

52 {};
void Controller::ledSetColorOrange ( )

Controller.cpp14 行目に定義があります。

15 {
16  ev3_led_set_color(LED_ORANGE);
17 }

被呼び出し関係図:

void Controller::ledSetColorOrange ( )
inline

MockController.h51 行目に定義があります。

51 {};
float Controller::measureBatteryVoltage ( )

Controller.cpp54 行目に定義があります。

55 {
56  return ev3_battery_voltage_mV();
57 }
void Controller::printDisplay ( int8_t  row,
const char *  format,
  ... 
)

Controller.cpp79 行目に定義があります。

80 {
81  va_list arg;
82 
83  va_start(arg, format);
84  vsprintf(msg, format, arg);
85  va_end(arg);
86 
87  const int8_t line_height = 10;
88  ev3_lcd_fill_rect(0, row * line_height, EV3_LCD_WIDTH, line_height, EV3_LCD_WHITE);
89  ev3_lcd_draw_string(msg, 0, row * line_height);
90 }

被呼び出し関係図:

void Controller::printDisplay ( int  row,
const char *  format,
  ... 
)
inline

MockController.h89 行目に定義があります。

89 {};
void Controller::setMockRgb ( std::uint16_t  r,
std::uint16_t  g,
std::uint16_t  b 
)
inline

MockController.h96 行目に定義があります。

97  {
98  mock_r = r;
99  mock_g = g;
100  mock_b = b;
101  }
std::uint16_t mock_r
std::uint16_t mock_g
std::uint16_t mock_b

被呼び出し関係図:

void Controller::speakerPlayTone ( uint16_t  frequency,
int32_t  duration 
)

Controller.cpp9 行目に定義があります。

10 {
11  ev3_speaker_play_tone(frequency, duration);
12 }

被呼び出し関係図:

void Controller::speakerPlayTone ( int  frequency,
int  duration 
)
inline

MockController.h54 行目に定義があります。

54 {};
void Controller::speakerSetVolume ( uint8_t  volume)

Controller.cpp4 行目に定義があります。

5 {
6  ev3_speaker_set_volume(volume);
7 }

被呼び出し関係図:

void Controller::speakerSetVolume ( int  volume)
inline

MockController.h50 行目に定義があります。

50 {};
void Controller::tslpTsk ( int16_t  time)

Controller.cpp74 行目に定義があります。

75 {
76  tslp_tsk(time);
77 }

被呼び出し関係図:

void Controller::tslpTsk ( int  time)
inline

MockController.h84 行目に定義があります。

85  {
86  exitCounter++;
87  if(exitCounter > exitCountLimit) std::exit(1);
88  }; // 4msec周期起動
int exitCountLimit

メンバ詳解

int Controller::brightness = 0

MockController.h94 行目に定義があります。

Clock Controller::clock

Controller.h48 行目に定義があります。

ColorSensor Controller::colorSensor

Controller.h43 行目に定義があります。

int Controller::counter = 0

MockController.h91 行目に定義があります。

int Controller::countLimit = 100

MockController.h90 行目に定義があります。

int Controller::exitCounter = 0

MockController.h92 行目に定義があります。

int Controller::exitCountLimit = 1000

MockController.h93 行目に定義があります。

Motor Controller::leftWheel

Controller.h46 行目に定義があります。

Motor Controller::liftMotor

Controller.h44 行目に定義があります。

std::uint16_t Controller::mock_b

MockController.h95 行目に定義があります。

std::uint16_t Controller::mock_g

MockController.h95 行目に定義があります。

std::uint16_t Controller::mock_r

MockController.h95 行目に定義があります。

uint16_t Controller::noteFs4 = NOTE_FS4

Controller.h41 行目に定義があります。

int Controller::noteFs4 = 0

MockController.h48 行目に定義があります。

uint16_t Controller::noteFs6 = NOTE_FS6

Controller.h40 行目に定義があります。

int Controller::noteFs6 = 0

MockController.h47 行目に定義があります。

Motor Controller::rightWheel

Controller.h45 行目に定義があります。

Motor Controller::tailMotor

Controller.h47 行目に定義があります。

TouchSensor Controller::touchSensor

Controller.h42 行目に定義があります。


このクラス詳解は次のファイルから抽出されました: