mirror of
https://github.com/nonoo/kappanhang.git
synced 2026-01-06 08:49:58 +01:00
Restructure stream inits
This commit is contained in:
parent
d2efa14e9c
commit
49d6fcab4b
|
|
@ -127,7 +127,11 @@ func (s *audioStream) loop() {
|
|||
}
|
||||
}
|
||||
|
||||
func (s *audioStream) start(devName string) error {
|
||||
func (s *audioStream) init(devName string) error {
|
||||
if err := s.common.init("audio", 50003); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if err := s.audio.init(devName); err != nil {
|
||||
return err
|
||||
}
|
||||
|
|
@ -142,6 +146,9 @@ func (s *audioStream) start(devName string) error {
|
|||
|
||||
log.Print("stream started")
|
||||
|
||||
s.rxSeqBufEntryChan = make(chan seqBufEntry)
|
||||
s.rxSeqBuf.init(audioRxSeqBufLength, 0xffff, 0, s.rxSeqBufEntryChan)
|
||||
|
||||
s.timeoutTimer = time.NewTimer(audioTimeoutDuration)
|
||||
|
||||
s.deinitNeededChan = make(chan bool)
|
||||
|
|
@ -150,15 +157,6 @@ func (s *audioStream) start(devName string) error {
|
|||
return nil
|
||||
}
|
||||
|
||||
func (s *audioStream) init() error {
|
||||
if err := s.common.init("audio", 50003); err != nil {
|
||||
return err
|
||||
}
|
||||
s.rxSeqBufEntryChan = make(chan seqBufEntry)
|
||||
s.rxSeqBuf.init(audioRxSeqBufLength, 0xffff, 0, s.rxSeqBufEntryChan)
|
||||
return nil
|
||||
}
|
||||
|
||||
func (s *audioStream) deinit() {
|
||||
if s.deinitNeededChan != nil {
|
||||
s.deinitNeededChan <- true
|
||||
|
|
|
|||
|
|
@ -204,11 +204,11 @@ func (s *controlStream) handleRead(r []byte) error {
|
|||
copy(s.authID[:], r[26:32])
|
||||
s.gotAuthID = true
|
||||
|
||||
if err := s.serial.start(devName); err != nil {
|
||||
if err := s.serial.init(devName); err != nil {
|
||||
return errors.New("serial/" + err.Error())
|
||||
}
|
||||
|
||||
if err := s.audio.start(devName); err != nil {
|
||||
if err := s.audio.init(devName); err != nil {
|
||||
return errors.New("audio/" + err.Error())
|
||||
}
|
||||
|
||||
|
|
@ -254,7 +254,9 @@ func (s *controlStream) loop() {
|
|||
}
|
||||
}
|
||||
|
||||
func (s *controlStream) start() error {
|
||||
func (s *controlStream) init() error {
|
||||
log.Debug("init")
|
||||
|
||||
if err := s.common.init("control", 50001); err != nil {
|
||||
return err
|
||||
}
|
||||
|
|
@ -308,18 +310,6 @@ func (s *controlStream) start() error {
|
|||
return nil
|
||||
}
|
||||
|
||||
func (s *controlStream) init() error {
|
||||
log.Debug("init")
|
||||
|
||||
if err := s.serial.init(); err != nil {
|
||||
return err
|
||||
}
|
||||
if err := s.audio.init(); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (s *controlStream) deinit() {
|
||||
s.deinitializing = true
|
||||
s.serialAndAudioStreamOpened = false
|
||||
|
|
|
|||
5
main.go
5
main.go
|
|
@ -32,11 +32,6 @@ func runControlStream(osSignal chan os.Signal) (shouldExit bool, exitCode int) {
|
|||
c.deinit()
|
||||
return true, 1
|
||||
}
|
||||
if err := c.start(); err != nil {
|
||||
log.Error(err)
|
||||
c.deinit()
|
||||
return
|
||||
}
|
||||
|
||||
select {
|
||||
case <-gotErrChan:
|
||||
|
|
|
|||
|
|
@ -209,7 +209,11 @@ func (s *serialStream) loop() {
|
|||
}
|
||||
}
|
||||
|
||||
func (s *serialStream) start(devName string) error {
|
||||
func (s *serialStream) init(devName string) error {
|
||||
if err := s.common.init("serial", 50002); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if enableSerialDevice {
|
||||
if err := s.serialPort.init(devName); err != nil {
|
||||
return err
|
||||
|
|
@ -233,6 +237,9 @@ func (s *serialStream) start(devName string) error {
|
|||
return err
|
||||
}
|
||||
|
||||
s.rxSeqBufEntryChan = make(chan seqBufEntry)
|
||||
s.rxSeqBuf.init(serialRxSeqBufLength, 0xffff, 0, s.rxSeqBufEntryChan)
|
||||
|
||||
s.deinitNeededChan = make(chan bool)
|
||||
s.deinitFinishedChan = make(chan bool)
|
||||
|
||||
|
|
@ -243,15 +250,6 @@ func (s *serialStream) start(devName string) error {
|
|||
return nil
|
||||
}
|
||||
|
||||
func (s *serialStream) init() error {
|
||||
if err := s.common.init("serial", 50002); err != nil {
|
||||
return err
|
||||
}
|
||||
s.rxSeqBufEntryChan = make(chan seqBufEntry)
|
||||
s.rxSeqBuf.init(serialRxSeqBufLength, 0xffff, 0, s.rxSeqBufEntryChan)
|
||||
return nil
|
||||
}
|
||||
|
||||
func (s *serialStream) deinit() {
|
||||
if s.common.conn != nil {
|
||||
_ = s.sendOpenClose(true)
|
||||
|
|
|
|||
Loading…
Reference in a new issue