Golang C.elev_button_type_t类(方法)实例源码

下面列出了Golang C.elev_button_type_t 类(方法)源码代码实例,从而了解它的用法。

作者:powermundse    项目:hei   
func Elevator_set_button_lamp(button Button, floor int, value bool) {
	val := 0
	if value {
		val = 1
	}
	C.elev_set_button_lamp(C.elev_button_type_t(button), C.int(floor), C.int(val))
}

作者:knutaldri    项目:elevato   
// ButtonLightOff turns it off
func ButtonLightOff(floor Floor, dir Direction) {
	if floor == 0 && dir == DirectionDown {
		dir = DirectionUp
	} else if floor == NumFloors-1 && dir == DirectionUp {
		dir = DirectionDown
	}
	mutex.Lock()
	C.elev_set_button_lamp(C.elev_button_type_t(dir), C.int(floor), 0)
	mutex.Unlock()
}

作者:knutaldri    项目:elevato   
// FloorButtonListener should be spawned as a goroutine
func FloorButtonListener(ch chan<- ButtonEvent) {
	var floorButtonState [3][NumFloors]bool

	for {
		for direction := DirectionUp; direction <= DirectionNone; direction++ {
			for floor := Floor(0); floor < NumFloors; floor++ {
				mutex.Lock()
				newState := C.elev_get_button_signal(C.elev_button_type_t(direction), C.int(floor)) != 0
				mutex.Unlock()
				if newState != floorButtonState[direction][floor] {
					floorButtonState[direction][floor] = newState

					// Only dispatch an event if it's pressed
					if newState {
						log.Debug("Button type ", direction, " floor ", floor, " pressed")
						ch <- ButtonEvent{Dir: direction, Floor: floor}
					} else {
						log.Bullshit("Button type ", direction, " floor ", floor, " released")
					}
				}
			}
		}
	}
}

作者:hakonB    项目:SanntidsHei   
func Elev_set_button_lamp(button Elev_button_type_t, floor int, value int) {
	C.elev_set_button_lamp(C.elev_button_type_t(button), C.int(floor), C.int(value))
}

作者:hakonB    项目:SanntidsHei   
func Elev_get_button_signal(button Elev_button_type_t, floor int) int {
	return int(C.elev_get_button_signal(C.elev_button_type_t(button), C.int(floor)))
}

作者:toree    项目:Sannti   
func ButtonPushed(button Button_type, floor int) int {
	return int(C.elev_get_button_signal(C.elev_button_type_t(button), C.int(floor)))
}

作者:powermundse    项目:hei   
func Elevator_is_button_pushed(button Button, floor int) bool {
	return (C.elev_get_button_signal(C.elev_button_type_t(button), C.int(floor)) != 0)
}

作者:ingvildforset    项目:heislab1   
func LiftDriver_GetButtonSignal(button types.ButtonType, floor int) bool {
	return int(C.elev_get_button_signal(C.elev_button_type_t(C.int(button)), C.int(floor))) != 0
}

作者:mathild    项目:drive   
func liftDriver_SetButtonLamp(button int, floor int, onOrOff bool) {
	C.elev_set_button_lamp(C.elev_button_type_t(button), C.int(floor), C.int(onOrOff))
}

作者:ingvildforset    项目:heislab1   
func LiftDriver_SetButtonLamp(button types.ButtonType, floor int, onOrOff int) {
	C.elev_set_button_lamp(C.elev_button_type_t(C.int(button)), C.int(floor), C.int(onOrOff))
}

作者:graes    项目:sannti   
func ElevGetButtonSignal(buttonType int, floor int) int {
	return int(C.elev_get_button_signal(C.elev_button_type_t(C.int(buttonType)), C.int(floor)))
}

作者:audune    项目:TTK414   
func SetButtonLamp(button ButtonType, floor, value int) {
	C.elev_set_button_lamp(C.elev_button_type_t(button), C.int(floor), C.int(value))
}

作者:audune    项目:TTK414   
func GetButtonSignal(button ButtonType, floor int) int {
	return int(C.elev_get_button_signal(C.elev_button_type_t(button), C.int(floor)))
}

作者:Henrikn    项目:Hei   
func Elev_get_button_signal(button int, floor int) bool {
	return int(C.elev_get_button_signal(C.elev_button_type_t(button), C.int(floor))) != 0
}


问题


面经


文章

微信
公众号

扫码关注公众号