| 1234567891011121314151617181920212223242526272829303132333435 |
- // package kbus_local -- реализация локальной шины сообщений
- package kbus_local
- import (
- "fmt"
- . "gitp78su.ipnodns.ru/svi/kern/v4/lev0/ktypes"
- . "gitp78su.ipnodns.ru/svi/kern/v4/lev1"
- "gitp78su.ipnodns.ru/svi/kern/v4/lev2/kbus_base"
- )
- // Локальная шина данных
- type kernelBusLocal struct {
- *kbus_base.KBusBase
- }
- var (
- bus *kernelBusLocal
- )
- // GetKernelBusLocal -- возвращает локальную шину сообщений
- func GetKernelBusLocal() IResult[*kernelBusLocal] {
- if bus != nil {
- return NewRes(bus)
- }
- resBus := kbus_base.GetKernelBusBase()
- if resBus.IsErr() {
- err := fmt.Errorf("GetKernelBusLocal(): in get kernel bus base, err=\n\t%w", resBus.Err())
- return NewErr[*kernelBusLocal](err)
- }
- bus = &kernelBusLocal{
- KBusBase: resBus.Val(),
- }
- return NewRes(bus)
- }
|