Example #1
0
def main():
    try:
        chan = CaChannel()
        print("search_and_connect")
        chan.search_and_connect('catest', connectCb)
        chan.flush_io()
        for i in range(20):
            chan.pend_event()
        print("put_callback")
        chan.array_put_callback(3.3, None, None, putCb)
        chan.flush_io()
        for i in range(20):
            chan.pend_event()
        print("get_callback")
        chan.array_get_callback(None, None, getCb1)
        chan.flush_io()
        for i in range(20):
            chan.pend_event()
        print("get_callback with status")
        chan.array_get_callback(ca.dbf_type_to_DBR_CTRL(chan.field_type()), None, getCb2)
        chan.flush_io()
        for i in range(20):
            chan.pend_event()
    except CaChannelException as status:
        print(ca.message(status))


    try:
        cawave = CaChannel()
        print("cawave: search_and_connect")
        cawave.search_and_connect('cawave', connectCb)
        cawave.flush_io()
        for i in range(20):
            cawave.pend_event()
        print("cawave: array_put_callback")
        l = [0,1,2,3,4,5,6,7,8,9]
        cawave.array_put_callback(l, None, None, putCb)
        cawave.flush_io()
        for i in range(20):
            cawave.pend_event()
        print("cawave: array_get_callback")
        cawave.array_get_callback(ca.dbf_type_to_DBR_CTRL(cawave.field_type()), None, getCb2)
        cawave.flush_io()
        for i in range(20):
            cawave.pend_event()
    except CaChannelException as status:
        print(ca.message(status))