What is Eclipse Official Definition Eclipse is an

  • Slides: 15
Download presentation
What is Eclipse? • Official Definition: – Eclipse is an open source community whose

What is Eclipse? • Official Definition: – Eclipse is an open source community whose projects are focused on providing an extensible development platform and application frameworks for building software. • Eclipse Evolution – Version 1. 0: Open Source Java IDE – Version 2. 0: Universal Tooling Platform – Version 3. 0: Platform for Rich Client Application

Eclipse as an IDE • Language supported: – Java, C/C++, C#, FORTRAN, Ruby, Python,

Eclipse as an IDE • Language supported: – Java, C/C++, C#, FORTRAN, Ruby, Python, Ada, Aspect. J……you name it!! • Agile Method – Incremental build, Refactoring • Test Driven Development – JUnit Test, Automated Testing Framework • Model Driven Software Development – Open Architectureware • Team Concurrent Development support – CVS, Subversion • Plus More – ANT support, Interactive Debugger, Visual Editor…

Simple RCP

Simple RCP

Plug-in Architecture Extensions Plug-ins Application Plug-in Loader Extensible Application Eclipse

Plug-in Architecture Extensions Plug-ins Application Plug-in Loader Extensible Application Eclipse

What is Tango ? • It is a distributed object oriented control system •

What is Tango ? • It is a distributed object oriented control system • It uses CORBA for network communication – omni. ORB in C++ and Jac. ORB in Java • It supports two languages (C++ and Java) and 3 OS (Linux, Solaris and Windows) • It is an LGPL licensed software available from ESRF web site as – Source distribution (For UNIX like OS)

What is Tango ? • Every controlled equipment is a device belonging to a

What is Tango ? • Every controlled equipment is a device belonging to a class and supporting commands (action) and attributes (data) • Tango classes are merged within process called “device server” • Each device server process has a polling mechanism with data cache to speed-up response time in case of a slow device.

What is Tango ? • Tango has an API supporting three kinds of communication

What is Tango ? • Tango has an API supporting three kinds of communication between client and server – Synchronously – Asynchronously – Using event

Introduction to Tango polling • Every Tango device server process has a polling thread

Introduction to Tango polling • Every Tango device server process has a polling thread • Its rule is to – Poll attribute and/or command (without input parameters) – Store result in a data cache (called polling buffer) managed as a circular buffer – Detect events and throw them to the CORBA notification service

Introduction to Tango polling • Every Tango device server process has a polling thread

Introduction to Tango polling • Every Tango device server process has a polling thread • Its rule is to – Poll attribute and/or command (without input parameters) – Store result in a data cache (called polling buffer) managed as a circular buffer – Detect events and throw them to the CORBA notification service

Introduction to Tango polling • Each device has its own polling buffer • Polling

Introduction to Tango polling • Each device has its own polling buffer • Polling buffer depth is tunable – By device (default is 10) – By command/attribute for finer tuning • Client get their data from – The real device – The last record in the polling buffer – The polling buffer and in case of error from the real device – The choice is done by a Tango API client call

 • Model-Driven Development of Distributed Systems - Volter • ITER

• Model-Driven Development of Distributed Systems - Volter • ITER