Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document...

150
DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT: Development of EAST Based Access Tools Interface Control Document Contract: 16562/02/I-LG Reference: SS/DEBAT/ICD Issue: 2.0 Date: 03/11/2003 Prepared by: DEBAT Team Date: Checked by: Josiane Denailhac Date: Approved by: Laurent Cohen Date:

Transcript of Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document...

Page 1: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DEBAT – Development of EAST Based Access Tools DRAFT

DRAFT

DEBAT: Development of EAST Based Access Tools Interface Control Document

Contract: 16562/02/I-LG

Reference: SS/DEBAT/ICD

Issue: 2.0 Date:

03/11/2003

Prepared by: DEBAT Team

Date:

Checked by: Josiane Denailhac

Date:

Approved by: Laurent Cohen

Date:

Page 2: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

Interface Control Document Reference : SS/DEBAT/ICD Issue : 2.0 Date : 03/11/2003 Page : i

DEBAT – Development of EAST Based Access Tools DRAFT

Document Status Sheet Document Title Interface Control Document Document Reference Number SS/DEBAT/ICD

Issue Revision Date Reason for change 2 0 03/11/2003 Second version after the CDR 1 1 14/10/2003 First revision of the document taking into account the

comments made by ESA during the PDR review 1 0 08/07/2003 First version for PDR 0 1 30/06/2003 First draft version

Page 3: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : ii

DEBAT – Development of EAST Based Access Tools

Document Change Records Document Title Interface Control Document Document Reference Number SS/DEBAT/ICD Document Issue/Revision Number 2.0

Page Paragraph Reason for change All Second version after the CDR

Document Title Interface Control Document Document Reference Number SS/DEBAT/ICD Document Issue/Revision Number 1.1

Page Paragraph Reason for change All First revision of the document taking into account the comments made by

ESA during the PDR review Document Title Interface Control Document Document Reference Number SS/DEBAT/ICD Document Issue/Revision Number 1.0

Page Paragraph Reason for change All First version for PDR

Document Title Interface Control Document Document Reference Number SS/DEBAT/ICD Document Issue/Revision Number 0.1

Page Paragraph Reason for change All First draft version

Page 4: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : iii

DEBAT – Development of EAST Based Access Tools

Table of contents

DOCUMENT STATUS SHEET....................................................................................................... I

DOCUMENT CHANGE RECORDS..............................................................................................II

TABLE OF CONTENTS ............................................................................................................... III

TABLE OF FIGURES......................................................................................................................V

ACRONYMS AND ABBREVIATIONS....................................................................................... VI

APPLICABLE DOCUMENTS................................................................................................... VIII

REFERENCE DOCUMENTS....................................................................................................... IX

1. INTRODUCTION..........................................................................................................................1 2.1. PURPOSE ...........................................................................................................................1 2.2. SCOPE ...............................................................................................................................1 2.3. STRUCTURE OF THE DOCUMENT ........................................................................................1 2.4. DEFINITIONS .....................................................................................................................1

2. SYSTEM OVERVIEW..................................................................................................................3 2.5. CONTEXT DIAGRAMS.........................................................................................................4

3. INTERFACES DESCRIPTION ...................................................................................................7 2.6. DATA STREAM INTERFACE ................................................................................................7

3.1.1 TCP/IP interface...................................................................................................................7 3.1.1.1 Data reading interface ..............................................................................................7 3.1.1.2 Data writing interface...............................................................................................8

3.1.2 Pipe interface .......................................................................................................................9 2.7. PLUG-IN INTERFACE ........................................................................................................10 2.8. API INTERFACE...............................................................................................................11

3.1.3 EAST API............................................................................................................................12 3.1.4 Java plug-ins API ...............................................................................................................13

3.1.4.1 DEBAT Data Modeller API...................................................................................13 3.1.4.2 DEBAT Data Producer & Editor API....................................................................15 3.1.4.3 DEBAT Data Extractor & Querying API ..............................................................16 3.1.4.4 DEBAT Utilities API .............................................................................................16 3.1.4.5 DEBAT Post-Processing Tools API ......................................................................17 3.1.4.6 DEBAT Packager API ...........................................................................................18

2.9. WEB SERVICES INTERFACES...........................................................................................19

4. APPENDIX 1: EAST CORE API FUNCTIONS ......................................................................23 2.10. LIST OF FUNCTIONS .........................................................................................................23

Page 5: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : iv

DEBAT – Development of EAST Based Access Tools

2.11. INTERPRETER API ...........................................................................................................25 4.1.1 General services .................................................................................................................25 4.1.2 Data loading services.........................................................................................................38 4.1.3 Data reading services.........................................................................................................50 4.1.4 Data checking services.......................................................................................................58 4.1.5 Sequence services ...............................................................................................................77

2.12. GENERATOR API.............................................................................................................82 4.1.6 General services .................................................................................................................82 4.1.7 Data setting services ..........................................................................................................88 4.1.8 Data writing services..........................................................................................................96 4.1.9 Data reading services.......................................................................................................101 4.1.10 Sequence services ...........................................................................................................104 4.1.11 Utilities ...........................................................................................................................109 4.1.12 New services ...................................................................................................................114 4.1.13 Data Product Explorer Services (Common functions for Interpreter and Data Generator) .................................................................................................................................123

2.13. QUERIES HANDLER FUNCTIONS ....................................................................................131

Page 6: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

Interface Control Document Reference : SS/DEBAT/ICD Issue : 2.0 Date : 03/11/2003 Page : v

DEBAT – Development of EAST Based Access Tools DRAFT

Table of figures Figure 2-1 DEBAT operational environment ......................................................................................3 Figure 2-2: TCP/IP interface collaboration diagram............................................................................4 Figure 2-3: Pipe interface collaboration diagram ................................................................................4 Figure 2-4: Plug-in interface collaboration diagram............................................................................5 Figure 2-5: API interface collaboration diagram .................................................................................5 Figure 2-6: Web services interface collaboration diagram ..................................................................6 Figure 3-1: Data reading scenario........................................................................................................8 Figure 3-2: Data writing scenario ........................................................................................................9 Figure 3-3 PluginInterface .................................................................................................................10 Figure 3-4: DEBAT API interface .....................................................................................................11 Figure 3-5: Java plug-in API..............................................................................................................11

Page 7: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

Interface Control Document Reference : SS/DEBAT/ICD Issue : 1.1 Date : 16/09/2003 Page : vi

DEBAT – Development of EAST Based Access Tools DRAFT

Acronyms and Abbreviations

ADD Architectural Design Document AMS Archive Management System API Application Program Interface AR Acceptance Review ATP Authorisation To Proceed CA Control Authority CAID Control Authority Identifier CAO Control Authority Office CAOS Control Authority Office System CDF Common Data Format CDR Critical Design Review CEOS Committee on Earth Observation Science CFI Customer Furnished Item CNES Centre National D’Etudes Spatiales (French Space Agency) COTS Commercial Off The Shelf CCSDS Consultative Committee for Space Data Systems DEAL Display EAST Access List DEBAT Development of EAST Based Access Tools DEBAT-DM DEBAT Data Modeller DEBAT-DPE DEBAT Data Producer & Editor DEBAT-DEQ DEBAT Data Extractor & Querying DEBAT-PPT DEBAT Post Processing Tools DEBAT-UT DEBAT Utilities DDR Data Description Record DDU Data Description Unit DDF Design Definition File DED Data Entity Dictionary DEDSL Data Entity Description Specification Language DEW Data Extractor Wizard DIP Dissemination Information Package DJF Design Justification File DUW Data Update Wizard DW DEBAT Workshop EAST Enhanced ADA Sub SeT ECSS European Cooperation for Space Standardization EO Earth Observation ESA European Space Agency ESRIN European Space Research INstitute ERS European Remote Sensing satellite ESA European Space Agency EVA ESA Virtual Archive FA Final Acceptance FAQ Frequently Asked Question

Page 8: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : vii

DEBAT – Development of EAST Based Access Tools

FAR Factory Acceptance Review FAT Factory Acceptance Tests FDIR Fault Detection, Isolation and Recovery FP Final Presentation FPA Final Presentation and Acceptance GUI Graphical User Interface HDF Hierarchical Data Format HTML Hyper Text Mark-up Language HTTP Hyper Text Transfer Protocol HW Hardware ICD Interface Control Document IDVP Implementation, Diffusion and Validation Plan IR Interface Requirements ITT Invitation To Tender JSP Java Server Pages KOM Kick Off Meeting MACAO Member Agency Control Authority Office MMI Man-Machine Interface NAS Network Attached Storage OAIS Open Archival Information System OASIS Space Data Modelling Help Tool OSAT On Site installation and Acceptance Tests PAP Product Assurance Plan PDR Preliminary Design Review PMP Project Management Plan PUS Packet Utilisation Standard PVL Parameter Value Language RB Requirements Baseline RID Review Item Discrepancy RTD Research and Technology Development SCMP Software Configuration Management Plan SIP Submission Information Package SOAP Simple Object Access Protocol SOW Statement of Work SPMP Software Project Management Plan SRR System Requirements Review SVG Scalable Vector Graphic TM/TC Telemetry / Telecommand TS Technical Specifications UDDI Universal Description Discovery and Integration SRD Software Requirements Document URD User Requirements Document WSDL Web Service Description Language WWW World Wide Web XML eXtensible Mark-up Language XSL eXtensible Stylesheet Language XSLT eXtensible Stylesheet Language Transformation

Page 9: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : viii

DEBAT – Development of EAST Based Access Tools

Applicable Documents

Title Issue Date Reference AD1 ESRIN SOW “Development of

EAST Based Access Tools”

1.1 18/03/2002 GSPS-RTDA-EOAD-SW-02-0001

AD2 Fax received from ESA 07/06/2002 IMT-CR/9021/02/I-LG

AD3 CS SI Proposal "DEBAT"

21/06/2002 CSSI/111-1/CG/LM/2/453-1

AD4 Minutes of Kick-off Meeting

17/09/2002 /CRR/SS/DEBAT/001

AD5 ECSS – Space Engineering Standards – Software ECSS-E-40B

ECSS-E-40B

AD6 CS SI Proposal for Phase 2

March 2003 CSSI/111-1/CG/PKV/3/140

AD7 Minutes of Phase 2 Kick-off meeting (Authorisation To Proceed)

30/04/2003 /CRR/SS/DEBAT/006

Page 10: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : ix

DEBAT – Development of EAST Based Access Tools

Reference Documents

Title Issue Date Reference RD1 DEBAT - Project Management Plan

1.2 08/07/2003 SS/DEBAT/PMP

RD2 DEBAT - Product Assurance Plan

1.2 08/07/2003 SS/DEBAT/PAP

RD3 DEBAT - Interviews Technical Note

1.0 14/01/2003 SS/DEBAT/I_TN

RD4 DEBAT - EAST for TM/TC processing Technical Note

1.0 14/01/2003 SS/DEBAT/TMTC_TN

RD5 DEBAT - EAST current applications Technical Note

1.0 14/01/2003 SS/DEBAT/EAST_TN

RD6 DEBAT – Requirements Collection Technical Note

1.0 14/01/2003 SS/DEBAT/RC_TN

RD7 DEBAT – User Requirements Document

1.2 10/03/2003 SS/DEBAT/URD

RD8 DEBAT – Software Requirements Document

1.1 10/03/2003 SS/DEBAT/SRD

RD9 The Data Description Language EAST Specification (CCSD0010). Blue Book.

2.0 November 2000

CCSDS 644.0-B-2

RD10 The Data Description Language EAST - A Tutorial. Green Book.

1.0 May 1997

CCSDS 645.0-G-1

RD11 The Data Description Language EAST - List of Conventions. Green Book.

1.0 May 1997 CCSDS 646.0-G-1

RD12 Data Entity Dictionary Specification Language (DEDSL) - Abstract Syntax (CCSD0011). Blue Book.

1.0 June 2001 CCSDS 647.1-B-1

RD13 Data Entity Dictionary Specification Language (DEDSL) - PVL Syntax (CCSD0012). Blue Book.

1.0 June 2001

CCSDS 647.2-B-1

RD14 Data Entity Dictionary Specification Language (DEDSL) - XML/DTD Syntax (CCSD0013). Blue Book.

1.0 January 2002

CCSDS 647.3-B-1

RD15 EAST user’s guide (ADA interface) 3.2

Page 11: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : x

DEBAT – Development of EAST Based Access Tools

Title Issue Date Reference RD16 EAST user’s guide (C interface) 3.2 RD17 EAST user’s guide (Fortran

interface) 3.2

RD18 DEBAT – Architectural Design Document

1.1 16/09/2003 SS/DEBAT/ADD

Page 12: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

Interface Control Document Reference : SS/DEBAT/ICD Issue : 1.1 Date : 16/09/2003 Page : 1

DEBAT – Development of EAST Based Access Tools DRAFT

1. Introduction

2.1. Purpose

This document is the Interface Control Document (ICD) for the DEBAT Project. DEBAT is aimed at building a set of enhanced tools based upon the EAST technology to support the entire data life cycle for various kind of users.

2.2. Scope

This document defines the external interfaces of the DEBAT System. The description of the DEBAT user interface is beyond the scope of this ICD document.

2.3. Structure of the document

This document is structured as follows: Chapter 1: Introduction The current chapter gives the objectives, scope, definitions and structure of the document. Chapter 2: System overview This chapter provides an overview of the global system and presents its external interfaces Chapter 3: Interfaces description This chapter describes the external interfaces of DEBAT.

2.4. Definitions

Data Model The data model is the name of the DEBAT Data Modeller internal format of the data description. This internal format contains all syntactic and semantic information of the data. It is created, modified and read by the DEBAT Data Modeller and is used to generate the EAST and DEDSL description files.

EAST description file The EAST description file contains the syntactic information of a data model in the EAST format. This file conforms to the EAST recommendation. It is created by the DEBAT Data Modeller and is used by all other tools to read, generate, extract, check data products.

DEDSL description file The DEDSL description file contains the semantic information of a data model in the DEDSL format. This file conforms to the DEDSL recommendation. It is created by the DEBAT Data Modeller and is used by all other tools when the semantic information of a data product are managed.

Schema

A (XML) schema can be viewed as a collection (vocabulary) of type definitions and element declarations whose names belong to a particular namespace called a target namespace. Target namespaces enable us to distinguish between definitions and

Page 13: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 2

DEBAT – Development of EAST Based Access Tools

declarations from different vocabularies. Web Service A Web service is a self-contained, self-describing, modular

application that can be published, located, and invoked across the Web. Web services perform functions, which can be anything from simple requests to complicated business processes... Once a Web service is deployed, other applications (and other Web services) can discover and invoke the deployed service.

Page 14: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 3

DEBAT – Development of EAST Based Access Tools

2. System overview DEBAT can basically be seen as a suite of tools providing support for all phases of the data life cycle. DEBAT is built around the EAST core that forms the backbone of the software. Several high-level components (or tools) are also provided on top of EAST to add further capabilities to the suite of tools. The functions and architecture of DEBAT are described in the Architectural Design Document [RD18]. The functions of DEBAT are accessible through the following external interfaces:

Man Machine Interface: DEBAT provides a user-friendly MMI that allows the users to execute all the available functions.

API’s: DEBAT offers a wide range of possible connections through the availability of API’s in ADA, C, C++, FORTRAN and JAVA. These API’s allow the user applications to be linked directly to the libraries of functions provided in DEBAT.

Web interface: The Web interface provides access to a subset of the DEBAT functions (the most useful ones) using a Web browser as interface. This interface is therefore intended to allow the direct use of the DEBAT functions whatever the target platform and without any specific installation.

SOAP interface (Web services interface): The Web Service interface provides access to some of the DEBAT functions for remote user applications through a SOAP interface.

Figure 2-1 DEBAT operational environment

The external interfaces of DEBAT are described in the following chapters.

Page 15: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 4

DEBAT – Development of EAST Based Access Tools

2.5. Context diagrams

This section describes the different kinds of interaction between the DEBAT software (or one of its component) and any external applications. The DEBAT software is intended to provide four external interfaces to applications; they are depicted in the following figures.

The data stream interface: this interface allows applications to exchange (send and receive) data products with DEBAT. This interface is realised in two different ways: • a TCP/IP socket connection can be established between the external application and

DEBAT – this connection is used to transfer the data products in the two ways,

Figure 2-2: TCP/IP interface collaboration diagram

• or, the external application and the DEBAT software can communicate by pipe – in

