11
Atacama Atacama Large Large Millimeter Millimeter Array Array ACS Training Notification Channel - C++ API

ACS Training

Embed Size (px)

DESCRIPTION

ACS Training. Notification Channel - C++ API. Getting Started. At the console open up: ACS/LGPL/CommonSoftware/acscourse/ws/include/acscourseMount5Impl.h and: ACS/LGPL/CommonSoftware/acscourse/ws/src/acscourseMount5Impl.cpp. What files need to be created?. - PowerPoint PPT Presentation

Citation preview

Page 1: ACS Training

AtacamaAtacamaLargeLargeMillimeterMillimeterArrayArray

ACS Training

Notification Channel - C++ API

Page 2: ACS Training

Garching, February 2004 ACS Training 2

Getting Started

At the console open up: ACS/LGPL/CommonSoftware/acscourse/ws/include/acscourseMount5Impl.h

and:ACS/LGPL/CommonSoftware/acscourse/ws/src/acscourseMount5Impl.cpp

Page 3: ACS Training

Garching, February 2004 ACS Training 3

What files need to be created?

• An IDL file containing the definition of a struct the NC will send/receive. If using simple CORBA types, this is not necessary.

• A header/implementation each for the derived supplier and consumer. This is not necessary for the SimpleSupplier or SimpleConsumer classes.

Page 4: ACS Training

Garching, February 2004 ACS Training 4

Example(s)

Please look at:

acscourse/ws/idl/acscourseMount.idl

acscourse/ws/include/acscourseMount5Impl.h

acscourse/ws/src/acscourseMount5Impl.cpp

Page 5: ACS Training

Garching, February 2004 ACS Training 5

What Methods are Available in the Consumer and Supplier Classes?

www.eso.org/~almamgr/AlmaAcs/OnlineDocs/ACS_docs/cpp/classSupplier.html

www.eso.org/~almamgr/AlmaAcs/OnlineDocs/ACS_docs/cpp/classConsumer.html

Page 6: ACS Training

Garching, February 2004 ACS Training 6

Makefile Targets

The only special thing that must be done is linking in the acsnc library.

Done quite simply actually:

xxx_LIBS = acsnc

where xxx_ is replaced by the name of the library or executable you’re

trying to create.

Page 7: ACS Training

Garching, February 2004 ACS Training 7

Learn From Others’ Mistakes

• If it at all possible, do not thread Suppliers or Consumers. If this is done, there may be be problems restarting containers.

Page 8: ACS Training

Garching, February 2004 ACS Training 8

Questions about the C++ event channel API???

Page 9: ACS Training
Page 10: ACS Training

Garching, February 2004 ACS Training 10

Demo

Page 11: ACS Training

Garching, February 2004 ACS Training 11

Advanced Concepts:Adding Suppliers/Consumers to

your Component