Exemplo n.º 1
0
Arquivo: fb.c Projeto: M1cha/lktris
void fbGridSetColor(struct fbconfig* fb, int x, int y, int color) {
	int x_real = x*fb->grid_phys_w;
	int y_real = y*fb->grid_phys_h;

	if(x<0 || y<0) return;

	fbFillRect(fb, x_real, y_real, x_real+fb->grid_phys_w, y_real+fb->grid_phys_h, color);

	// black border
	fbGridBorder(fb, x, y, 0x000000, SIDE_TOP|SIDE_RIGHT|SIDE_BOTTOM|SIDE_LEFT, 0, 1);

	// 3d effect
	fbGridBorder(fb, x, y, changeBrightness(color, -100), SIDE_BOTTOM|SIDE_LEFT, 1, 2);
	fbGridBorder(fb, x, y, changeBrightness(color, 100), SIDE_TOP|SIDE_RIGHT, 1, 2);
}
Exemplo n.º 2
0
int main (int argc, char* argv[])
{
	struct udev *udev;
	struct udev_device *dev;
	struct udev_monitor *mon;
	int fd;

	/* Create the udev object */
	udev = udev_new();
	if (!udev) {
		printf("Can't create udev\n");
		exit(1);
	}

	/* Set up a monitor to monitor power_supply devices */
	mon = udev_monitor_new_from_netlink(udev, "udev");
	udev_monitor_filter_add_match_subsystem_devtype(mon, "power_supply", NULL);
	udev_monitor_enable_receiving(mon);
	printf("[INFO] Monitoring...\n");

	while (1) {
		dev = udev_monitor_receive_device(mon);
			if (dev) {
				
				if(strcmp(udev_device_get_sysname(dev), "ADP1") == 0) {
					printf("\n  [DEBUG] Found ADP1\n");
					
					if(strcmp(udev_device_get_sysattr_value(dev, "online"), "1") == 0) {
						printf("\n  [INFO] AC Adapter State: Online\n");
						changeBrightness(937);
					}
					
					else if (strcmp(udev_device_get_sysattr_value(dev, "online"), "1") < 0) {
						printf("\n  [INFO] AC Adapter State: Offline\n");
						changeBrightness(92);
					}
				}
			}
		udev_device_unref(dev);
		sleep(2);
		}
	udev_unref(udev);
	return 0;
}
Exemplo n.º 3
0
void MainWindow::brightnessChanged(int value)
{
    float param = convertRange(value, BRIGHTNESS_ALGO_MAX, BRIGHTNESS_ALGO_MIN,
                               UI_BRIGHTNESS_SLIDER_MAX, UI_BRIGHTNESS_SLIDER_MIN);
    af::array slices = changeBrightness(mCurrentImage, param);
    af::array interleaved = af::reorder(slices, 2, 1, 0)/255.0f;
    interleaved.host((void*)mImageDataRawPtr);
    mRenderCanvas->updateTexData(mImageDataRawPtr, mImageWidth, mImageHeight);
    mRenderCanvas->updateGL();
}
Exemplo n.º 4
0
int main(void)
{
	uint8_t cmd;
	uint8_t dispMode = MODE_MAIN;

	static int8_t direction = PARAM_UP;

	hwInit();

	showTimeMasked();

	ds18x20Process();
	sensTimer = TEMP_MEASURE_TIME;

	while(1) {
		// Update sensors with SENSOR_POLL_INTERVAL period
		if (!sensTimer == 0) {
			sensTimer = SENSOR_POLL_INTERVAL;
			ds18x20Process();
			if (bmp180HaveSensor())
				bmp180Convert();
			dht22Read();
		}

		// Check alarm
		checkAlarm();

		// Update brightness only when not in brightness setup
		if (dispMode != MODE_BRIGHTNESS)
			calcBrightness();

		// Get command from buttons
		cmd = getBtnCmd();

		// Beep on button pressed
		if (cmd != BTN_STATE_0) {
			if (cmd < BTN_0_LONG)
				startBeeper(BEEP_SHORT);
			else
				startBeeper(BEEP_LONG);
		}

		// Stop scrolling on any button pressed
		if (cmd != BTN_STATE_0)
			matrixHwScroll(MATRIX_SCROLL_STOP);

		// Handle command
		switch (cmd) {
		case BTN_0:
			direction = PARAM_UP;
			switch (dispMode) {
			case MODE_EDIT_TIME:
				rtcNextEditParam();
				break;
			case MODE_EDIT_ALARM:
				alarmNextEditParam();
				break;
			}
			break;
		case BTN_1:
			direction = PARAM_UP;
		case BTN_2:
			if (cmd == BTN_2)
				direction = PARAM_DOWN;
			switch (dispMode) {
			case MODE_MAIN:
				startScroll(cmd - BTN_1);
				break;
			case MODE_EDIT_TIME:
				rtcChangeTime(direction);
				break;
			case MODE_EDIT_ALARM:
				alarmChange(direction);
				break;
			case MODE_BRIGHTNESS:
				changeBrightness(direction);
				break;
			case MODE_TEST:
				displayChangeRotate(direction);
				break;
			}
			break;
		case BTN_0_LONG:
			if (dispMode == MODE_MAIN) {
				dispMode = MODE_EDIT_TIME;
				rtcNextEditParam();
			} else {
				rtc.etm = RTC_NOEDIT;
				alarmSave();
				alarm.eam = ALARM_NOEDIT;
				dispMode = MODE_MAIN;
				showTimeMasked();
			}
			break;
		case BTN_1_LONG:
			if (dispMode == MODE_MAIN) {
				dispMode = MODE_EDIT_ALARM;
				alarmNextEditParam();
			}
			break;
		case BTN_2_LONG:
			if (dispMode == MODE_MAIN) {
				dispMode = MODE_BRIGHTNESS;
				showBrightness(direction, MASK_ALL);
			}
			break;
		case BTN_0_LONG | BTN_1_LONG:
			displaySwitchHourZero();
			dispMode = MODE_MAIN;
			showTimeMasked();
			break;
		case BTN_1_LONG | BTN_2_LONG:
			displaySwitchBigNum();
			dispMode = MODE_MAIN;
			showTimeMasked();
			break;
		case BTN_0_LONG | BTN_2_LONG:
			displaySwitchHourSignal();
			dispMode = MODE_MAIN;
			showTimeMasked();
			break;
		case BTN_0_LONG | BTN_1_LONG | BTN_2_LONG:
			dispMode = MODE_TEST;
			break;
		}

		// Show things
		switch (dispMode) {
		case MODE_MAIN:
			showMainScreen();
			break;
		case MODE_EDIT_TIME:
			showTimeEdit(direction);
			break;
		case MODE_EDIT_ALARM:
			showAlarmEdit(direction);
			break;
		case MODE_BRIGHTNESS:
			showBrightness(direction, MASK_NONE);
			break;
		case MODE_TEST:
			showTest();
			break;
		}
	}

	return 0;
}