this case, the DEBAT software reads data from the standard input and writes data on the standard output (the external application has then to pipe its input/output stream into the standard output/input.

Figure 2-3: Pipe interface collaboration diagram

Page 16: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 5

DEBAT – Development of EAST Based Access Tools

The plug-in interface: this interface is primarily meant to allow the integration of applications within the DEBAT suite of tools. This interface is fundamental in DEBAT as all the tools provided by default (e.g. Data Modeller, Data Producer & Editor, etc) are themselves plug-ins and are managed as such. This interface allows DEBAT to monitor and control the plugged tools: it is in charge of loading into memory, starting, monitoring, and stopping the plug-ins. Moreover, this interface allows bi-directional communications between DEBAT and the plug-ins.

Figure 2-4: Plug-in interface collaboration diagram

The API interface: the DEBAT software provides several API's enabling to use the DEBAT services inside external applications. The API interface is divided in: • the EAST core API: it is the most important API as the EAST core provides the

bulk of the services offered by DEBAT. The EAST core API is provided in 4 different languages: Java, Ada, C/C++ and Fortran.

• the Java plug-ins API: it gathers the Java API of all tools that are plugged in the DEBAT suite. The Java API of a particular tool is composed of both the public methods of the Java classes composing the tool and the “service interface” which is a class that is required by the plug-in system and that exposes all the services available to other plugged or external tools.

Figure 2-5: API interface collaboration diagram

Page 17: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 6

DEBAT – Development of EAST Based Access Tools

The DEBAT software provide a web services interface enabling remote applications to access some of the functions offered in DEBAT. The exchange of information between the remote application and the DEBAT software is handled by SOAP messages (SOAP is an XML-based protocol for invoking web services).

Figure 2-6: Web services interface collaboration diagram

Page 18: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 7

DEBAT – Development of EAST Based Access Tools

3. Interfaces description

2.6. Data stream interface

The data stream interface is the DEBAT external interface that enables applications to send / receive data products to / from the DEBAT software through a TCP/IP (socket) or a pipe connection. Thanks to this interface, the DEBAT software is then able to read data from a socket or the standard input and to write data to a socket or the standard output.

3.1.1 TCP/IP interface

TCP provides a reliable, point-to-point communication channel that client-server applications use to communicate with each other. To communicate over TCP, a client program and a server program establish a socket connection to one another. A socket is one end-point of a two-way communication link between the server and the client. A socket is bound to a port number so that the TCP layer can identify the application that data is destined to be sent. The TCP/IP interface of DEBAT consists in a socket connection between the DEBAT software and an external user-application. The TCP/IP interface is split into two interfaces: the data reading interface which enables external users to send data products to the DEBAT software and the data writing interface which enables external users to receive data products from the DEBAT software. These two interfaces are detailed in the next sections.

3.1.1.1 Data reading interface The TCP/IP socket connection is here established between the DEBAT software – the socket server – and an external application – the socket client. Thanks to this connection, the client can send data to the DEBAT software. The data reading scenario is detailed hereafter:

The DEBAT software launches the socket server and waits for a client connection on a specified port,

The external application (the socket client) requests a connection with the server,

The DEBAT software (the socket server) accepts the client connection and reads the data sent by the client,

When the client has finished to send the data, it closes the socket connection and stops the server,

Page 19: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 8

DEBAT – Development of EAST Based Access Tools

: DEBAT software

: (External application)

Start socket server

Wait for client connection on port XXXConnect to the server

Accept connection

Send data

Read dataClose socket connection

Stop socket server

Figure 3-1: Data reading scenario

3.1.1.2 Data writing interface This interface is a socket connection between the DEBAT software – the socket client – and an external application – the socket server. Thanks to this connection, the DEBAT software can send data to the external application. The data writing scenario is detailed hereafter:

The external application (the socket server) waits for a client connection to read data,

The DEBAT software opens the connection with the socket server (localised by its ip address and port)

The external application (the socket server) accepts the connection with the DEBAT software and reads the data,

When all the data have been sent, the DEBAT software closes the socket connection with the server.

Page 20: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 9

DEBAT – Development of EAST Based Access Tools

: (External application)

: DEBAT software

Launch socket server

Wait for a client connection on port XXX

Accept connection

Send data

Read data

Close socket connection

Stop socket server

Connect to the server

Figure 3-2: Data writing scenario

3.1.2 Pipe interface

Thanks to this interface, the DEBAT software is able to: Read data products from the standard input,

Write data products to the standard output. The external applications that communicate with the DEBAT software through this interface have then to pipe their output stream (respectively input stream) into the standard input (resp. standard output) in order to send data to (resp. receive data from) the DEBAT software.

Page 21: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 10

DEBAT – Development of EAST Based Access Tools

2.7. Plug-in interface

The Plug-in system is primarily meant to allow the addition or replacement of new functions within the suite of tools. The plug-ins have to be implemented in such a way that they can be automatically and transparently recognised and handled by DEBAT. Some implementation rules have been defined. The Java plug-in implementation rules are as follows.

A Java plug-in shall provide a class that implements the PluginInterface

A Java plug-in shall be packaged in a jar archive.

PluginInterface

ini t()start()stop()mes sageReceived()sendMessage()

(from interface)

<<Interface>>

Figure 3-3 PluginInterface

The Black-box plug-in implementation rules are as follows:

A black box plug-in shall be an independent executable program that can be launched directly from a command-line.

A black-box plug-in shall reserved its standard input, output and error to communicate with DEBAT, as DEBAT assumes that a black-box plug-in is listening to DEBAT on its standard input, and posting string messages on its standard output and error streams. Note that this rule can be violated if a user doesn’t want to make his plug-in communicate with DEBAT.

Page 22: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 11

DEBAT – Development of EAST Based Access Tools

2.8. API interface

The API interface provides users with the ability to use the bulk of the DEBAT services inside their own applications. The API interface is split into:

Figure 3-4: DEBAT API interface

EAST core API:

The EAST core is a library providing services available through APIs in four languages: Ada, C/C++, Java and Fortran

Java plug-ins API:

The tools developed in the frame of the DEBAT project are Java applications written in Java. As a consequence, all the public methods of the Java classes of these tools are available through the Java API interface.

Furthermore, “all is plug-in DEBAT”: it means that the DEBAT tools (Data Modeller, DPE, DEQ, etc) are plug-ins and are managed as such. They have thus to implement a class defining the “service interface” – this interface is defined by the plug-in system. This class is intended to expose the functions/services to other applications/plug-ins and can then be used through the API interface.

By convention, this services class is named <Plugin/ToolName>ServicesInterface.

Figure 3-5: Java plug-in API

Page 23: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 12

DEBAT – Development of EAST Based Access Tools

3.1.3 EAST API

The EAST API is divided in three main modules: The Interpreter API gathers all functions used for data reading and checking,

The Data Generator API assembles all functions used for data blocks generation and saving,

The Query Handler API gathers all functions used to query the EAST descriptions and the data files.

Furthermore, these APIs are proposed for the ADA, JAVA, C/C++ and FORTRAN languages. It is to be noted that the Java API is completely new and based directly on the ADA API. The other ones will just be enhanced with new functions in order to meet all the new requirements of DEBAT. However, the current functions of these APIs are not be modified (i.e. none modification of the existing functions signatures) to insure the backward compatibility with previous versions of EAST. All the function of the EAST API can be found in Appendix 1.

Page 24: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 13

DEBAT – Development of EAST Based Access Tools

3.1.4 Java plug-ins API

This API comprises both the “Service interfaces” and the public methods of the Java classes composing the DEBAT tools. However, this section is limited to the description of the functionalities provided by the “Service interfaces” since the description of the public methods of the Java classes is not the purpose of this document.

3.1.4.1 DEBAT Data Modeller API The “service interface” of the DEBAT Data Modeller comprises the following functions:

Generation of an EAST description corresponding to the syntactic information of the IF file passed as parameter,

Generation of a DEDSL file (either in PVL or XML format) based on the semantic information contained in the IF file,

Generation of the documentation in PDF, HTML and RTF formats based on both syntactic and semantic attributes defined in the IF file,

Generation of the declaration files for C, C++, ADA and JAVA languages based on the syntactic information of the IF file,

Checking of the XML IF file. Note: All of the above functions call the checking function before any processing in order to verify the validity of the XML IF file. Generate EAST description file and format file.

Description This service enables users to generate the EAST description file and the FRT file corresponding to a particular model defined in an XML IF file.

Input parameters The XML IF file, The name of the EAST description file. The name of the FRT file

Failure An exception is raised with a message explaining the error.

Output Success The EAST description file and the FRT file is created with the name passed as parameter.

Generate DEDSL file in XML or PVL formats

Description This service enables users to generate the DEDSL file using the semantic attributes defined in an XML IF file.

Input parameters The XML IF file, The name of the DEDSL file to generate, The format of the DEDSL file (XML or PVL).

Failure An exception is raised with a message explaining the error.

Output Success The DEDSL file is created with the name passed as parameter and with the specified format.

Generate documentation in PDF, HTML or RTF formats

Page 25: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 14

DEBAT – Development of EAST Based Access Tools

Description This service enables users to generate the documentation corresponding to a particular model using the syntactic and semantic information defined in an XML IF file.

Input parameters The XML IF file, The name of the documentation file to generate, The target format (PDF, HTML or RTF).

Failure An exception is raised with a message explaining the error. Output Success The DEDSL-XML file is created with the name passed as parameter.

Generate declaration files for C, C++, ADA and JAVA languages

Description This service enables users to generate the declaration files corresponding to a particular model using the syntactic information defined in an XML IF file.

Input parameters The XML IF file, The name of the declaration file to generate, The target language (C, C++, ADA or JAVA).

Failure An exception is raised with a message explaining the error. Output Success The DEDSL-XML file is created with the name passed as parameter.

Generate XML-IF files

Description This service enables users to generate the XML IF file. Input parameters The name of the XML IF file to generate,

Failure An exception is raised with a message explaining the error. Output Success The XML IF file is created with the name passed as parameter.

Read XML IF, EAST and OASIS-IF files.

Description This service enables users to read XML-IF, EAST and OASIS-IF files. Input parameters The name of the file .

Failure An exception is raised with a message explaining the error. Output Success The file with the name passed as parameter is read.

XML IF validity checking

Description This service enables to verify that the XML IF is valid. This checks that the IF has not been modified by hand and is valid against the associated XML schema.

Input parameters The XML IF file. Failure An exception is raised with a message explaining the error.

Output Success Nothing is returned if the checking is successful. Search elements by syntactic and semantics information

Description This service enables to search elements with the syntactic and semantics information

Input parameters The request containing the semantics and syntactic information.. Failure An exception is raised with a message explaining the error.

Output Success The elements list corresponding to the criteria passed in parameter .

Page 26: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 15

DEBAT – Development of EAST Based Access Tools

Get or save the current data model and get the list of the opened data models

Description This service enables to get or to save the current data model and enables to get the list of the opened data models into the modeller application.

Input parameters The name of the file when the saving function is requested.. Failure An exception is raised with a message explaining the error.

Output Success The model or the list of the models is returned. When the saving function is called, the XML-IF file is created with the name passed as parameter.

3.1.4.2 DEBAT Data Producer & Editor API The DPE “service interface” provides two functions:

The first function is the generation function enabling users to generate a data block using a template file as input. The template file contains the directives set-up by users that describe how a data entity shall be generated.

The second function is the storage function that enables users to save the generated data block in a data product.

Open data product Description This service enables user to open a data product.

Input parameters The name of the data product to open.. Failure An exception is raised with a message explaining the error.

Output Success The data product with the name passed in parameter is read. Select a data block

Description This service enables user to select a data block in an opened data product. Input parameters The number of the data block.

Failure An exception is raised with a message explaining the error. Output Success The selected data block.

Get the number of data block

Description This service enables user to get the number of data blocks in an opened data product.

Input parameters No input parameter. Failure An exception is raised with a message explaining the error.

Output Success The number of data block in the data product. Insert or delete a data block

Description This service enables user to insert or delete a data block in an opened data product.

Input parameters The data block to insert or the number of the data block to delete.. Failure An exception is raised with a message explaining the error.

Output Success The new data product. Generate data block

Description This service generates a new data block.

Page 27: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 16

DEBAT – Development of EAST Based Access Tools

Input parameters The XML IF file (data model), The template file containing the generation directives.

Failure An exception is raised with a message explaining the error. Output Success The block is generated and stored in memory by EAST.

Note: It is possible to generate several blocks one after the other without saving them. However, only the last generated block is saved in memory and can thus be stored to disk. Save data block

Description This service saves the generated block in a data product at a given position.

Input parameters The data product file, The number of the generated block in the data product (i.e. the position of

the block) Failure An exception is raised with a message explaining the error.

Output Success The block is written in the data product. Save new data block

Description This service saves the selected block in a new file. Input parameters The name of the file

Failure An exception is raised with a message explaining the error. Output Success The block is written in the new file.

3.1.4.3 DEBAT Data Extractor & Querying API The “service interface” of the DEQ offers the following function:

Extract elements based on their paths, the elements are the result of the executed request. Execute query and Extract elements

Description This service extracts elements in a data file based on their EAST paths. The EAST path are the result of a processed query.

Input parameters

The data file to search, The corresponding EAST description file, The query to execute.

Failure An exception is raised with a message explaining the error.

Output Success

A list of elements responding to the request is returned. For each element the following information are delivered:

Its path, Its type, Its binary value if any Its ASCII value if any.

3.1.4.4 DEBAT Utilities API The DEBAT utilities propose the following functionalities:

Page 28: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 17

DEBAT – Development of EAST Based Access Tools

Extraction of data values and data paths of a particular data file associated with an EAST description,

Extraction of all elements’ paths in a specified EAST description,

Verification of an EAST description checksum (to check if the file has been modified by hand),

Checking of data values against the associated EAST description,

Comparison of two EAST descriptions.

Extraction of data values and associated paths (corresponds to the ASCII DUMP tool)

Description This service is used to extract the elements’ paths and values of an EAST description file and a corresponding data file.

Input parameters

The EAST description file, The data file, The results format (i.e. plain text or XML), The filename where the results have to be saved.

Failure An exception is raised with a message explaining the error. Output Success A file (in plain text or XML format) containing the elements’ paths along with

their values is created. Checking a data file against the associated EAST description (corresponds to the DATA CHECKER tool)

Description This service is used to verify that the values contained in a data file conform to the associated EAST description content.

Input parameters The data file to check, The associated EAST description file, A result file where the non-conform values are detailed.

Failure An exception is raised with a message explaining the error. Output

Success A boolean indicates if the checking has succeeded or not. If not, a result file is created with the encountered errors.

Comparison of two XML-IF data models

Description This service is used to get the differences between two XML-IF files.

Input parameters The two XML-IF to compare, The results file detailing the differences between the descriptions.

Failure An exception is raised with a message explaining the error. Output Success A boolean indicates if some differences have been found. If yes, a file is

created containing all the differences between the descriptions.

3.1.4.5 DEBAT Post-Processing Tools API The “service interface” of the DEBAT Post-Processing Tools encompasses the following functions:

Generation of quick-looks from raw-data,

Transformation of raw binary data products into XML documents.

Page 29: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 18

DEBAT – Development of EAST Based Access Tools

Quick-looks generation

Description This service enables to generate quick-looks from raw data.

Input parameters The XML-IF file (data model), The raw-data file, The name of the quick-look file.

Failure An exception is raised with a message explaining the error. Output Success The quick look is generated. XML transformation

Description This service enables to transform a raw binary data product into an XML document.

Input parameters The XML-IF file (data model), The raw-data file, The name of the XML document.

Failure An exception is raised with a message explaining the error. Output Success The XML document is created.

3.1.4.6 DEBAT Packager API The “Service interface” of the DEBAT Distribution tool is composed of two functions:

Creation of a package containing a set of files,

Compression of files or packages. Package files

Description This service enables to create a package containing a set of files.

Input parameters A table containing the files to be packaged together, The name of the package.

Failure An exception is raised with a message explaining the error. Output Success The package file is created. Compress packages and files

Description This service enables to compress packages and files.

Input parameters The name of the package or the file to be compressed, The name of the compressed file.

Failure An exception is raised with a message explaining the error. Output Success The compressed file is created.

Page 30: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 19

DEBAT – Development of EAST Based Access Tools

2.9. WEB services interfaces

Remote applications can execute DEBAT functions through Java Web Services. Here are listed all of the functions that can be called from the DEBAT Web Services. In DEBAT, the following web services have been foreseen to fulfil most of the users’ requirements. File upload

Description

This service is used to upload on the server: the EAST files,

the XML IF files,

the data files,

the template file containing the generation directives. The first two uploads have to be done prior to use any other web services as all rely on the EAST and/or data files. The upload of the template file has to be done prior to the data generation (if the user has specified some directives). The files are stored in session on the server so that all services can access them.

Input parameters

The XML IF file, Or the EAST file Or one data file, Or one generation template file.

Failure The response contains errors messages. Output

Success Nothing is returned if the upload has succeeded. Note 1: In case of XML IF description upload, the checking service is automatically called in order to verify that the uploaded file is valid. If valid, a corresponding EAST file is created with this IF as input. This file is used by all others services as the EAST core only handles EAST description files and not XML IF – this use is transparent to the users. Note 2: It is not possible for one user to upload two different files having the same name. File download

Description This service is used to download from the server the data files that have been modified after blocks generation.

Input parameters The name of the data file to download. Failure The response contains errors messages. Output Success The selected data file is returned.

EAST description reading

Description This service is used to read an EAST description file and create the corresponding internal form.

Page 31: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 20

DEBAT – Development of EAST Based Access Tools

Input parameters The name of the EAST description file to read Failure The response contains errors messages. Output Success Nothing is returned if the reading has succeeded.

XML-IF description reading

Description This service is used to read a XML-IF description file and create the corresponding internal form.

Input parameters The name of the XML IF file to read Failure The response contains errors messages. Output Success Nothing is returned if the reading has succeeded.

Data products generation

Description This service is used to generate a data file using the corresponding EAST description file and using the user-defined generation rules.

Input parameters

The file containing the generation rules, The name of the XML IF file, The data product where the block has to be saved, A block number indicating where in the data product the block shall be

saved. Failure The response contains errors messages. Output Success The generated block is stored in the specified data file at the desired location.

Note: The generation and the saving of the block is processed on the server on the previously updated data file or on a new data file. To get the modified data file, the user has to download it from the server. Data products reading

Description This service is used to read a data file using the corresponding EAST description file element by element.

Input parameters

The name of the data file to read, The name of the XML IF file, The block number to read, The path of the element which value is looked after.

Failure The response contains errors messages. Output Success If a path is specified, the value of this element in the specified block of the

data file is returned. Note 1: The first action executed by this service is to call the data products checking service in order to verify that the data product conforms to the XML IF description file. Note 2: The reading of a data file is made by the user. This means that the file is not read in one time. The information of the data file are accessed on users demand. The first time this service is called the element’s path is not present. In this case, the EAST core reads the EAST and data files and prepare the future accesses to data by calculating all the elements’ positions of the specified block. Data Products checking

Page 32: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 21

DEBAT – Development of EAST Based Access Tools

Description This service is used to verify that a given data file correspond to a specified EAST description.

Input parameters The name of the data file, The name of the corresponding EAST file.

Failure The response contains errors messages. Output Success A boolean is returned (with the true value in this case). Data Search (Request execution)

Description This service is used as the values search engine. It offers the ability to search for elements’ values using a request.

Input parameters The name of the data file, The name of the corresponding XML IF file, The request detailing which elements to search.

Failure The response contains errors messages. Output Success The results of the query execution are returned to the client application. Data Extraction Description This service is used to extract data values from a given data file.

Input parameters

The name of the data file, The name of the corresponding XML IF file, The search request detailing which elements to extract, The encoding to be used when extracting values (i.e. original encoding or

ASCII). Failure An exception is raised with a message explaining the error.

Output Success The extracted elements are returned to the client application. Each element is identified by its path, its type, its binary value if any, its ASCII value if any.

XML transformation Description The role of this service is to create XML views of the data files.

Input parameters The name of the data file, The name of the corresponding XML IF file, The transformation mode (i.e. FLAT or HIERARCHICAL).

Failure The response contains errors messages. Output Success The XML view file is returned to the client application XML-IF checking

Description This function verifies that a description is valid against its norm. For XML IF, the validation will take place against the XML schema defined..

Input parameters The name of the XML-IF file

Failure The response contains errors messages. Output Success The list of invalids elements. EAST description checking

Description This function verifies that a description is valid against its norm. For EAST descriptions, the validation will occur against the EAST norm..

Page 33: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 22

DEBAT – Development of EAST Based Access Tools

Input parameters The name of the For EAST description.

Failure The response contains errors messages. Output Success The list of invalids elements. Element existence checking Description This function is used to verify that a particular element exist in a data product. Input parameters The name of the element (its EAST path).

Failure The response contains errors messages. Output Success Return true. User authentication Description This function is used to identify the users that want to access the web services Input parameters The user login and password

Failure The response contains errors messages. Output Success Return true.

Page 34: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 23

DEBAT – Development of EAST Based Access Tools

4. Appendix 1: EAST core API functions

2.10. List of functions

INTERPRETER API

Start Load_next data_block_from_standard_input Stop Load_next_record_from_file Select_DDR Load_next_record_from_memory Release_DDR Load_next_record_from_socket Set_on_DDR Load_next_record_from_standard_input Close_file Load_end_of_current_block_from_file Focus_on Load_end_of_current_block_from_memory Prepare_accesses_for_current_block Load_end_of_current_block_from_socket Prepare_accesses_for_current_record Load_end_of_current_block_from_standard_input Clear_buffer Get_data_entity_ascii Free_octet_string Get_data_entity_binary Release_access_path Get_request_list Close_socket Get_number_occurences_of_data_entity Load_next data_block_from_file Get_number_elements_of_array Load_next data_block_from_memory Get_name_of_current_record Load_next data_block_from_socket Get_paths Get_paths_for_current_record Check_next_data_block_from_file Check_next_data_block_from_memory Check_next_data_block_from_standard_input Check_next_data_block_from_socket Check_next_record_from_file Check_next_record_from_Socket Check_next_record_from_standard_input Check_next_record_from_memory Check_end_of_current_block_from_file Check_end_of_current_block_from_socket Check_end_of_current_block_from_standard_input Check_data_entity Check_end_of_current_block_from_memory Get_errors_number Get_errors_number_in_current_block Start_sequence_recording Stop_sequence_recording Remove_sequence Dump Dump_to_xml

DATA GENERATOR API

Start Stop Select_DDR Release_DDR Close_file Focus_on Set_data_entity Force_data_entity Set_number_occurences_of_data_entity Reset Write Flush Read Get_remaining_list Start_sequence_recording Stop_sequence_recording Enable_sequence Disable_sequence Remove_sequence Verify

Page 35: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 24

DEBAT – Development of EAST Based Access Tools

Release_access_path Free_memory Get_paths Is_complete Generate_new_block Write_standard_output Read_standard_input Flush_standard_output Close_standard_output

DATA PRODUCT EXPLORER (COMMON TO INTERPRETER AND DATA GENERATOR)

Select_data_product Select_data_product_from_socket Select_data_product_from_standard_input Select_block exist Get_current_block_number Read_data_entity_ascii Read_data_entity_binary

QUERIES HANDLER Analyse_query Next_data_records Is_column_present Variable_value Free_data_records Free_query Records_count Block_number_of_records Data_filename_of_records

Page 36: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 25

DEBAT – Development of EAST Based Access Tools

2.11. Interpreter API

4.1.1 General services

start Initialises the interpreter according to the configuration files.

procedure start (Lang : IN LANGUAGE) Parameters Return

ADA

Exceptions See description in document [RD15]

int start_i (LANGUAGE lang) int start_i_mt (LANGUAGE lang, T_PIPE_INTERFACE **p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION start_i (lang) BYTE lang

Parameters Return

Fortran

Exceptions See description in document [RD17]

public void start (String lang)

Parameters lang: language used for the logbook messages. ENGLISH and FRENCH are implemented.

Return None Java

Exceptions X_INIT_ERROR : Initialisation has failed

Page 37: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 26

DEBAT – Development of EAST Based Access Tools

stop Deactivates the interpreter – destroys all temporary files and closes any open files.

procedure stop Parameters Return

ADA

Exceptions See description in document [RD15]

int stop_g () int stop_g_mt (T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION stop_g() Parameters Return

Fortran

Exceptions See description in document [RD17]

public void start (String lang)

Parameters lang: language used for the logbook messages. ENGLISH and FRENCH are implemented.

Return None Java

Exceptions None

Page 38: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 27

DEBAT – Development of EAST Based Access Tools

select_DDR

Loads an EAST description. This description then becomes the reference and controls the data reading. procedure select_DDR (DDR_File : IN STRING) Parameters Return

ADA

Exceptions See description in document [RD15]

int select_DDR_i (char *DDR_File) int select_DDR_i_mt (char *DDR_File, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION select_DDR_i (DDR_File) CHARACTER*(*) DDR_File

Parameters Return

Fortran

Exceptions See description in document [RD17]

public void selectDDR (String DDR_File) Parameters DDR_File: Name of the EAST description file. Return None Java

Exceptions X_UNKNOWN_DDR : DDR not found X_INCORRECT_DDR : the DDR is corrupted X_TOOL_NOT_INITIALIZED : the generator is not started

Note: The first time the description is selected, it is analyzed and a back-up file is created (an internal file, in the working directory, with a FIN extension). The next time, the library rereads the internal file rather than analyzing the EAST description again. If, however, the EAST description is more recent than its back-up, it is analyzed again and the internal file is updated.

Page 39: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 28

DEBAT – Development of EAST Based Access Tools

release_DDR

Closes an EAST description and frees memory resources and eventually disk resources. This service should be called when the description is no longer referred in the remainder of the application. procedure release_DDR (DDR_File : IN STRING; Memory_Only: IN BOOLEAN) Parameters Return

ADA

Exceptions See description in document [RD15]

int release_DDR_i (char *DDR_File, BOOLEAN Memory_Only) int release_DDR_i_mt (char *DDR_File, BOOLEAN Memory_Only,

T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION release_DDR_i (DDR_File, Memory_Only) CHARACTER*(*) DDR_File BYTE Memory_Only

Parameters Return

Fortran

Exceptions See description in document [RD17]

public void releaseDDR (String DDR_File, boolean Memory_Only)

Parameters DDR_File: Name of the EAST description file Memory_Only: TRUE if only memory resources are freed and FALSE if both memory resources and disk resources are freed.

Return None

Java

Exceptions None

Page 40: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 29

DEBAT – Development of EAST Based Access Tools

set_on_DDR This service enables users to choose the description to work with.

Procedure set_on_DDR (DDR_File : IN STRING) Parameters Return

ADA

Exceptions See description in document [RD15]

int set_on_DDR_g (char *DDR_File) int set_on_DDR_g_mt (char *DDR_File,

T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION set_on_DDR_g (DDR_File) CHARACTER*(*) DDR_File

Parameters Return

Fortran

Exceptions See description in document [RD17]

public void setOnDDR (String DDR_File) Parameters DDR_File: Name of the EAST description file Return None

Java

Exceptions None

Page 41: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 30

DEBAT – Development of EAST Based Access Tools

close_file Closes a data product file.

procedure close_file (Data_File : IN STRING) Parameters Return

ADA

Exceptions See description in document [RD15]

int close_file_i(char *Data_File) int close_file_i_mt(char *Data_File, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION close_file_i (Data_File) CHARACTER*(*) Data_File

Parameters Return

Fortran

Exceptions See description in document [RD17]

public void closeFile (String Data_File) Parameters DDR_File: Name of the data product file Return None

Java

Exceptions None Note: a file is implicitly opened when the first interpretation or check is performed (load_next_data_block_from_file, load_next_record_from_file, check_next_record_from_file or check_next_data_block_from_file). It is implicitly closed when the read file is changed or when the interpretation is stopped.

Page 42: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 31

DEBAT – Development of EAST Based Access Tools

focus_on

Reduces the scope of a description: the original EAST description is reduced to the designated data item. procedure focus_on (Path : IN STRING := “”) Parameters Return

ADA

Exceptions See description in document [RD15]

int focus_on_i (char *Access_Path) int focus_on_i_mt (char *Access_Path, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION focus_on_i (Access_Path) CHARACTER*(*) Access_Path

Parameters Return

Fortran

Exceptions See description in document [RD17]

public void focusOn (String Path) public void focusOn () Parameters Path: EAST name of data focussed. Return None

Java

Exceptions X_UNSELECTED_DDR : no DDR selected yet X_INCORRECT_ACCESS : the access path does not exist in DDR

Page 43: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 32

DEBAT – Development of EAST Based Access Tools

prepare_accesses_for_current_block

Prepares the data access. This method must be called after loading a data block and before accessing to the data (get methods). procedure prepare_accesses_for_current_block Parameters Return

ADA

Exceptions See description in document [RD15]

int prepare_accesses_for_current_block_i () int prepare_accesses_for_current_block_i_mt (T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION prepare_accesses_for_block_i () Parameters Return

Fortran

Exceptions See description in document [RD17]

public void prepareAccessesForCurrentBlock () Parameters None Return None

Java

Exceptions None

Page 44: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 33

DEBAT – Development of EAST Based Access Tools

prepare_accesses_for_current_record

Prepares the data access. This method must be called after loading a data record and before accessing to the data (get methods). procedure prepare_accesses_for_current_record Parameters Return

ADA

Exceptions See description in document [RD15]

int prepare_accesses_for_current_record_i () int prepare_accesses_for_current_record_i_mt (T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION prepare_accesses_for_record_i () Parameters Return

Fortran

Exceptions See description in document [RD17]

public void prepareAccessesForCurrentRecord () Parameters None Return None

Java

Exceptions None

Page 45: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 34

DEBAT – Development of EAST Based Access Tools

clear_buffer Empties the memory zone occupied by a loaded data record.

procedure clear_buffer Parameters Return

ADA

Exceptions See description in document [RD15]

int clear_buffer_i () int clear_buffer_i_mt (T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION clear_buffer_i () Parameters Return

Fortran

Exceptions See description in document [RD17]

public void clearBuffer () Parameters None Return None

Java

Exceptions None

Page 46: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 35

DEBAT – Development of EAST Based Access Tools

free_octet_string

Frees the memory zone allocated by the EAST library when a get_data_entity service is called. procedure free_octet_string (Data_Entity : IN OUT OCTET_STRING_ACCESS) Parameters Return

ADA

Exceptions See description in document [RD15]

Parameters Return

C/C++

Exceptions See description in document [RD16]

Parameters Return

Fortran

Exceptions See description in document [RD17]

public void freeOctetString (Octet_String Data_Entity) Parameters Data_Entity: Allocated zone to be freed. Return None

Java

Exceptions None

Page 47: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 36

DEBAT – Development of EAST Based Access Tools

release_access_path Frees resources.

procedure release_access_path (Acces_Path : IN STRING) Parameters Return

ADA

Exceptions See description in document [RD15]

int release_access_path_i (char *Access_Path) int release_access_path_i_mt (char *Access_Path, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION release_access_path_i(Access_Path) CHARACTER*(*) Access_Path

Parameters Return

Fortran

Exceptions See description in document [RD17]

public void releaseAccessPath (String Access_Path) Parameters Access_Path: Data name. Return None

Java

Exceptions None

Page 48: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 37

DEBAT – Development of EAST Based Access Tools

Close_socket Close the data socket at the end of a connection

procedure close_socket (Data_Socket) Parameters Return

ADA

Exceptions See description in document [RD15]

int close_socket_i(int Socket) int close_socket_i_mt(int Socket, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

Fortran Not Implemented

public void closeSocket(Socket Data_Socket) Parameters Data_Socket : the socket of data Return None

Java

Exceptions

X_UNSELECTED_DDR : no DDR selected X_UNKNOWN_DATA_FILE : error opening data file X_EMPTY_DATA_FILE : the data file is empty X_CONVERSION_ERROR : conversion error X_UNKNOWN_DATA : the data are not valid for the current DDR X_FIRST_RECORD_UNLOADED : the beginning of the block has not been loaded yet X_ERROR_FILE_CREATION_ERROR : error during the creation of the error file X_INCORRECT_DISCRIMINANT : control stopped due to an incorrect discriminant X_MAX_NB_ERRORS_REACHED : max error limit reached X_UNCOMPLETE_DATA_FILE : the data file contains not enougth data to identify a valid block

Page 49: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 38

DEBAT – Development of EAST Based Access Tools

4.1.2 Data loading services

load_next_data_block_from_file Loads and interprets the next block of a data product file.

procedure load_next_data_block_from_file (Data_File : IN STRING) Parameters Return

ADA

Exceptions See description in document [RD15]

int load_next_data_block_from_file_i (char *Data_File) int load_next_data_block_from_file_i_mt (char *Data_File,

T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION load_next_block_from_file_i (Data_File) CHARACTER*(*) Data_File

Parameters Return

Fortran

Exceptions See description in document [RD17]

public void loadNextDataBlockFromFile (String Data_File) Parameters Data_File: Name of the data product file. Return None

Java

Exceptions

X_UNSELECTED_DDR : no DDR selected yet X_UNKNOWN_DATA_FILE : the data file does not exist. X_EMPTY_DATA_FILE : the data file is empty X_CONVERSION_ERROR : the required conversion is impossible X_UNKNOWN_DATA : the data depends on a discriminant not set yet.

Page 50: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 39

DEBAT – Development of EAST Based Access Tools

load_next_data_block_from_memory Loads and interprets the next block of a data product stored in a memory zone.

function load_next_data_block_from_memory (Address : IN SYSTEM.ADDRESS) return LENGTH ;

Parameters Return

ADA

Exceptions See description in document [RD15]

int load_next_data_block_from_memory_i (char *Address, LENGTH *Offset) int load_next_data_block_from_memory_i_mt (char *Address, LENGTH *Offset,

T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION load_next_block_from_memory_i (Address, Offset) BYTE Address(*) INTEGER*4 Offset

Parameters Return

Fortran

Exceptions See description in document [RD17]

public int loadNextDataBlockFromMemory (Octet_String Value)

Parameters Value: derefenrenced value of the corresponding access type of the ADA Api

Return None Java

Exceptions

X_UNSELECTED_DDR : the DDR is not selected yet X_CONVERSION_ERROR : the required conversion is impossible X_UNKNOWN_DATA : the data depends on a discriminant not yet set X_MEMORY_ACCES_ERROR : the memory zone is not accessible

Page 51: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 40

DEBAT – Development of EAST Based Access Tools

load_next_data_block_from_Socket Loads and interprets the next block from a socket.

procedure load_next_data_block_from_Socket (Data_Socket : IN Socket_Type) Parameters Return

ADA

Exceptions See description in document [RD15]

int load_next_data_block_from_file_i (int Data_Socket) int load_next_data_block_from_file_i_mt (int Data_Socket, T_PIPE_INTERFACE

*p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

Fortran Not Implemented

public void loadNextDataBlockFromFile (Socket Data_Socket) Parameters Data_Socket : the socket of data. Return None

Java

Exceptions

X_UNSELECTED_DDR : no DDR selected yet X_UNKNOWN_DATA_FILE : the data file does not exist. X_EMPTY_DATA_FILE : the data file is empty X_CONVERSION_ERROR : the required conversion is impossible X_UNKNOWN_DATA : the data depends on a discriminant not set yet.

Page 52: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 41

DEBAT – Development of EAST Based Access Tools

load_next_data_block_from_standard_input Loads and interprets the next block from standard input.

procedure load_next_data_block_from_standard_input () Parameters Return

ADA

Exceptions See description in document [RD15]

int load_next_data_block_from_standard_input_i () int load_next_data_block_from_standard_input_i_mt (

T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION load_next_block_from_standard_input_i (Data_File) Parameters Return

Fortran

Exceptions See description in document [RD17]

public void loadNextDataBlockFromStandardInput () Parameters None Return None

Java

Exceptions

X_UNSELECTED_DDR : no DDR selected yet X_UNKNOWN_DATA_FILE : the data file does not exist. X_EMPTY_DATA_FILE : the data file is empty X_CONVERSION_ERROR : the required conversion is impossible X_UNKNOWN_DATA : the data depends on a discriminant not set yet.

Page 53: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 42

DEBAT – Development of EAST Based Access Tools

load_next_record_from_file Loads and interprets the next record of a data product file.

Procedure load_next_record_from_file (Data_File : IN STRING) Parameters Return

ADA

Exceptions See description in document [RD15]

int load_next_record_from_file_i (char *Data_File) int load_next_record_from_file_i_mt (char *Data_File, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION load_next_record_from_file_i (Data_File) CHARACTER*(*) Data_File

Parameters Return

Fortran

Exceptions See description in document [RD17]

public void loadNextRecordFromFile (String Data_File) Parameters Data_File: Name of the data product file. Return None

Java

Exceptions

X_UNSELECTED_DDR : the DDR is not selected yet X_UNKNOWN_DATA_FILE : the data file does not exist X_EMPTY_DATA_FILE : the data file is empty X_CONVERSION_ERROR : the required conversion is impossible X_UNKNOWN_DATA : the data depends on a discriminant not yet set

Page 54: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 43

DEBAT – Development of EAST Based Access Tools

load_next_record_from_memory Loads and interprets the next record of a data product stored in a memory zone.

function load_next_record_from_memory (Address : IN SYSTEM.ADDRESS) return LENGTH;

Parameters Return

ADA

Exceptions See description in document [RD15]

int load_next_record_from_memory_i (char *Address, LENGTH *Offset) int load_next_record_from_memory_i_mt (char *Address, LENGTH *Offset,

T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION load_next_record_from_memory_i (Address, Offset) BYTE Address(*) INTEGER*4 Offset

Parameters Return

Fortran

Exceptions See description in document [RD17]

public int loadNextRecordFromMemory (Octet_String Value) ;

Parameters Value: derefenrenced value of the corresponding access type of the ADA Api

Return The number of bits loaded. Java

Exceptions

X_UNSELECTED_DDR : the DDR is not selected yet X_CONVERSION_ERROR : the required conversion is impossible X_UNKNOWN_DATA : the data depends on a discriminant not yet set X_MEMORY_ACCES_ERROR : the memory zone is not accessible

Page 55: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 44

DEBAT – Development of EAST Based Access Tools

load_next_record_from_Socket Loads and interprets the next record from a socket.

Procedure load_next_record_from_Socket (Data_Socket : IN Socket_Type) Parameters Return

ADA

Exceptions See description in document [RD15]

int load_next_record_from_Socket_i (int Data_Socket) int load_next_record_from_Socket_i_mt (int Data_Socket, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

Fortran Not Implemented

public void load_nextRecordFromSocket (Socket Data_Socket) Parameters Data_Socket: the socket of data. Return None

Java

Exceptions

X_UNSELECTED_DDR : the DDR is not selected yet X_UNKNOWN_DATA_FILE : the data file does not exist X_EMPTY_DATA_FILE : the data file is empty X_CONVERSION_ERROR : the required conversion is impossible X_UNKNOWN_DATA : the data depends on a discriminant not yet set

Page 56: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 45

DEBAT – Development of EAST Based Access Tools

load_next_record_from_standard input Loads and interprets the next record from standard input.

Procedure load_next_record_from_standard_input () Parameters Return

ADA

Exceptions See description in document [RD15]

int load_next_record_from_standard_input_i () int load_next_record_from_standard_input_i_mt ( T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION load_next_record_from_standard_input_i () Parameters Return

Fortran

Exceptions See description in document [RD17]

public void loadNextRecordFromStandardInput () Parameters None Return None

Java

Exceptions

X_UNSELECTED_DDR : the DDR is not selected yet X_UNKNOWN_DATA_FILE : the data file does not exist X_EMPTY_DATA_FILE : the data file is empty X_CONVERSION_ERROR : the required conversion is impossible X_UNKNOWN_DATA : the data depends on a discriminant not yet set

Page 57: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 46

DEBAT – Development of EAST Based Access Tools

load_end_of_current_block_from_file Loads and interprets the end of the current block of a data product file.

procedure load_end_of_current_block_from_file (Data_File : IN STRING) Parameters Return

ADA

Exceptions See description in document [RD15]

int load_end_of_current_block_from_file_i (char *Data_File) int load_end_of_current_block_from_file_i_mt (char *Data_File,

T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION load_end_of_block_from_file_i (Data_File) CHARACTER*(*) Data_File

Parameters Return

Fortran

Exceptions See description in document [RD17]

public void load_endOfCurrentBlockFromFile (String Data_File) Parameters Data_File: Name of the data product file. Return None

Java

Exceptions

X_UNSELECTED_DDR : the DDR is not selected yet X_UNKNOWN_DATA_FILE : the data file does not exist X_EMPTY_DATA_FILE : the data file is empty X_CONVERSION_ERROR : the required conversion is impossible X_UNKNOWN_DATA : the data depends on a discriminant not yet set X_FIRST_RECORD_UNLOADED : the beginning of the bloc has not been loaded yet.

Page 58: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 47

DEBAT – Development of EAST Based Access Tools

load_end_of_current_block_from_memory

Loads and interprets the end of the current block of a data product stored in a memory zone. function load_end_of_current_block_from_memory (Address : IN SYSTEM.ADDRESS)

return LENGTH Parameters Return

ADA

Exceptions See description in document [RD15]

int load_end_of_current_block_from_memory_i (char *Address, LENGTH *Offset) int load_end_of_current_block_from_memory_i_mt (char *Address, LENGTH *Offset,

T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION load_end_of_block_from_memory_i (Address, Offset) BYTE Address(*) INTEGER*4 Offset

Parameters Return

Fortran

Exceptions See description in document [RD17]

public int loadEndOfCurrentBlockFromMemory (Octet_String Value)

Parameters Value: derefenrenced value of the corresponding access type of the ADA Api

Return The number of bits loaded. Java

Exceptions

X_UNSELECTED_DDR : the DDR is not selected yet X_CONVERSION_ERROR : the required conversion is impossible X_UNKNOWN_DATA : the data file does not exist X_FIRST_RECORD_UNLOADED : the beginning of the bloc has not been loaded yet X_MEMORY_ACCES_ERROR : the memory zone is not accessible

Page 59: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 48

DEBAT – Development of EAST Based Access Tools

load_end_of_current_block_from_socket Loads and interprets the end of the current block from a socket.

procedure load_end_of_current_block_from_socket (Data_Socket : IN Socket_Type) Parameters Return

ADA

Exceptions See description in document [RD15]

int load_end_of_current_block_from_socket_i (int Data_Socket) int load_end_of_current_block_from_socket_i_mt (int Data_Socket,

T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

Fortran Not Implemented

public void loadEndOfCurrentBlockFromSocket (Socket Data_Socket) Parameters Data_Socket: the socket of data. Return None

Java

Exceptions

X_UNSELECTED_DDR : the DDR is not selected yet X_UNKNOWN_DATA_FILE : the data file does not exist X_EMPTY_DATA_FILE : the data file is empty X_CONVERSION_ERROR : the required conversion is impossible X_UNKNOWN_DATA : the data depends on a discriminant not yet set X_FIRST_RECORD_UNLOADED : the beginning of the bloc has not been loaded yet.

Page 60: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 49

DEBAT – Development of EAST Based Access Tools

load_end_of_current_block_from_standard_input Loads and interprets the end of the current block from standard input.

procedure load_end_of_current_block_from_standard_input () Parameters Return

ADA

Exceptions See description in document [RD15]

int load_end_of_current_block_from_standard_input_i () int load_end_of_current_block_from_standard_input_i_mt (

T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION load_end_of_block_from_standard_input_i () Parameters Return

Fortran

Exceptions See description in document [RD17]

public void loadEndOfCurrentBlockFromStandardInput () Parameters None Return None

Java

Exceptions

X_UNSELECTED_DDR : the DDR is not selected yet X_UNKNOWN_DATA_FILE : the data file does not exist X_EMPTY_DATA_FILE : the data file is empty X_CONVERSION_ERROR : the required conversion is impossible X_UNKNOWN_DATA : the data depends on a discriminant not yet set X_FIRST_RECORD_UNLOADED : the beginning of the bloc has not been loaded yet.

Page 61: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 50

DEBAT – Development of EAST Based Access Tools

4.1.3 Data reading services

get_data_entity_ascii and get_data_entity_binary Retrieves interpreted data.

Procedure get_data_entity_ascii (Access_Path : IN STRING; Item : OUT STRING; Last : OUT NATURAL; Occurrence : IN INTEGER := 0)

procedure get_data_entity_binary (Access_Path : IN STRING; Data_Address : IN SYSTEM.ADDRESS; Data_Length : OUT LENGTH; Conversion : IN KIND_OF_CONVERSION; Occurrence : IN INTEGER := 0)

procedure get_data_entity_binary (Access_Path : IN STRING; Data_Entity : IN OUT OCTET_STRING_ACCESS; Data_Length : OUT LENGTH;Conversion : IN KIND_OF_CONVERSION; Occurrence : IN INTEGER := 0)

Parameters Return

ADA

Exceptions See description in document [RD15]

int get_data_entity_i (char *Access_Path, OCTET **Data_Address, int *Data_Length, KIND_OF_CONVERSION Conversion, int Occurrence)

int get_data_entity_i_mt (char *Access_Path, OCTET **Data_Address, int *Data_Length, KIND_OF_CONVERSION Conversion, int Occurrence, T_PIPE_INTERFACE *p_id)

Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION get_data_entity_i (Access_Path, Value, Data_Length, Conversion, Occurrence) CHARACTER*(*) Access_Path INTEGER*4 Occurrence, Data_Length BYTE Conversion

Parameters Return

Fortran

Exceptions See description in document [RD17]

Page 62: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 51

DEBAT – Development of EAST Based Access Tools

public void getDataEntityAscii(String access_path, String item, Integer last, Integer

occurrence) public void getDataEntityAscii(String access_path, String item, Integer last) public void getDataEntityBinary(String access_path, Octet_String Value, Length

data_length, Kind_Of_Conversion conversion, Integer occurrence) public void getDataEntityBinary(String access_path, Octet_String Value, Length

data_length, Kind_Of_Conversion conversion) public void getDataEntityBinary(String access_path, Octet_String_Access data_entity,

Length data_length, Kind_Of_Conversion conversion, Integer occurrence) public void getDataEntityBinary(String access_path, Octet_String_Access data_entity,

Length data_length, Kind_Of_Conversion conversion)

Parameters

access_path : name of required data. item : target character chain. last : length of item. occurrence : position in the list (0 means no list and is the default value) Value: derefenrenced value of the corresponding access type of the ADA Api data_length : number of bits written at data_address. conversion : Type of conversion. Possible values : LOGICAL (no conversion), INTEGER_8, INTEGER_16, INTEGER_32, REAL_32, REAL_64).

Return

Java

Exceptions

X_UNLOADED_DATA : the data have not been loaded (call to ‘load*’ operations) before the call of a get_data operation X_CONVERSION_ERROR : the required conversion is impossible X_INCORRECT_ACCESS : the access path is not valid for the data X_IMPOSSIBLE_ACCESS : the ‘prepare_access’ operation has not been called before accessing a data CONSTRAINT_ERROR : Ada exception which has not been trapped

Page 63: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 52

DEBAT – Development of EAST Based Access Tools

get_request_list provide the decomposition of a complex data

procedure get_request_list (Access_Path : IN STRING; File_Name : IN STRING; Path_Number : OUT INTEGER; Keep_In_Memory : IN BOOLEAN := FALSE; Occurrence : IN INTEGER := 1)

Parameters Return

ADA

Exceptions See description in document [RD15]

int get_request_list_i(char *Access_Path, char *File_Name, int *Path_Number, BOOLEAN Keep_In_Memory, int Occurrence)

int get_request_list_i_mt(char *Access_Path, char *File_Name, int *Path_Number, BOOLEAN Keep_In_Memory, int Occurrence, T_PIPE_INTERFACE *p_id)

Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION get_request_list_i (Access_Path, File_Name, Path_Number,Keep_In_Memory,Occurrence) CHARACTER*(*) Access_Path, File_Name INTEGER*4 Occurrence, Path_Number BYTE Keep_In_Memory Parameters Return

Fortran

Exceptions See description in document [RD17]

public void getRequestList(String access_path, String file_name, Integer path_number, Boolean keep_in_memory, Integer occurence)

public void getRequestList(String access_path, String file_name, Integer path_number, Boolean keep_in_memory)

Parameters

access_path : data name file_name : the name of the result file path_number : the number of paths written in ‘file_name’ keep_In_memory : this flag decides if the result of the analysis has to be kept in memory occurrence : occurence number in a list of paths (0 is default value)

Return None

Java

Exceptions X_INCORRECT_ACCESS : the path is not a valid EAST path X_CREATION_ERROR : error during the writing of the result file

Page 64: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 53

DEBAT – Development of EAST Based Access Tools

get_number_occurrences_of_data_entity compute the occurrences number of a data in a list

function get_number_occurrences_of_data_entity ( Access_Path : IN STRING; Keep_In_Memory : IN BOOLEAN := FALSE)

return INTEGER Parameters Return

ADA

Exceptions See description in document [RD15]

int get_number_occurrences_of_data_entity_i(char *Access_Path, BOOLEAN Keep_In_Memory, int *Occurrence) int get_number_occurrences_of_data_entity_i_mt(char *Access_Path, BOOLEAN Keep_In_Memory, int *Occurrence, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

Fortran Not implemented

public Integer getNumberOccurences_of_data_entity(String acccess_path, Boolean keep_in_memory)

public Integer getNumberOccurences_of_data_entity(String acccess_path)

Parameters access_path : data name keep_in_memory : this flag decides if the result of the analysis has to be kept in memory (false is default value)

Return occurrences number

Java

Exceptions X_UNLOADED_DATA : no interpreted data in memory X_INCORRECT_ACCESS : access_path is not a valid EAST access path

Page 65: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 54

DEBAT – Development of EAST Based Access Tools

get_number_elements_of_array return the number of elements in an array type data

function get_number_elements_of_array (Access_Path : IN STRING; Keep_In_Memory : IN BOOLEAN := FALSE; Occurrence : IN INTEGER := 1) return INTEGER

Parameters Return

ADA

Exceptions See description in document [RD15]

int get_number_elements_of_array_i(char *Access_Path, BOOLEAN Keep_In_Memory, int Occurrence, int *Nb_Elements)

int get_number_elements_of_array_i_mt(char *Access_Path, BOOLEAN Keep_In_Memory, int Occurrence, int *Nb_Elements,

T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION get_number_elements_of_array_i (Access_Path,Keep_In_Memory, Occurrence,Nb_Elements) CHARACTER*(*) Access_Path BYTE Keep_In_Memory INTEGER Occurrence INTEGER Nb_Elements Parameters Return

Fortran

Exceptions See description in document [RD17]

public Integer setNumberElementsOfArray( String access_path, Boolean keep_in_memory, Integer Occurence)

public Integer setNumberElementsOfArray( String access_path, Boolean keep_in_memory) public Integer setNumberElementsOfArray( String access_path, Integer Occurence) public Integer setNumberElementsOfArray( String access_path)

Parameters

access_path : data name keep_in_memory : this flag decides if the result of the analysis has to be kept in memory (false is default value) occurrence : occurence number in a list (1 is default value)

Return the number of elements in the array

Java

Exceptions X_UNLOADED_DATA : no interpreted data in memory X_INCORRECT_ACCESS : ‘access_path’ is not a valid EAST data path

Page 66: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 55

DEBAT – Development of EAST Based Access Tools

get_name_of_current_record return the name of the current record

function get_name_of_current_record return STRING Parameters Return

ADA

Exceptions See description in document [RD15]

int get_name_of_current_record_i(char **Name) int get_name_of_current_record_i_mt(char **Name, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION get_name_of_current_record_i(Name) CHARACTER*(*) Name Parameters Return

Fortran

Exceptions See description in document [RD17]

public String getNameOfCurrentRecord() Parameters None Return the name of the current record

Java

Exceptions C_UNLOADED_DATA : no interpreted data in memory

Page 67: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 56

DEBAT – Development of EAST Based Access Tools

get_paths returns all the paths of the currently loaded bloc

procedure get_paths ( File_Name : IN STRING; With_ASCII_Values : IN BOOLEAN := FALSE; With_Positions : IN BOOLEAN := FALSE) Parameters Return

ADA

Exceptions See description in document [RD15]

int get_paths_i(char *File_Name, BOOLEAN With_ASCII_Values, BOOLEAN With_Positions)

int get_paths_i_mt(char *File_Name, BOOLEAN With_ASCII_Values, BOOLEAN With_Positions, T_PIPE_INTERFACE *p_id)

Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION get_paths_i(File_Name, With_ASCII_Values, With_Positions) CHARACTER*(*) File_Name BYTE With_ASCII_Values BYTE With_Positions Parameters Return

Fortran

Exceptions See description in document [RD17]

public void getPaths(String file_name, Boolean with_ascii_values, Boolean with_positions)

public void getPaths(String file_name, Boolean with_ascii_values) public void getPaths(String file_name, Boolean with_positions) public void getPaths(String file_name)

Parameters

file_name : name of the result file with_ascii_values : this flag turns on the printing of values un front of the paths (false is default value) with_positions : this flag turns on the printing of the offsets (in bits, false is default value)

Return None

Java

Exceptions X_UNLOADED_DATA : no interpreted data in memory X_CONVERSION_ERROR : conversion error

Page 68: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 57

DEBAT – Development of EAST Based Access Tools

get_paths_for_current_record return all the elementary paths of a given record

procedure get_paths_for_current_record ( File_Name : IN STRING; With_ASCII_Values : IN BOOLEAN := FALSE; With_Positions : IN BOOLEAN := FALSE) Parameters Return

ADA

Exceptions See description in document [RD15]

int get_paths_for_current_record_i(char *File_Name, BOOLEAN With_ASCII_Values, BOOLEAN With_Positions) int get_paths_for_current_record_i_mt(char *File_Name, BOOLEAN With_ASCII_Values, BOOLEAN With_Positions, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION get_paths_for_current_record_i( File_Name, With_ASCII_Values, With_Positions) CHARACTER*(*) File_Name BYTE With_ASCII_Values BYTE With_Positions Parameters Return

Fortran

Exceptions See description in document [RD17]

public void getPathsForCurrentRecord(String file_name, Boolean with_ascii_values, Boolean with_positions)

public void getPathsForCurrentRecord(String file_name, Boolean with_positions) public void getPathsForCurrentRecord(String file_name, Boolean with_ascii_values) public void getPathsForCurrentRecord(String file_name)

Parameters

file_name : name of the result file with_ascii_values : this flag turns on the printing of values un front of the paths (false is default value) with_positions : this flag turns on the printing of the offsets (in bits, false is default value)

Return None

Java

Exceptions X_UNLOADED_DATA : no interpreted data in memory X_CONVERSION_ERROR : conversion error

Page 69: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 58

DEBAT – Development of EAST Based Access Tools

4.1.4 Data checking services

check_next_data_block_from_file control check the next data block of a file

procedure check_next_data_block_from_file ( Data_File : IN STRING; Errors_file : IN STRING; nb_errors : IN NATURAL := 1) Parameters Return

ADA

Exceptions See description in document [RD15]

int check_next_data_block_from_file_i(char *Data_File, char *Error_File, int, Nb_Max_Errors) int check_next_data_block_from_file_i_mt(char *Data_File, char *Error_File, int Nb_Max_Errors, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION check_next_data_block_from_file_i( Data_File, Error_File, Nb_Max_Errors) CHARACTER*(*) Data_File CHARACTER*(*) Error_File INTEGER*4 Nb_Max_Errors Parameters Return

Fortran

Exceptions See description in document [RD17]

public void checkNextDataBlockFromFile(String in_file, String error_file, Integer nb_errors)

public void checkNextDataBlockFromFile(String in_file, String error_file)

Parameters data_file : data file name errors_file : errors file name nb_errors : number of detected errors (1 is default value)

Java

Return None

Page 70: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 59

DEBAT – Development of EAST Based Access Tools

Exceptions

X_UNSELECTED_DDR : no DDR selected X_UNKNOWN_DATA_FILE : the data file does not exist X_EMPTY_DATA_FILE : the data file es empty X_CONVERSION_ERROR : conversion error X_UNKNOWN_DATA : the data does not correspond to the current DDR X_ERROR_FILE_CREATION_ERROR : error during the creation of the error file X_INCORRECT_DISCRIMINANT : a non valid discriminant caused the end of the checking process X_MAX_NB_ERRORS_REACHED : the limit has been reached X_UNCOMPLETE_DATA_FILE : the data file has not enougth data to check a complete block

Page 71: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 60

DEBAT – Development of EAST Based Access Tools

check_next_data_block_from_memory check the validity of the next block read from memory

function check_next_data_block_from_memory (Address : IN SYSTEM.ADDRESS; Errors_File : IN STRING; Nb_Errors : IN NATURAL := 1) return LENGTH

Parameters Return

ADA

Exceptions See description in document [RD15]

int check_next_data_block_from_memory_i(char *Address, LENGTH *Offset, char *Error_File, int Nb_Max_Errors) int check_next_data_block_from_memory_i_mt(char *Address, LENGTH *Offset, char *Error_File, int Nb_Max_Errors, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION check_next_data_block_from_memory_i( Address, Offset, Error_File, Nb_Max_Errors) BYTE Address(*) INTEGER*4 Offset CHARACTER*(*) Error_File INTEGER*4 Nb_Max_Errors Parameters Return

Fortran

Exceptions See description in document [RD17]

public Length checkNextDataBlockFromMemory( Octet_String Value, String Errors, Integer Nb_Errors)

public Length checkNextDataBlockFromMemory( Octet_String Value, String Errors)

Parameters

Value: derefenrenced value of the corresponding access type of the ADA Api errors : name of the error file nb_errors : max number of detected errors (1 is default value)

Return number of checked bits Java

Exceptions

X_UNSELECTED_DDR : no DDR selected X_CONVERSION_ERROR : conversion error X_UNKNOWN_DATA : the data are not valid for the current EAST DDR X_MEMORY_ACCESS_ERROR : acces on a protected memory zone X_ERROR_FILE_CREATION_ERROR : problem during the creation of the error file X_INCORRECT_DISCRIMINANT : control stopped due to an incorrect discriminant X_MAX_NB_ERRORS_REACHED : max error limit reached

Page 72: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 61

DEBAT – Development of EAST Based Access Tools

check_next_data_block_from_socket control check the next data block from a Socket

procedure check_next_data_block_from_Socket ( Data_Socket : IN Socket_Type; Errors_file : IN STRING; nb_errors : IN NATURAL := 1) Parameters Return

ADA

Exceptions See description in document [RD15]

int check_next_data_block_from_socket_i(it Data_Socket, char *Error_File, int, Nb_Max_Errors) int check_next_data_block_from_socket_i_mt(int Data_Socket, char *Error_File, int Nb_Max_Errors, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

Fortran Not Implemented

public void check_nextDataBlockFromSocket(Socket Data_Socket, String error_file, Integer nb_errors)

public void check_nextDataBlockFromSocket(Socket Data_Socket, String error_file)

Parameters Data_Socket : the socket of data errors_file : errors file name nb_errors : number of detected errors (1 is default value)

Return None

Java

Exceptions

X_UNSELECTED_DDR : no DDR selected X_UNKNOWN_DATA_FILE : the data file does not exist X_EMPTY_DATA_FILE : the data file es empty X_CONVERSION_ERROR : conversion error X_UNKNOWN_DATA : the data does not correspond to the current DDR X_ERROR_FILE_CREATION_ERROR : error during the creation of the error file X_INCORRECT_DISCRIMINANT : a non valid discriminant caused the end of the checking process X_MAX_NB_ERRORS_REACHED : the limit has been reached X_UNCOMPLETE_DATA_FILE : the data file has not enougth data to check a complete block

Page 73: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 62

DEBAT – Development of EAST Based Access Tools

Page 74: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 63

DEBAT – Development of EAST Based Access Tools

check_next_data_block_from_standard_input control check the next data block from standard input

procedure check_next_data_block_from_standard_input ( Errors_file : IN STRING; nb_errors : IN NATURAL := 1) Parameters Return

ADA

Exceptions See description in document [RD15]

int check_next_data_block_from_sandard_input_i(char *Error_File, int, Nb_Max_Errors) int check_next_data_block_from_standard_input_i_mt(char *Error_File, int Nb_Max_Errors, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION check_next_data_block_from_standard_input_i(Error_File, Nb_Max_Errors) CHARACTER*(*) Error_File INTEGER*4 Nb_Max_Errors Parameters Return

Fortran

Exceptions See description in document [RD17]

public void checkNextDataBlockFromStandardInput(String error_file, Integer nb_errors) public void checkNextDataBlockFromStandardInput(String error_file)

Parameters errors_file : errors file name nb_errors : number of detected errors (1 is default value)

Return None

Java

Exceptions

X_UNSELECTED_DDR : no DDR selected X_UNKNOWN_DATA_FILE : the data file does not exist X_EMPTY_DATA_FILE : the data file es empty X_CONVERSION_ERROR : conversion error X_UNKNOWN_DATA : the data does not correspond to the current DDR X_ERROR_FILE_CREATION_ERROR : error during the creation of the error file X_INCORRECT_DISCRIMINANT : a non valid discriminant caused the end of the checking process X_MAX_NB_ERRORS_REACHED : the limit has been reached X_UNCOMPLETE_DATA_FILE : the data file has not enougth data to check a complete block

Page 75: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 64

DEBAT – Development of EAST Based Access Tools

check_next_record_from_file check the validity of the next record read from a file

procedure check_next_record_from_file (Data_File : IN STRING; Errors_File : IN STRING; Nb_Errors : IN NATURAL := 1) Parameters Return

ADA

Exceptions See description in document [RD15]

int check_next_record_from_file_i(char *Data_File, char *Error_File, int Nb_Max_Errors) int check_next_record_from_file_i_mt(char *Data_File, char *Error_File, int Nb_Max_Errors, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION check_next_record_from_file_i( Data_File, Error_File, Nb_Max_Errors) CHARACTER*(*) Data_File CHARACTER*(*) Error_File INTEGER*4 Nb_Max_Errors Parameters Return

Fortran

Exceptions See description in document [RD17]

public void checkNextRecordFromFile(String data_file, String errors_file, Integer nb_errors)

public void checkNextRecordFromFile(String data_file, String errors_file)

Parameters data_file : data file name errors_file : errors file name nb_errors : max number of errors (1 is default value)

Return None

Java

Exceptions

X_UNSELECTED_DDR : no DDR selected X_UNKNOWN_DATA_FILE : impossible to open data file X_EMPTY_DATA_FILE : the data file is empty X_CONVERSION_ERROR : impossible to find a valid data for conversion X_UNKNOWN_DATA : the data are not valid for the current DDR X_ERROR_FILE_CREATION_ERROR : problem during the creation of the error file X_INCORRECT_DISCRIMINANT : control stopped due to an incorrect discriminant X_MAX_NB_ERRORS_REACHED : max error limit reached X_UNCOMPLETE_DATA_FILE : the data file contains not enougth data to identify a valid block

Page 76: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 65

DEBAT – Development of EAST Based Access Tools

check_next_record_from_memory check the validity of the next record read from memory

function check_next_record_from_memory (Address : IN SYSTEM.ADDRESS; Errors_File : IN STRING; Nb_Errors : IN NATURAL := 1) return LENGTH Parameters Return

ADA

Exceptions See description in document [RD15]

int check_next_record_from_memory_i(char *Address, LENGTH *Offset, char *Error_File, int Nb_Max_Errors) int check_next_record_from_memory_i_mt(char *Address, LENGTH *Offset, char *Error_File, int Nb_Max_Errors, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION check_next_record_from_memory_i( Address, Offset, Error_File, Nb_Max_Errors) BYTE Address(*) INTEGER*4 Offset CHARACTER*(*) Error_File INTEGER*4 Nb_Max_Errors Parameters Return

Fortran

Exceptions See description in document [RD17]

public Length checkNextRecordFromMemory( Octet_String Value, String errors_file, Integer nb_errors)

public Length checkNextRecordFromMemory( Octet_String Value, String errors_file)

Parameters

Value: derefenrenced value of the corresponding access type of the ADA Api errors_file : name of the errors file nb_errors : maximum number of errors before the end of the check (1 is default value)

Return number of bits checked Java

Exceptions

X_UNSELECTED_DDR : no DDR selected X_CONVERSION_ERROR : conversion error X_UNKNOWN_DATA : the data are not valid for the current DDR X_MEMORY_ACCESS_ERROR : access to a protected memory zone X_ERROR_FILE_CREATION_ERROR : error during the creation of the error file X_INCORRECT_DISCRIMINANT : control stopped due to an incorrect discriminant X_MAX_NB_ERRORS_REACHED : max error limit reached

Page 77: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 66

DEBAT – Development of EAST Based Access Tools

check_next_record_from_socket check the validity of the next record read from a socket

procedure check_next_record_from_socket (Data_Socket : IN Socket_Type; Errors_File : IN STRING; Nb_Errors : IN NATURAL := 1) Parameters Return

ADA

Exceptions See description in document [RD15]

int check_next_record_from_socket_i(int Data_Socket, char *Error_File, int Nb_Max_Errors) int check_next_record_from_socket_i_mt(int Data_Socket, char *Error_File, int Nb_Max_Errors, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

Fortran Not Implemented

public void checkNextRecordFromSocket(Socket Data_Socket, String errors_file, Integer nb_errors)

public void checkNextRecordFromSocket(Socket Data_Socket, String errors_file)

Parameters Data_Socket : the socket of data errors_file : errors file name nb_errors : max number of errors (1 is default value)

Return None

Java

Exceptions

X_UNSELECTED_DDR : no DDR selected X_UNKNOWN_DATA_FILE : impossible to open data file X_EMPTY_DATA_FILE : the data file is empty X_CONVERSION_ERROR : impossible to find a valid data for conversion X_UNKNOWN_DATA : the data are not valid for the current DDR X_ERROR_FILE_CREATION_ERROR : problem during the creation of the error file X_INCORRECT_DISCRIMINANT : control stopped due to an incorrect discriminant X_MAX_NB_ERRORS_REACHED : max error limit reached X_UNCOMPLETE_DATA_FILE : the data file contains not enougth data to identify a valid block

Page 78: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 67

DEBAT – Development of EAST Based Access Tools

check_next_record_from_standard_input check the validity of the next record read from a file

procedure check_next_record_from_standard_input (Errors_File : IN STRING; Nb_Errors : IN NATURAL := 1) Parameters Return

ADA

Exceptions See description in document [RD15]

int check_next_record_from_standard_input_i(char *Error_File, int Nb_Max_Errors) int check_next_record_from_standard_input_i_mt(char *Error_File, int Nb_Max_Errors, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION check_next_record_from_standard_input_i( Error_File, Nb_Max_Errors) CHARACTER*(*) Error_File INTEGER*4 Nb_Max_Errors Parameters Return

Fortran

Exceptions See description in document [RD17]

public void checkNextRecordFromStandardInput(String errors_file, Integer nb_errors) public void checkNextRecordFromStandardInput(String errors_file)

Parameters errors_file : errors file name nb_errors : max number of errors (1 is default value)

Return None

Java

Exceptions

X_UNSELECTED_DDR : no DDR selected X_UNKNOWN_DATA_FILE : impossible to open data file X_EMPTY_DATA_FILE : the data file is empty X_CONVERSION_ERROR : impossible to find a valid data for conversion X_UNKNOWN_DATA : the data are not valid for the current DDR X_ERROR_FILE_CREATION_ERROR : problem during the creation of the error file X_INCORRECT_DISCRIMINANT : control stopped due to an incorrect discriminant X_MAX_NB_ERRORS_REACHED : max error limit reached X_UNCOMPLETE_DATA_FILE : the data file contains not enougth data to identify a valid block

Page 79: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 68

DEBAT – Development of EAST Based Access Tools

check_end_of_current_block_from_file check if the end of the current block (read from file) is valid

procedure check_end_of_current_block_from_file (Data_File : IN STRING; Errors_File : IN STRING; Nb_Errors : IN NATURAL := 1) Parameters Return

ADA

Exceptions See description in document [RD15]

int check_end_of_current_block_from_file_i(char *Data_File, char *Error_File, int Nb_Max_Errors) int check_end_of_current_block_from_file_i_mt(char *Data_File, char *Error_File, int Nb_Max_Errors, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION check_end_of_current_block_from_file_i( Data_File, Error_File, Nb_Max_Errors) CHARACTER*(*) Data_File CHARACTER*(*) Error_File INTEGER*4 Nb_Max_Errors Parameters Return

Fortran

Exceptions See description in document [RD17]

public void checked_end_of_current_block_from_file(String data_file, String_errors_file, Integer nb_errors)

public void checked_end_of_current_block_from_file(String data_file, String_errors_file)

Parameters

data_file : data file name errors_file : errors file name nb_errors : maximum number of errors before the end of the check (1 is default value)

Return None

Java

Exceptions

X_UNSELECTED_DDR : no DDR selected X_UNKNOWN_DATA_FILE : error opening data file X_EMPTY_DATA_FILE : the data file is empty X_CONVERSION_ERROR : conversion error X_UNKNOWN_DATA : the data are not valid for the current DDR X_FIRST_RECORD_UNLOADED : the beginning of the block has not been loaded yet X_ERROR_FILE_CREATION_ERROR : error during the creation of the error file X_INCORRECT_DISCRIMINANT : control stopped due to an incorrect discriminant X_MAX_NB_ERRORS_REACHED : max error limit reached X_UNCOMPLETE_DATA_FILE : the data file contains not enougth data to identify a valid block

Page 80: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 69

DEBAT – Development of EAST Based Access Tools

Page 81: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 70

DEBAT – Development of EAST Based Access Tools

check_end_of_current_block_from_memory check if the end of the current block (read from memory) is valid

function check_end_of_current_block_from_memory ( Address : IN SYSTEM.ADDRESS; Errors_File : IN STRING; Nb_Errors : IN NATURAL := 1) return LENGTH Parameters Return

ADA

Exceptions See description in document [RD15]

int check_end_of_current_block_from_memory_i(char *Address, LENGTH *Offset, char *Error_File, int Nb_Max_Errors) int check_end_of_current_block_from_memory_i_mt(char *Address, LENGTH *Offset, char *Error_File, int Nb_Max_Errors, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION check_end_of_current_block_from_memory_i( Address, Offset, Error_File, Nb_Max_Errors) BYTE Address(*) INTEGER*4 Offset CHARACTER*(*) Error_File INTEGER*4 Nb_Max_Errors Parameters Return

Fortran

Exceptions See description in document [RD17]

public Length check_next_data_block_from_memory( Octet_String Value, String errors_file, Integer nb_errors)

public Length check_next_data_block_from_memory(Octet_String Value, String errors_file)

Parameters

Value: derefenrenced value of the corresponding access type of the ADA Api errors_file : errors file name nb_errors : maximum number of errors before the end of the check (1 is default value)

Java

Return number of bits checked

Page 82: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 71

DEBAT – Development of EAST Based Access Tools

Exceptions

X_UNSELECTED_DDR : no DDR selected X_CONVERSION_ERROR : conversion error X_UNKNOWN_DATA : the data are not valid for the current DDR X_FIRST_RECORD_UNLOADED : the beginning of the block is not loaded yet X_MEMORY_ACCESS_ERROR : access to a protected memory zone X_ERROR_FILE_CREATION_ERROR : error during the creation of the error file X_INCORRECT_DISCRIMINANT : control stopped due to an incorrect discriminant X_MAX_NB_ERRORS_REACHED : max error limit reached X_UNCOMPLETE_DATA_FILE : the data file contains not enougth data to identify a valid block

Page 83: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 72

DEBAT – Development of EAST Based Access Tools

check_end_of_current_block_from_socket check if the end of the current block (read from socket) is valid

procedure check_end_of_current_block_from_socket (Data_Socket; Errors_File : IN STRING; Nb_Errors : IN NATURAL := 1) Parameters Return

ADA

Exceptions See description in document [RD15]

int check_end_of_current_block_from_socket_i(int Socket, char *Error_File, int Nb_Max_Errors) int check_end_of_current_block_from_socket_i_mt(int Socket, char *Error_File, int Nb_Max_Errors, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

Fortran Not Implemented

public void checkedEndOfCurrentBlockFromSocket(Socket Data_Socket, String_errors_file, Integer nb_errors)

public void checkedEndOfCurrentBlockFromSocket(Socket Data_Socket, String errors_file)

Parameters

Data_Socket : the socket of data errors_file : errors file name nb_errors : maximum number of errors before the end of the check (1 is default value)

Return None

Java

Exceptions

X_UNSELECTED_DDR : no DDR selected X_UNKNOWN_DATA_FILE : error opening data file X_EMPTY_DATA_FILE : the data file is empty X_CONVERSION_ERROR : conversion error X_UNKNOWN_DATA : the data are not valid for the current DDR X_FIRST_RECORD_UNLOADED : the beginning of the block has not been loaded yet X_ERROR_FILE_CREATION_ERROR : error during the creation of the error file X_INCORRECT_DISCRIMINANT : control stopped due to an incorrect discriminant X_MAX_NB_ERRORS_REACHED : max error limit reached X_UNCOMPLETE_DATA_FILE : the data file contains not enougth data to identify a valid block

Page 84: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 73

DEBAT – Development of EAST Based Access Tools

check_end_of_current_block_from_standard_input check if the end of the current block (read from file) is valid

procedure check_end_of_current_block_from_standard_input ( Errors_File : IN STRING; Nb_Errors : IN NATURAL := 1) Parameters Return

ADA

Exceptions See description in document [RD15]

int check_end_of_current_block_from_standard_input_i(char *Error_File, int Nb_Max_Errors) int check_end_of_current_block_from_standard_input_i_mt(char *Error_File, int Nb_Max_Errors, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION check_end_of_current_block_from_standard_input_i( , Error_File, Nb_Max_Errors) CHARACTER*(*) Error_File INTEGER*4 Nb_Max_Errors Parameters Return

Fortran

Exceptions See description in document [RD17]

public void checkEndOfCurrentBlockFromStandardInput(String_errors_file, Integer nb_errors)

public void checkEndOfCurrentBlockFromStandardInput(String errors_file)

Parameters errors_file : errors file name nb_errors : maximum number of errors before the end of the check (1 is default value)

Return None

Java

Exceptions

X_UNSELECTED_DDR : no DDR selected X_UNKNOWN_DATA_FILE : error opening data file X_EMPTY_DATA_FILE : the data file is empty X_CONVERSION_ERROR : conversion error X_UNKNOWN_DATA : the data are not valid for the current DDR X_FIRST_RECORD_UNLOADED : the beginning of the block has not been loaded yet X_ERROR_FILE_CREATION_ERROR : error during the creation of the error file X_INCORRECT_DISCRIMINANT : control stopped due to an incorrect discriminant X_MAX_NB_ERRORS_REACHED : max error limit reached X_UNCOMPLETE_DATA_FILE : the data file contains not enougth data to identify a valid block

Page 85: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 74

DEBAT – Development of EAST Based Access Tools

Check_data_entity Checks data against contraints given by the program

check_data_entity(Access_Path : IN STRING; With_Constraint: IN STRING) return BOOLEAN Parameters Return

ADA

Exceptions See description in document [RD15]

boolean check_data_entity_i(char* Access_Path, char* With_Constraint) boolean check_data_entity _i_mt(char* Access_Path, char* With_Constraint, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION check_data_entity_i(Access_Path, With_Constraint) CHARACTER*(*) Access_Path CHARACTER*(*) With_Constraints Parameters Return

Fortran

Exceptions See description in document [RD17]

public Boolean checkDataEntity(String Access_Path, String With_Constraint)

Parameters Access_Path : path to east variable With_Constraints : the constraint

Return The result of the check Java

Exceptions None

Page 86: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 75

DEBAT – Development of EAST Based Access Tools

get_errors_number returns the total number of detected errors since the beginning of the control

function get_errors_number return NATURAL Parameters Return

ADA

Exceptions See description in document [RD15]

int get_errors_number_i(int * Nb_Errors) int get_errors_number_i_mt(int * Nb_Errors, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION get_errors_number_i(Nb_Errors) INTEGER*4 Nb_Errors Parameters Return

Fortran

Exceptions See description in document [RD17]

public Integer getErrorsNumber() Parameters None Return the total number of detected errors since the beginning of the control

Java

Exceptions None

Page 87: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 76

DEBAT – Development of EAST Based Access Tools

get_errors_number_in_current_block returns the total number of detected errors since the beginning of the current block

function get_errors_number_in_current_block return NATURAL Parameters Return

ADA

Exceptions See description in document [RD15]

int get_errors_number_in_current_block_i(int * Nb_Errors) int get_errors_number_in_current_block_i_mt(int * Nb_Errors, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION get_errors_number_in_current_block_i(Nb_Errors) INTEGER*4 Nb_Errors Parameters Return

Fortran

Exceptions See description in document [RD17]

public Integer getErrorsNumberInCurrentBlock() Parameters None Return the total number of detected errors since the beginning of the current block

Java

Exceptions None

Page 88: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 77

DEBAT – Development of EAST Based Access Tools

4.1.5 Sequence services

start_sequence_recording start the recording of a sequence

procedure start_sequence_recording Parameters Return

ADA

Exceptions See description in document [RD15]

int start_sequence_recording_i() int start_sequence_recording_i_mt(T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION start_sequence_recording_i () Parameters Return

Fortran

Exceptions See description in document [RD17]

public void startSequenceRecording() Parameters None Return None

Java

Exceptions None

Page 89: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 78

DEBAT – Development of EAST Based Access Tools

stop_sequence_recording stop the recording of a sequence

procedure stop_sequence_recording Parameters Return

ADA

Exceptions See description in document [RD15]

int stop_sequence_recording_i() int stop_sequence_recording_i_mt(T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION stop_sequence_recording_i () Parameters Return

Fortran

Exceptions See description in document [RD17]

public void stopSequenceRecording() Parameters None Return None

Java

Exceptions None

Page 90: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 79

DEBAT – Development of EAST Based Access Tools

remove_sequence remove a recorded sequence from memory

procedure remove_sequence Parameters Return

ADA

Exceptions See description in document [RD15]

int remove_sequence_i() int remove_sequence_i_mt(T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION remove_sequence_i () Parameters Return

Fortran

Exceptions See description in document [RD17]

public void removeSequence() Parameters None Return None

Java

Exceptions None

Page 91: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 80

DEBAT – Development of EAST Based Access Tools

Dump Dumps a data given an east description file and an output filename

PROCEDURE Dump(data : IN String ; ddr : IN STRING ; result : IN STRING) Parameters Return

ADA

Exceptions See description in document [RD15]

Void dump_i(char *data, char *ddr, char *result) Void dump_i_mt(char *data, char *ddr, char *result ,T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

Fortran Not Implemented

Public void dump(String data, String ddr, String result)

Parameters Data : the data to be dumped Ddr : the east descritption file Result: the name of the dump file

Return None

Java

Exceptions None

Page 92: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 81

DEBAT – Development of EAST Based Access Tools

Dump_to_xml Dumps a data given an east description file and an output filename

PROCEDURE Dump_To_Xml(data : IN String ; ddr : IN STRING ; result : IN STRING)Parameters Return

ADA

Exceptions See description in document [RD15]

Void dump_to_xml_i(char *data, char *ddr, char *result) Void dump_to_xml_i_mt(char *data, char *ddr, char *result ,T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

Fortran Not Implemented

Public void dumpToXml(String data, String ddr, String result)

Parameters Data : the data to be dumped Ddr : the east descritption file Result: the name of the dump file

Return None

Java

Exceptions None

Page 93: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 82

DEBAT – Development of EAST Based Access Tools

2.12. Generator API

4.1.6 General services

Start Initialises the generator according to the configuration files.

Procedure start (Lang : IN LANGUAGE) Parameters Return

ADA

Exceptions See description in document [RD15]

int start_g (LANGUAGE lang) int start_g_mt (LANGUAGE lang, T_PIPE_INTERFACE **p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION start_g (lang) BYTE lang

Parameters Return

Fortran

Exceptions See description in document [RD17]

public void start (String lang) Parameters lang: language used for the logbook messages. Return None

Java

Exceptions X_INIT_ERROR : Initialisation has failed.

Page 94: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 83

DEBAT – Development of EAST Based Access Tools

Stop Deactivates the generator – destroys all temporary files and closes any open files.

Procedure stop Parameters Return

ADA

Exceptions See description in document [RD15]

int stop_g () int stop_g_mt (T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION stop_g() Parameters Return

Fortran

Exceptions See description in document [RD17]

public void stop () Parameters None Return None

Java

Exceptions None

Page 95: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 84

DEBAT – Development of EAST Based Access Tools

select_DDR

Loads an EAST description. This description then becomes the reference and controls the data generation. Procedure select_DDR (DDR_File : IN STRING) Parameters Return

ADA

Exceptions See description in document [RD15]

int select_DDR_g (char *DDR_File) int select_DDR_g_mt (char *DDR_File, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION select_DDR_g (DDR_File) CHARACTER*(*) DDR_File

Parameters Return

Fortran

Exceptions See description in document [RD17]

public void selectDDR (String DDR_File) Parameters DDR_File: Name of the EAST description file. Return None Java

Exceptions X_UNKNOWN_DDR : DDR not found. X_INCORRECT_DDR : the DDR is corrupted. X_TOOL_NOT_INITIALIZED : the generator is not started.

Note: The first time the description is selected, it is analyzed and a back-up file is created (an internal file, in the working directory, with a FIN extension). The next time, the library rereads the internal file rather than analyzing the EAST description again. If, however, the EAST description is more recent than its back-up, it is analyzed again and the internal file is updated.

Page 96: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 85

DEBAT – Development of EAST Based Access Tools

release_DDR

Closes an EAST description and frees memory resources and eventually disk resources. This service should be called when the description is no longer referred in the remainder of the application. Procedure release_DDR (DDR_File : IN STRING; Memory_Only: IN BOOLEAN) Parameters Return

ADA

Exceptions See description in document [RD15]

int release_DDR_g (char *DDR_File, BOOLEAN Memory_Only) int release_DDR_g_mt (char *DDR_File, BOOLEAN Memory_Only,

T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION release_DDR_g (DDR_File, Memory_Only) CHARACTER*(*) DDR_File BYTE Memory_Only

Parameters Return

Fortran

Exceptions See description in document [RD17]

public void releaseDDR (String DDR_File, boolean Memory_Only)

Parameters DDR_File: Name of the EAST description file Memory_Only: TRUE if only memory resources are freed and FALSE if both memory resources and disk resources are freed.

Return None

Java

Exceptions None

Page 97: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 86

DEBAT – Development of EAST Based Access Tools

close_file Closes a data product file.

Procedure close_file (Data_File : IN STRING) Parameters Return

ADA

Exceptions See description in document [RD15]

int close_file_g(char *Data_File) int close_file_g_mt(char *Data_File, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION close_file_g (Data_File) CHARACTER*(*) Data_File

Parameters Return

Fortran

Exceptions See description in document [RD17]

public void closeFile (String Data_File) Parameters DDR_File: Name of the data product file Return None

Java

Exceptions None

Page 98: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 87

DEBAT – Development of EAST Based Access Tools

focus_on

Reduces the scope of a description: the original EAST description is reduced to the designated EAST path. Procedure focus_on (Path : IN STRING := “”) Parameters Return

ADA

Exceptions See description in document [RD15]

int focus_on_g (char *Access_Path) int focus_on_g_mt (char *Access_Path, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION focus_on_g (Access_Path) CHARACTER*(*) Access_Path

Parameters Return

Fortran

Exceptions See description in document [RD17]

public void focusOn (String Path) Parameters Path: EAST name of data focussed. Return None Java

Exceptions X_UNSELECTED_DDR : no DDR selected yet. X_INCORRECT_ACCESS_PATH : the access path does not exist in DDR.

Page 99: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 88

DEBAT – Development of EAST Based Access Tools

4.1.7 Data setting services

set_data_entity Enables to give a value to an element of the model.

set_data_entity (Access_Path : IN STANDARD.STRING; Value : IN STANDARD.STRING; Keep_In_Memory : IN STANDARD.BOOLEAN := FALSE; Verify : IN STANDARD.BOOLEAN := TRUE; Computed : IN BOOLEAN:=FALSE; All_Indexes : IN BOOLEAN := FALSE; Occurrence : IN INTEGER := 0) set_data_entity (Access_Path : IN STANDARD.STRING; Keep_In_Memory : IN STANDARD.BOOLEAN := FALSE; Keep_Dynamic_Values : IN STANDARD.BOOLEAN := FALSE; With_Def_Domain : IN STANDARD STRING := “”; All_Indexes : IN BOOLEAN := FALSE; Occurrence : IN INTEGER := 0) set_data_entity (Access_Path : IN STANDARD.STRING; Value : IN OCTET_STRING; Size_In_Bits : OUT LENGTH; Keep_In_Memory : IN STANDARD.BOOLEAN := FALSE; Verify : IN STANDARD.BOOLEAN := TRUE; Occurrence : IN INTEGER := 0; Value_Type : IN KIND_OF_CONVERSION := LOGICAL) set_data_entity (Access_Path : IN STRING; Value_Address : IN SYSTEM.ADDRESS; Size_In_Bits : IN OUT LENGTH; Value_Type : IN KIND_OF_CONVERSION := LOGICAL; Keep_In_Memory : IN BOOLEAN := FALSE; Verify : IN BOOLEAN := TRUE; Occurrence : IN INTEGER := 0) Parameters Return

ADA

Exceptions See description in document [RD15]

Page 100: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 89

DEBAT – Development of EAST Based Access Tools

int set_data_entity_1_g(char* Access_Path, char* Value, BOOLEAN Keep_In_Memory, BOOLEAN Verify, BOOLEAN Computed, BOOLEAN All_Indexes int Occurrence) int set_data_entity_1_g_mt(char* Access_Path, char* Value, BOOLEAN Keep_In_Memory, BOOLEAN Verify, BOOLEAN Computed, BOOLEAN All_Indexes int Occurrence, T_PIPE_INTERFACE* p_id) int set_data_entity_2_g(char * Access_Path, BOOLEAN Keep_In_Memory, BOOLEAN Keep_Dynamic_Values, Char *With_Def_Domains, BOOLEAN All_Indexes Int Occurrence) int set_data_entity_2_g_mt(char * Access_Path, BOOLEAN Keep_In_Memory, BOOLEAN Keep_Dynamic_Values, Char *With_Def_Domains, BOOLEAN All_Indexes Int Occurrence, T_PIPE_INTERFACE* p_id) int set_data_entity_3_g(char * Access_Path, OCTET* Data, LENGTH* Offset_In_Bits, KIND_OF_CONVERSION Value_Type, BOOLEAN Keep_In_Memory, BOOLEAN Verify, int Occurrence) int set_data_entity_3_g_mt(char * Access_Path, OCTET* Data, LENGTH* Offset_In_Bits, KIND_OF_CONVERSION Value_Type, BOOLEAN Keep_In_Memory, BOOLEAN Verify, int Occurrence, T_PIPE_INTERFACE* p_id) Parameters

C/C++

Return See description in document [RD16]

Page 101: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 90

DEBAT – Development of EAST Based Access Tools

Exceptions INTEGER FUNCTION set_data_entity_1_g(Access_Path, Value, Keep_In_Memory, Verify, Computed, All_Indexes, Occurrence) CHARACTER*(*) Access_Path,Value BYTE Keep_In_Memory,Verify, Computed, All_Indexes INTEGER*4 Occurrence INTEGER FUNCTION set_data_entity_2_g(Access_Path, Keep_In_Memory, Keep_Dynamic_Values, With_Def_Domain, All_Indexes, Occurrence) CHARACTER*(*) Access_Path,With_Def_Domains BYTE Keep_In_Memory,Keep_Dynamic_Values,All_Indexes INTEGER*4 Occurrence INTEGER FUNCTION set_data_entity_3_g(Access_Path, Data, Size_In_Bits, Value_Type, Keep_In_Memory, Verify, Occurrence) CHARACTER*(*) Access_Path, BYTE Data(*) INTEGER*4 Size_In_Bits, BYTE Value_Type, Keep_In_Memory,Verify INTEGER*4 Occurrence Parameters Return

Fortran

Exceptions See description in document [RD17]

Page 102: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 91

DEBAT – Development of EAST Based Access Tools

void setDataEntity (String Access_Path, String Value, boolean Keep_In_Memory, boolean Verify, boolean Computed, boolean All_Indexes, int Occurrence) void setDataEntity (String Access_Path, boolean Keep_In_Memory, boolean Keep_Dynamic_Values, int Occurrence) void setDataEntity (String Access_Path, Object Data, Long Offset_In_Bits, Kind_of_Conversion Value_Type, boolean Keep_In_Memory, boolean Verify , int Occurrence)

Parameters

access_path : access path to the variable to set data : starting address of the data keep_dynamic_values : indicates if we want to keep the previous discriminated values keep_in_memory : optimizes following access to the variable (optionnal parameter default value ‘false’) occurrence : rank of the element in a list (0 if no list)(optionnal parameter default value 0) offset_in_bits : offset of the value used value : value to apply in ASCII representation value_type : indicates the type of the given value verify : perform definition domain checking (optionnal parameter default ‘false’) computed : indicates if the result is a computed value or not (optionnal default ‘false’) with_all_indexes : specifies if all the elements of the array must be set (optionnal default ‘false’) with_def_domain : specifies the pattern to be followed by the data (optionnal default null string)

Return None

Java

Exceptions

X_UNSELECTED_DDR : no DDR selected yet. X_INCORRECT_ACCESS_PATH : the access path does not exist in DDR. X_INCORRECT_DATA : the value data is incorrect. X_UNKNOWN_DATA : the data depends on a discriminant not set yet.

Page 103: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 92

DEBAT – Development of EAST Based Access Tools

force_data_entity Enables to force the value of an element of the model.

procedure force_data_entity (Access_Path : IN STRING; Value_Address : IN SYSTEM.ADDRESS; Size_In_Bits : IN OUT LENGTH; Keep_In_Memory : IN BOOLEAN := FALSE; Occurrence : IN INTEGER := 0) Parameters Return

ADA

Exceptions See description in document [RD15]

int force_data_entity_g (char *Access_Path, OCTET *Data, LENGTH *Offset_In_Bits, BOOLEAN Keep_In_Memory, Int Occurence) int force_data_entity_g_mt (char *Access_Path, OCTET *Data, LENGTH *Offset_In_Bits, BOOLEAN Keep_In_Memory, Int Occurrence, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION force_data_entity_g (Access_Path, Data, Offset_In_Bits, Keep_In_Memory, Occurence) CHARACTER*(*) Access_Path BYTE Data (*) INTEGER*4 Offset_In_Bits, Occurrence BYTE Keep_In_Memory Parameters Return

Fortran

Exceptions See description in document [RD17]

Page 104: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 93

DEBAT – Development of EAST Based Access Tools

public void forceDataEntity(String Acces_Path, byte[] value, Long Size_In_Bits, boolean Keep_In_Memory, long Occurrence)

Parameters

Access_path : access path to the variable to set buffer : value to force Size_In_Bits : Number of available bits ( in parameter ). Number of required bits ( out parameter ). Keep_In_Memory : retain result of analysis in memory. Occurrence : rank in the list ( if the data entity is a list ) (optionnal default 0)

Return None

Java

Exceptions

X_UNSELECTED_DDR : no DDR selected yet. X_INCORRECT_ACCESS_PATH : the access path does not exist in DDR. X_INCORRECT_DATA : the value data is incorrect. X_DATA_GENERATED : Attempt to set different values for a discriminant in a repetition.

Page 105: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 94

DEBAT – Development of EAST Based Access Tools

Set_number_occurrences_of_data_entity This service enables to give the number of elements of a list.

Procedure set_number_occurrences_of_data_entity (Access_Path : IN STRING; Keep_In_Memory : IN BOOLEAN := FALSE; Occurrence : IN INTEGER) Parameters Return

ADA

Exceptions See description in document [RD15]

int set_number_occurrences_of_data_entity_g (char *Access_Path, BOOLEAN Keep_In_Memory, int Occurence) int set_number_occurrences_of_data_entity_g_mt (char *Access_Path, BOOLEAN Keep_In_Memory, int Occurence, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION set_nb_occ_of_data_entity_g (Access_Path, Keep_In_Memory, Occurence) CHARACTER*(*) Access_Path BYTE Keep_In_Memory INTEGER Occurrence Parameters Return

Fortran

Exceptions See description in document [RD17]

public void setNumberOccurrencesOfDataEntity (String Access_Path, boolean Keep_In_Memory, int Occurrence )

Parameters Access_Path : access path of data entity Keep_In_Memory : retain in memory the result of analysis Occurrence : rank in the list ( if the data entity is a list ) (optionnal default 0)

Return None

Java

Exceptions

Page 106: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 95

DEBAT – Development of EAST Based Access Tools

Reset

This procedure enables to clear the buffer used to set the data. This is done in order to make a new generation, leaving the current one. Procedure reset () Parameters Return

ADA

Exceptions See description in document [RD15]

int reset_g () int reset_g_mt (T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION reset_g() Parameters Return

Fortran

Exceptions See description in document [RD17]

public void reset () Parameters None Return None

Java

Exceptions X_UNSELECTED_DDR : no DDR selected yet.

Page 107: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 96

DEBAT – Development of EAST Based Access Tools

4.1.8 Data writing services

Write Enables to write a data block in a file.

procedure write (Data_File : IN STRING; Keep : IN BOOLEAN := FALSE) procedure write (Data_Socket : IN Socket_Type; Keep : IN BOOLEAN := FALSE) procedure write (Data : IN OUT OCTET_STRING_ACCESS; Last : OUT LENGTH; Keep : IN BOOLEAN := FALSE) procedure write (Data : OUT OCTET_STRING; Last : OUT LENGTH; Keep : IN BOOLEAN := FALSE) procedure write (Access_Path : IN STRING; Value : IN OCTET_STRING; Offset_In_Bits : OUT LENGTH; Data_File : IN STRING; Verify : IN BOOLEAN := TRUE; Occurrence : IN INTEGER := 0) procedure write (Data_Socket : IN Socket_Type; Access_Path : IN STRING; Value : IN OCTET_STRING; Offset_In_Bits : OUT LENGTH; Data_File : IN STRING; Verify : IN BOOLEAN := TRUE; Occurrence : IN INTEGER := 0) Parameters Return

ADA

Exceptions See description in document [RD15]

Page 108: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 97

DEBAT – Development of EAST Based Access Tools

int write_1_g (char *Data_File, BOOLEAN Keep) int write_1_g_mt (char *Data_File, BOOLEAN Keep, T_PIPE_INTERFACE *p_id) int write_2_g (OCTET *Data, int *Last, BOOLEAN Keep) int write_2_g_mt (OCTET *Data, int *Last, BOOLEAN Keep, T_PIPE_INTERFACE *p_id) int write_3_g (OCTET **Data, int *Last, BOOLEAN Keep) int write_3_g_mt (OCTET **Data, int *Last, BOOLEAN Keep, T_PIPE_INTERFACE *p_id) int write_4_g (char *Access_Path, OCTET *Data, LENGTH *Offset_In_Bits, char *Data_File, BOOLEAN Verify, Int Occurrence) int write_4_g_mt (char *Access_Path, OCTET *Data, LENGTH *Offset_In_Bits, Char *Data_File, BOOLEAN Verify, Int Occurrence, T_PIPE_INTERFACE *p_id) int write_5_g (Socket Data_Socket, BOOLEAN Keep) int write_5_g_mt (Socket Data_Socket, BOOLEAN Keep, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

Page 109: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 98

DEBAT – Development of EAST Based Access Tools

INTEGER FUNCTION write_1_g (Data_File, Keep) CHARACTER*(*) Data_File BYTE Keep INTEGER FUNCTION write_2_g (Data, Last, Keep) BYTE Data (*) INTEGER*4 Last BYTE Keep INTEGER FUNCTION write_3_g (Data, Last, Keep) BYTE Data_Zone (1) POINTER (Data,Data_Zone) INTEGER*4 Last BYTE Keep INTEGER FUNCTION write_4_g (Access_Path, Data, Offset_In_Bits, Data_File, Verify, Occurrence) CHARACTER*(*) Access_Path BYTE Data (*) INTEGER*4 Offset_In_Bits, Occurrence CHARACTER*(*) Data_File BYTE Verify Parameters Return

Fortran

Exceptions See description in document [RD17]

Page 110: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 99

DEBAT – Development of EAST Based Access Tools

public void write (String Data_File, boolean Keep = false) public void write (Socket Data_Socket, boolean Keep = false) public void write (OCTET_STRING_ACCESS Data, Long Last, boolean Keep=false) public void write (OUT OCTET_STRING Data, Long Last, boolean Keep= FALSE) public void write (String Access_Path, byte[] Value, Long Offset_In_Bits, String Data_File, boolean Verify=TRUE, int Occurrence= 0) public void write (Socket Data_Socket, String Access_Path, byte[] Value, Long Offset_In_Bits, String Data_File, boolean Verify=TRUE, int Occurrence= 0)

Parameters

Data_File : Data file name Data_Socket : the socket of data Keep : keep previous data values in memory (optionnal default false) Data : Data to write Last : Size in bits of written area. Value : value to write. Offset_In_Bits : Size in bits to extract the value Occurence: rank of the element in a list (0 if no list)(optionnal parameter default value 0) Verify : Verify the value according to its definition (optionnal default true)

Return None

Java

Exceptions

X_UNSELECTED_DDR : no DDR selected yet. X_INCORRECT_ACCESS_PATH : the access path does not exist in DDR. X_INCORRECT_DATA : the value data is incorrect. X_UNKNOWN_DATA : the data depends on a discriminant not set yet. X_CREATION_ERROR : File creation is impossible.

Page 111: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 100

DEBAT – Development of EAST Based Access Tools

Flush

This procedure ends a data file before it is closed. For binary files ending with a not complete byte, it adds the needed bits. Procedure flush (Data_File : IN STRING) Procedure flush (Data_Socket : IN Socket_Type) Parameters Return

ADA

Exceptions See description in document [RD15]

int flush_g (char *Data_File) int flush_g_mt (char *Data_File, T_PIPE_INTERFACE *p_id) int flush_2_g (Socket Data_Socket) int flush_2_g_mt (Socket Data_Socket, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION flush_g (Data_File) CHARACTER*(*) Data_File Parameters Return

Fortran

Exceptions See description in document [RD17]

public void flush (String Data_File) public void flush (Socket Data_Socket)

Parameters Data_File : name of the file to flush Data_Socket : the socket of data

Return None Java

Exceptions X_CREATION_ERROR : File creation is impossible. X_UNCOMPLETE_DATA_BLOCK : Every data of the block have not been set.

Page 112: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 101

DEBAT – Development of EAST Based Access Tools

4.1.9 Data reading services

read This service enables users to read a data block in order to generate another one.

Procedure read (Data_File : IN STRING) Procedure read (Data_Socket : IN Socket_Type) Procedure read (Data : IN OCTET_STRING; Offset_In_Bits : OUT LENGTH) Parameters Return

ADA

Exceptions See description in document [RD15]

int read_1_g (char *Data_File) int read_1_g_mt (char *Data_File File, T_PIPE_INTERFACE *p_id) int read_2_g (OCTET *Data, LENGTH *Offset_In_Bits) int read_2_g_mt (OCTET *Data, LENGTH *Offset_In_Bits, T_PIPE_INTERFACE *p_id) int read_3_g (Socket Data_Socket) int read_3_g_mt (Socket Data_Socket, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION read_1_g (Data_File) CHARACTER*(*) Data_File INTEGER FUNCTION read_2_g (Data, Offset_In_Bits) CHARACTER*(*) Data INTEGER*4 Offset_In_Bits Parameters Return

Fortran

Exceptions See description in document [RD17]

public void read (String Data_File) public void read (Octet_String Data, Integer Offset_in_bits) public void read (Socket Data_Socket)

Java

Parameters

Data_File: Name of the data product file Data_Socket : the socket of data Data : memory structure containing data Offset_In_Bits : Size in bits of data really read.

Page 113: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 102

DEBAT – Development of EAST Based Access Tools

Return None

Exceptions

X_UNKNOWN_DATA : The datas can not be mapped with the current DDR. X_MEMORY_ACCESS_ERROR : Attempt to access a protected area. X_UNSELECTED_DDR : no DDR selected yet. X_INCORRECT_DATA : the data depends on a discriminant not set yet.

Page 114: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 103

DEBAT – Development of EAST Based Access Tools

Get_remaining_list This service indicates what are the paths without values.

Procedure get_remaining_list (File_Name : IN STRING; Number : OUT NATURAL; Complete : OUT BOOLEAN) Parameters Return

ADA

Exceptions See description in document [RD15]

int get_remaining_list_g (char *File_Name, int *Number, BOOLEAN* Complete) int get_remaining_list_g_mt (char *File_Name, int *Number, BOOLEAN* Complete, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION get_remaining_list_g (File_Name, Number, Complete) CHARACTER*(*) File_Name INTEGER*4 Number BYTE Complete Parameters Return

Fortran

Exceptions See description in document [RD17]

public void getRemainingList (String File_Name, Integer Number, Boolean Complete )

Parameters File_Name : Data file name Number : Number of written paths. Complete : the block’s writing is complete or not.

Return None

Java

Exceptions X_CREATION_ERROR : Paths file can not be opened.

Page 115: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 104

DEBAT – Development of EAST Based Access Tools

4.1.10 Sequence services

Start_sequence_recording

This procedure enables the user to start recording a sequence of instructions. This is useful when we have to access several time in the same order to the same elements of a model. The instructions which can be “recorded” are set_data_entity and force_data_entity. This service is used mainly to read some big-sized arrays. Procedure start_sequence_recording Parameters Return

ADA

Exceptions See description in document [RD15]

int start_sequence_recording_g() int start_sequence_recording_g_mt(T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION start_sequence_recording_g() Parameters Return

Fortran

Exceptions See description in document [RD17]

public void startSequenceRecording() Parameters None Return None

Java

Exceptions None

Page 116: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 105

DEBAT – Development of EAST Based Access Tools

Stop_sequence_recording

This procedure ends the recording of the sequence. After this, the recorded instructions can be replayed with an important saving of time. Procedure stop_sequence_recording Parameters Return

ADA

Exceptions See description in document [RD15]

int stop_sequence_recording_g() int stop_sequence_recording_g_mt(T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION stop_sequence_recording_g() Parameters Return

Fortran

Exceptions See description in document [RD17]

public void stopSequenceRecording() Parameters None Return None

Java

Exceptions None

Page 117: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 106

DEBAT – Development of EAST Based Access Tools

Remove_sequence This procedure remove the recorded instructions in order to read another part of the data.

Procedure remove_sequence Parameters Return

ADA

Exceptions See description in document [RD15]

int remove_sequence_g() int remove_sequence_g_mt(T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION remove_sequence_g () Parameters Return

Fortran

Exceptions See description in document [RD17]

public void removeSequence() Parameters None Return None

Java

Exceptions None

Page 118: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 107

DEBAT – Development of EAST Based Access Tools

Disable_sequence This procedure suspends the use of a sequence of recorded instructions.

Procedure disable_sequence Parameters Return

ADA

Exceptions See description in document [RD15]

int disable_sequence_g() int disable_sequence_g_mt(T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION disable_sequence_g () Parameters Return

Fortran

Exceptions See description in document [RD17]

public void disableSequence() Parameters None Return None

Java

Exceptions None

Page 119: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 108

DEBAT – Development of EAST Based Access Tools

Enable_sequence This procedure restores the use of a sequence of recorded instructions.

Procedure enable_sequence Parameters Return

ADA

Exceptions See description in document [RD15]

int enable_sequence_g() int enable_sequence_g_mt(T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION enable_sequence_g () Parameters Return

Fortran

Exceptions See description in document [RD17]

public void enableSequence() Parameters None Return None

Java

Exceptions None

Page 120: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 109

DEBAT – Development of EAST Based Access Tools

4.1.11 Utilities

Verify This procedure enables the user to check a value without setting it to the element.

Procedure verify (Access_Path : IN STRING; Value : IN STRING; Control_Result : OUT BOOLEAN) Parameters Return

ADA

Exceptions See description in document [RD15]

int verify_g (char *Access_Path, char *Value, BOOLEAN *Control_Result) int verify_g_mt (char *Access_Path, char *Value, BOOLEAN *Control_Result, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION verify_g (Access_Path, Value, Control_Result) CHARACTER*(*) Access_Path, Value BYTE Control_Result Parameters Return

Fortran

Exceptions See description in document [RD17]

public void verify (String Access_Path, String Value, Boolean Control_Result)

Parameters Access_Path : access path to data Value : value in ASCII Control_Result : result of the control.

Return None Java

Exceptions

X_UNSELECTED_DDR : no DDR selected yet. X_INCORRECT_ACCESS_PATH : the access path does not exist in DDR. X_INCORRECT_DATA : the value data is incorrect. X_UNKNOWN_DATA : the data depends on a discriminant not set yet.

Page 121: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 110

DEBAT – Development of EAST Based Access Tools

Release_access_path

This procedure frees some place in memory kept when the parameter Keep_In_Memory is TRUE in the procedures force_data_entity or set_data_entity. It can be used when we do not need to work on the Access_Path anymore. Procedure release_access (Access_Path : IN STRING) Parameters Return

ADA

Exceptions See description in document [RD15]

int release_access_path_g (char *Access_Path) int release_access_path_g_mt (char *Access_Path, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION release_access_path_g (Access_Path) CHARACTER*(*) Access_Path Parameters Return

Fortran

Exceptions See description in document [RD17]

public void releaseAccessPath (String Access_Path) Parameters Access_Path : name of the EAST path Return None

Java

Exceptions None

Page 122: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 111

DEBAT – Development of EAST Based Access Tools

Free_memory This procedure frees the memory allocated during a call to a write.

Procedure free_octet_string (Data_Entity : IN OUT OCTET_STRING_ACCESS) Parameters Return

ADA

Exceptions See description in document [RD15]

int free_memory_g (OCTET *DATA) int free_memory _g_mt (OCTET *DATA, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

None Parameters Return

Fortran

Exceptions

public void freeOctetString (OCTET_STRING Data_Entity) Parameters Data_Entity : the allocated area to free. Return

Java

Exceptions

Page 123: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 112

DEBAT – Development of EAST Based Access Tools

Get_paths

This procedure writes, in the file File_Name, the EAST path of each terminal elements of the block. It can write the ASCII representation of each element (it writes NOT_SET if there is no value. Procedure get_paths (File_Name : IN STRING; With_ASCII_Values : IN BOOLEAN := FALSE) Parameters Return

ADA

Exceptions See description in document [RD15]

int get_paths_g (char *Data_File, BOOLEAN With_Ascii_Values) int get_paths_g_mt (char *Data_File, BOOLEAN With_Ascii_Values, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION get_paths_g (Data_File, With_Ascii_Values) CHARACTER*(*) Data_File BYTE With_Ascii_Values Parameters Return

Fortran

Exceptions See description in document [RD17]

public void getPaths (String Data_File, boolean With_Ascii_Values)

Parameters Data_File : name of the data file to write the results in With_ASCII_Values : value printing option

Return None Java

Exceptions X_CREATION_ERROR : the paths file can not be opened. X_INCORRECT_DATA : Because of discriminant indecision, discriminated data structures can not be inferred.

Page 124: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 113

DEBAT – Development of EAST Based Access Tools

Is_complete This function indicates if a data block is ready to be written (all the data has been set).

function is_complete return BOOLEAN Parameters Return

ADA

Exceptions See description in document [RD15]

int is_complete_g (BOOLEAN *Answer) int is_complete _g_mt (BOOLEAN *Answer, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION is_complete_g (Answer) BYTE Answer Parameters Return

Fortran

Exceptions See description in document [RD17]

public bool isComplete() Parameters None Return None

Java

Exceptions None

Page 125: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 114

DEBAT – Development of EAST Based Access Tools

4.1.12 New services

Generate_new_block

Allows to generate a new data block taking into account user directives set up in an ascii file procedure generate_new_block (From_Directives : IN STRING) Parameters From_Directives : Name of directives file Return None

ADA

Exceptions int generate_new_block_g (char* From_Directives) int generate_new_block_g_mt (char* From_Directives, T_PIPE_INTERFACE *p_id) Parameters See Ada procedure description Return Error code if Ada exception is raised.

C/C++

Exceptions None INTEGER FUNCTION generate_new_block_g (From_Directives) CHARACTER*(*) From_Directives Parameters See Ada procedure description Return Error code if Ada exception is raised.

Fortran

Exceptions None public void generateNewBlock (String From_Directives) Parameters See Ada procedure description Return None

Java

Exceptions

Page 126: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 115

DEBAT – Development of EAST Based Access Tools

Write_standard_output Enables to write a data block through standard output.

procedure write_standard_output (Keep : IN BOOLEAN := FALSE) procedure write_standard_output (Access_Path : IN STRING;

Value : IN OCTET_STRING; Offset_In_Bits : OUT LENGTH; Verify : IN BOOLEAN := TRUE;

Occurrence : IN INTEGER := 0)

Parameters

Keep : keep previous data values in memory Value : the value to write Access_Path : access path of the useful data Offset_In_Bits : Offset in bits of the data. Verify : enables domain definition verification Occurrence : Rank in the list ( if exists )

Return None

ADA

Exceptions int write_stantard_output_g (BOOLEAN Keep) int write_standard_output_g_mt (BOOLEAN Keep,T_PIPE_INTERFACE *p_id) int write_standard_output_2_g (char* Access_Path,

String Access_Path, OCTET* Value, LENGTH Offset_In_Bits, BOOLEAN Verify, int Occurrence)

int write_standard_output_2_g_mt (char* Access_Path,

String Access_Path, OCTET* Value, LENGTH Offset_In_Bits, BOOLEAN Verify, int Occurrence, T_PIPE_INTERFACE *p_id)

Parameters See Ada procedure description. Return An error code if Ada exception is raised.

C/C++

Exceptions

Page 127: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 116

DEBAT – Development of EAST Based Access Tools

INTEGER FUNCTION write_standard_output _g(Keep) BYTE Keep INTEGER FUNCTION write_standard_output_g (Access_Path, Data, Offset_In_Bits,

Data_File, Verify,Occurrence) CHARACTER*(*) Access_Path BYTE Data (*) INTEGER*4 Offset_In_Bits, Occurrence CHARACTER*(*) Data_File BYTE Verify Parameters See Ada procedure description Return An error code if Ada exception is raised.

Fortran

Exceptions public void writeStandardOutput (boolean Keep = false) public void writeStandardOutput( String Access_Path, byte[] Value, Long Offset_In_Bits, String Data_File, boolean Verify=TRUE, int Occurrence= 0) Parameters See Ada procedure description. Return None

Java

Exceptions

Page 128: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 117

DEBAT – Development of EAST Based Access Tools

read_standard_input Read data on the standard input

procedure read_standard_input () Parameters None Return None

ADA

Exceptions int reas_standard_input_g () int reas_standard_input_g_mt (T_PIPE_INTERFACE *p_id) Parameters See Ada procedure description Return Error code if Ada exception is raised.

C/C++

Exceptions None PROCEDURE read_standard_input_g () Parameters See Ada procedure description Return Error code if Ada exception is raised.

Fortran

Exceptions None public void readStandardInput () Parameters See Ada procedure description Return None

Java

Exceptions

Page 129: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 118

DEBAT – Development of EAST Based Access Tools

Flush_standard_output ends writing before closing the standard output.

procedure flush_standard_output () Parameters None Return None

ADA

Exceptions int flush_standard_output_g () int flush_standard_output_g_mt (T_PIPE_INTERFACE *p_id) Parameters See Ada procedure description Return Error code if Ada exception is raised.

C/C++

Exceptions None PROCEDURE flush_standard_output_g () Parameters See Ada procedure description Return Error code if Ada exception is raised.

Fortran

Exceptions None public void flushStandardOutput () Parameters See Ada procedure description Return None

Java

Exceptions

Page 130: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 119

DEBAT – Development of EAST Based Access Tools

Close_standard_output close the standard output.

procedure close_standard_output () Parameters None Return None

ADA

Exceptions int close_standard_output_g () int close_standard_output_g_mt (T_PIPE_INTERFACE *p_id) Parameters See Ada procedure description Return Error code if Ada exception is raised.

C/C++

Exceptions None PROCEDURE close_standard_output_g () Parameters See Ada procedure description Return Error code if Ada exception is raised.

Fortran

Exceptions None public void closeStandardOutput () Parameters See Ada procedure description Return None

Java

Exceptions

Page 131: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 120

DEBAT – Development of EAST Based Access Tools

Write forces writing by completing with random values in definition domain if necessary.

write (Data_File: IN STRING; Keep: IN BOOLEAN := false; Forced: IN BOOLEAN := false)

write (Allocated_Data : OUT OCTET_STRING;

Last : OUT LENGTH; Keep: IN BOOLEAN := FALSE; Forced: IN BOOLEAN := FALSE)

write (Data : IN OUT OCTET_STRING_ACCESS;

Last : OUT LENGTH; Keep: IN BOOLEAN := FALSE; Forced: IN BOOLEAN := FALSE)

write (Data_Socket : IN SOCKET_TYPE; Keep: IN BOOLEAN := false; Forced: IN BOOLEAN := false)

write_standard_output (Keep: IN BOOLEAN := false;

Forced: IN BOOLEAN := false)

Parameters

Data_File : destination file Data_Socket : destination stream socket Allocated_Data : destination memory area allocated by user Data : destination memory area to allocate Last : size in bits of the data area Keep : saves previous values in memory Forced : forces writing

Return None

ADA

Exceptions

Page 132: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 121

DEBAT – Development of EAST Based Access Tools

int write_1_g(char* Data_File, BOOLEAN Keep, BOOLEAN Forced)

int write_1_g_mt(char* Data_File,

BOOLEAN Keep, BOOLEAN Forced, T_PIPE_INTERFACE* p_id)

int write_2_g(OCTET* Allocated_Data,

int* Last, BOOLEAN Keep, BOOLEAN Forced,)

int write_2_g_mt(OCTET* Allocated_Data, int* Last, BOOLEAN Keep, BOOLEAN Forced, T_PIPE_INTERFACE* p_id)

int write_3_g(OCTET** Data, int* Last, BOOLEAN Keep, BOOLEAN Forced)

int write_3_g_mt(OCTET** Data, int* Last, BOOLEAN Keep, BOOLEAN Forced, T_PIPE_INTERFACE* p_id)

int write_4_g(int Data_Socket,

BOOLEAN Keep, BOOLEAN Forced)

int write_4_g_mt(int Data_Socket,

BOOLEAN Keep, BOOLEAN Forced, T_PIPE_INTERFACE* p_id)

Parameters See Ada procedure description Return Error code if Ada exception is raised.

C/C++

Exceptions None

Page 133: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 122

DEBAT – Development of EAST Based Access Tools

INTEGER FUNCTION write_1_g(Data_File, Keep, Forced) CHARACTER*(*) Data_File BYTE Keep BYTE Forced INTEGER FUNCTION write_2_g( Data, Last, Keep, Forced) BYTE Data(*) INTEGER*4 Last BYTE Keep BYTE Forced INTEGER FUNCTION write_3_g(Data, Last, Keep, Forced) BYTE Data_Zone (1) POINTER (Data,Data_Zone) INTEGER*4 Last BYTE Keep BYTE Forced Parameters See Ada procedure description Return An error code if Ada exception is raised.

Fortran

Exceptions public void write (String Data_File,

boolean Keep = false; boolean Forced = false)

public void write (byte Allocated_Data[],

int Last, boolean Keep = FALSE, boolean Forced = FALSE)

public void write (Data : IN OUT OCTET_STRING_ACCESS,

Last : OUT LENGTH, boolean Keep = false, boolean Forced = false)

public void write (Socket Data_Socket, boolean Keep = false; boolean Forced = false)

Parameters See Ada procedure description Return None

Java

Exceptions

Page 134: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 123

DEBAT – Development of EAST Based Access Tools

4.1.13 Data Product Explorer Services (Common functions for Interpreter and Data Generator)

Select_data_product Select a data product to be explored

procedure select_data_product(from_files : IN STRING) Parameters Return

ADA

Exceptions See description in document [RD15]

void select_data_product_i(char *From_Files) void select_data_product_i_mt(char *From_Files,T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

PROCEDURE select_data_product_i (From_Files) CHARACTER*(*) From_Files Parameters Return

Fortran

Exceptions See description in document [RD17]

public void selectDataProduct(String From_Files) Parameters From_Files : the data product to be explored Return None

Java

Exceptions None

Page 135: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 124

DEBAT – Development of EAST Based Access Tools

Select_data_product_frlom_socket Select a data product to be explored from a socket

procedure select_data_product_from_socket(from_Socket : IN Socket_Type) Parameters Return

ADA

Exceptions See description in document [RD15]

void select_data_product_from_socket_i(Socket From_Socket) void select_data_product_from_socket_i_mt(Socket From_Socket,T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

Fortran Not Implemented

public void selectDataProductFromSocket(Socket From_Socket) Parameters From_Socket : the socket of data Return None

Java

Exceptions None

Page 136: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 125

DEBAT – Development of EAST Based Access Tools

Select_data_product_from_standard_input Select a data product to be explored from the standard input

procedure select_data_product_from_standard_input() Parameters Return

ADA

Exceptions See description in document [RD15]

void select_data_product_from_standard_input_i() void select_data_product_from_standard_input_i_mt(T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

PROCEDURE select_data_product_from_standard_input_i () Parameters Return

Fortran

Exceptions See description in document [RD17]

public void selectDataProductfromStandardInput() Parameters None Return None

Java

Exceptions None

Page 137: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 126

DEBAT – Development of EAST Based Access Tools

Select_block Select a block in the data product

procedure select_block(block_number : IN INTEGER = 1) Parameters Return

ADA

Exceptions See description in document [RD15]

void select_block_i(int Block_Number) void select_block_i_mt(int Block_Number,T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

PROCEDURE select_block_i (Block_Number) INTERGER Block_Number Parameters Return

Fortran

Exceptions See description in document [RD17]

public void selectBlock(Integer Block_Number) public void selectBlock() Parameters Block_Number : the number of the block (1 by default) Return None

Java

Exceptions None

Page 138: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 127

DEBAT – Development of EAST Based Access Tools

Exist Select a data product to be explored from a socket

function exist(Acces_Path : IN STRING) return BOOLEAN Parameters Return

ADA

Exceptions See description in document [RD15]

int exist_i(char *Access_Path) int exist_i_mt(char *Access_Path,T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

Fortran Not Implemented

public Boolean exist(String Access_Path) Parameters Access_Path : the East path of the data Return Return true if the value exists

Java

Exceptions None

Page 139: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 128

DEBAT – Development of EAST Based Access Tools

Get_current_block_number Return the current block number

Function get_current_block_number return INTEGER Parameters Return

ADA

Exceptions See description in document [RD15]

int get_current_block_number_i() int get_current_block_number_i_mt(T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION select_block_i () Parameters Return

Fortran

Exceptions See description in document [RD17]

public Integer getCurrentBlockNumber() Parameters None Return The current block number

Java

Exceptions None

Page 140: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 129

DEBAT – Development of EAST Based Access Tools

Read_data_entity_ascii Gets a value in ascii form

Pocedure read_data_entity_ascii ( Access_Path : IN STRING; Data : OUT STRING; Last : OUT NATURAL) Parameters Return

ADA

Exceptions See description in document [RD15]

int read_data_entity_ascii_i(char *Access_Path, char *Data) int read_data_entity_ascii_i_mt(char *Access_Path, char *Data ,T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION read_data_entity_ascii_i (Access_Path, Data) CHARACTER *(*) Access_Path CHARACTER *(*) Data Parameters Return

Fortran

Exceptions See description in document [RD17]

public Integer readDataEntityAscii(String Access_Path, String Data)

Parameters Access_Path: the EAST path of the data Data : the result of the query

Return The index of the last element in the result Java

Exceptions None

Page 141: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 130

DEBAT – Development of EAST Based Access Tools

Read_data_entity_binary Gets a value in binary form

Pocedure read_data_entity_ascii ( Access_Path : IN STRING; Data : IN OUT OCTET_STRING_ACCESS ; Data_Length : OUT LENGTH ; Conversion : IN KIND_OF_CONVERSION) Pocedure read_data_entity_ascii ( Access_Path : IN STRING; Data : IN SYSTEM_ADDRESS; Data_Length : OUT LENGTH ; Conversion : IN KIND_OF_CONVERSION) Parameters Return

ADA

Exceptions See description in document [RD15]

int read_data_entity_i (char *Access_Path, OCTET **Data_Address, int *Data_Length, KIND_OF_CONVERSION Conversion)

int read_data_entity_i_mt (char *Access_Path, OCTET **Data_Address, int *Data_Length, KIND_OF_CONVERSION Conversion, T_PIPE_INTERFACE *p_id) Parameters Return

C/C++

Exceptions See description in document [RD16]

INTEGER FUNCTION read_data_entity_i (Access_Path, Value, Data_Length, Conversion) CHARACTER*(*) Access_Path INTEGER*4 Data_Length BYTE Conversion Parameters Return

Fortran

Exceptions See description in document [RD17]

Public void readDataEntityBinary(String Accedd_Path , Octet_String Data, Length Data_Length, Kind_Of_Conversion Conversion)

Parameters

Access_Path: the EAST path of the data Data : the result of the query Data_Length : the length of the result Conversion : the type of desired conversion

Return None

Java

Exceptions None

Page 142: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 131

DEBAT – Development of EAST Based Access Tools

2.13. Queries Handler Functions

Analyse_query Proceeds the query on a data product

Function analyse_Query( The_String_Query : IN STRING; Results_Are_Logical : IN BOOLEAN ) return A_QUERY_ACCESS;

Parameters The_String_Query : a string containing the query Results_Are_Logical : defines if conversion must be done

Return An accessor on the result of the query

ADA

Exceptions int Analyse_Query_g (char *The_String_Query,boolean Result_Are_Logical) int Analyse_Query_g_mt (char *The_String_Query,boolean Result_Are_Logical ,T_PIPE_INTERFACE *p_id) Parameters See Ada procedure description Return Error code if Ada exception is raised.

C/C++

Exceptions None INTEGER FUNCTION Analyse_Query_g (The_String_Query, Result_Are_Logical) CHARACTER *(*) The_String_Query BYTE Result_Are_Logical Parameters See Ada procedure description Return Error code if Ada exception is raised.

Fortran

Exceptions None public A_Query_Access analyseQuery(String The_String_Query, boolean Result_Are_Logical) Parameters See Ada procedure description Return None

Java

Exceptions

Page 143: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 132

DEBAT – Development of EAST Based Access Tools

Next_data_records Proceeds the query on a data product

Function next_Data_Records( Of_The_Query_Identified_By : IN A_QUERY_ACCESS; Max_Records_Count : IN POSITIVE ) return DATA_RECORDS;

Parameters Of_The_Query_Identified_By : the access on the query Max_Records_Count : the max number of records

Return The next result of the query

ADA

Exceptions Data_Records next_Data_Records_g (int Of_The_Query_Identified_By,int Max_Records_Count) Data_Records next_Data_Records_g (int Of_The_Query_Identified_By,int Max_Records_Count,T_PIPE_INTERFACE *p_id) Parameters See Ada procedure description Return Error code if Ada exception is raised.

C/C++

Exceptions None CHARACTER* FUNCTION next_Data_Records_g (Of_The_Query_Identified_By,

Max_Records_Count) INTEGER Of_The_Query_Identified_By, Max_Records_Count Parameters See Ada procedure description Return Error code if Ada exception is raised.

Fortran

Exceptions None public Data_Records nextDataRecords(A_Query_Access Of_The_Query_Identified_By, Integer Max_Records_Count) Parameters See Ada procedure description Return None

Java

Exceptions

Page 144: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 133

DEBAT – Development of EAST Based Access Tools

Is_column_present Tells if the defined coumn is present

Function is_Column_Present( The_Variable_Rank : IN POSITIVE; At_The_Record_Index : IN POSITIVE; In_The_Records : IN DATA_RECORDS ) return BOOLEAN;

Parameters The_Variable_Rank : rank of the variable in the result of the query At_The_Record_Index : Index of the variable In_The_Record : the record to test

Return The presence of the data

ADA

Exceptions int is_Column_Present_g (int The_Variable_Rank,int At_The_Record_Index, data_records In_The_Record) int is_Column_Present_g (int The_Variable_Rank,int At_The_Record_Index, data_records In_The_Record,T_PIPE_INTERFACE *p_id) Parameters See Ada procedure description Return Error code if Ada exception is raised.

C/C++

Exceptions None BYTE FUNCTION is_Column_Present_g (The_Variable_Rank, The_Record_Index,

In_The_Record) INTEGER The_Variable_Rank, The_Record_Index DATA_RECORD In_The_Record Parameters See Ada procedure description Return Error code if Ada exception is raised.

Fortran

Exceptions None public Boolean isColumnPresent (Integer The_Variable_Rank, Integer The_Record_Index,Data_Record In_The_Record) Parameters See Ada procedure description Return None

Java

Exceptions

Page 145: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 134

DEBAT – Development of EAST Based Access Tools

Variable_value Returns the value of a variable

Function is_Column_Present( The_Variable_Rank : IN POSITIVE; At_The_Record_Index : IN POSITIVE; In_The_Records : IN DATA_RECORDS ) return Octet_String;

Parameters The_Variable_Rank : rank of the variable in the result of the query At_The_Record_Index : Index of the variable In_The_Record : the record to test

Return The variable value

ADA

Exceptions char *variable_Value_g (int The_Variable_Rank,int At_The_Record_Index, data_records In_The_Record) char *variable_Value_g (int The_Variable_Rank,int At_The_Record_Index, data_records In_The_Record,T_PIPE_INTERFACE *p_id) Parameters See Ada procedure description Return Error code if Ada exception is raised.

C/C++

Exceptions None CHARACTER *FUNCTION variable_Value_g (The_Variable_Rank,

The_Record_Index, In_The_Record) INTEGER The_Variable_Rank, The_Record_Index DATA_RECORD In_The_Record Parameters See Ada procedure description Return Error code if Ada exception is raised.

Fortran

Exceptions None public Octet_String variableValue(Integer The_Variable_Rank, Integer The_Record_Index,Data_Record In_The_Record) Parameters See Ada procedure description Return None

Java

Exceptions

Page 146: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 135

DEBAT – Development of EAST Based Access Tools

Free_data_records Free the memory affected to a data record

Procedure Free_Data_Records(The_Data_Record : IN DATA_RECORDS) Parameters The_Data_Record : the record to free Return The variable value

ADA

Exceptions Void free_Data_Records_g ( data_records The_Data_Record) Void free_Data_Records_g ( data_records The_Data_Record,T_PIPE_INTERFACE *p_id) Parameters See Ada procedure description Return Error code if Ada exception is raised.

C/C++

Exceptions None PROCEDURE free_Data_Records_g (The_Data_Record) DATA_RECORD The_Data_Record Parameters See Ada procedure description Return Error code if Ada exception is raised.

Fortran

Exceptions None public void freeDataRecords(Data_Record The_Data_Record) Parameters See Ada procedure description Return None

Java

Exceptions

Page 147: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 136

DEBAT – Development of EAST Based Access Tools

Free_query Free the memory affected to a query

Procedure Free_Query(The_Query_Identifier : IN A_QUERY_ACCESS); Parameters The_Data_Record : the record to free Return The variable value

ADA

Exceptions Void free_Query_g (int The_Query_Identifier) Void free_Query_g (int The_Query_Identifier,T_PIPE_INTERFACE *p_id) Parameters See Ada procedure description Return Error code if Ada exception is raised.

C/C++

Exceptions None PROCEDURE free_Query_g (The_Query_Identifier) INTEGER The_Query_Identifier Parameters See Ada procedure description Return Error code if Ada exception is raised.

Fortran

Exceptions None public void freeQuery(A_Query_Access The_Query_Identifier) Parameters See Ada procedure description Return None

Java

Exceptions

Page 148: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 137

DEBAT – Development of EAST Based Access Tools

Records_count Returns the number of records in a data records

FUNCTION records_Count (The_Data_Record : IN DATA_RECORDS) return NATURAL Parameters The_Data_Record : the record to free Return The number of records in the data records

ADA

Exceptions int records_Count_g ( data_records The_Data_Record) int records_Count _g ( data_records The_Data_Record,T_PIPE_INTERFACE *p_id) Parameters See Ada procedure description Return Error code if Ada exception is raised.

C/C++

Exceptions None INTEGER FUNCTION records_Count_g (The_Data_Record) DATA_RECORD The_Data_Record Parameters See Ada procedure description Return Error code if Ada exception is raised.

Fortran

Exceptions None public Integer recordsCount(Data_Record The_Data_Record) Parameters See Ada procedure description Return None

Java

Exceptions

Page 149: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 138

DEBAT – Development of EAST Based Access Tools

Block_number_of_records Return the block number of the current record

FUNCTION block_Number_Of_Records(The_Data_Record : IN DATA_RECORDS) return NATURAL Parameters The_Data_Record : the record to free Return The block number of the record in parameter

ADA

Exceptions int block_Number_Of_Records _g ( data_records The_Data_Record) int block_Number_Of_Records _g ( data_records The_Data_Record,T_PIPE_INTERFACE *p_id) Parameters See Ada procedure description Return Error code if Ada exception is raised.

C/C++

Exceptions None INTEGER FUNCTION block_Number_Of_Records_g (The_Data_Record) DATA_RECORD The_Data_Record Parameters See Ada procedure description Return Error code if Ada exception is raised.

Fortran

Exceptions None public Integer blockNumberOfRecords(Data_Record The_Data_Record) Parameters See Ada procedure description Return None

Java

Exceptions

Page 150: Interface Control Document [SS-DEBAT-ICD 2.0]debat.c-s.fr/east/Interface Control Document [SS-DEBAT-ICD 2.0].pdf · DEBAT – Development of EAST Based Access Tools DRAFT DRAFT DEBAT:

DRAFT

Interface Control Document Reference : SS/DEBAT/ICD Issue. : 2.0 Date : 03/11/2003 Page : 139

DEBAT – Development of EAST Based Access Tools

Data_filename_of_records Return the block number of the current record

FUNCTION data_Filename_Of_Records(The_Data_Record : IN DATA_RECORDS) return STRING Parameters The_Data_Record : the record to free Return The name of the data file of the record

ADA

Exceptions char* data_Filename_Of_Records _g ( data_records The_Data_Record) char* data_Filename_Of_Records _g ( data_records The_Data_Record,T_PIPE_INTERFACE *p_id) Parameters See Ada procedure description Return Error code if Ada exception is raised.

C/C++

Exceptions None CHARACTER* FUNCTION data_Filename_Of_Records_g (The_Data_Record) DATA_RECORD The_Data_Record Parameters See Ada procedure description Return Error code if Ada exception is raised.

Fortran

Exceptions None public String dataFilenameOfRecords(Data_Record The_Data_Record) Parameters See Ada procedure description Return None

Java

Exceptions