Difference between revisions of "V4 Modules and Interfaces"

From EPICSWIKI
 
(2 intermediate revisions by the same user not shown)
Line 11: Line 11:
** OS Independent Interfaces
** OS Independent Interfaces
* libCom (Commonly used components)
* libCom (Commonly used components)
** Memory management (???)


* Lex/Flex ???
* Lex/Flex ???
Line 31: Line 32:
* IOC shell
* IOC shell
* Registration (commands, interfaces, menus, record types, devices etc.)
* Registration (commands, interfaces, menus, record types, devices etc.)
* DB file parser/loader
 
* Access security
* Data server
** Name resolution
** Filtering
** Event Queue
* Database access
* Database access
* Initialization
** View manager
* Scanning
** Catalog cache
* Access security
* Database manager
* Data access
** DB file parser/loader
* View manager
** Initialization
* Catalog cache
** Scanning


== Communication ==
== Communication ==

Latest revision as of 14:59, 14 July 2005

This page is an attempt to collect a list of the different parts of EPICS V4 and eventually to identify where and how they will interface to one another and to the outside world. There will probably be many omissions from my initial versions of this list, so please contribute.


Modules

Infrastructure

  • Build System (Makefile rules, configuration etc.)
  • libOSI (the OSI layer should be separated out)
    • OS Dependent code
    • OS Independent Interfaces
  • libCom (Commonly used components)
    • Memory management (???)
  • Lex/Flex ???
  • Yacc/Bison/Antelope ???

Preprocessing

  • DBD file converters for
    • Menus (.h file)
    • Record support (.h, .cpp files)
    • Structures (.h, .cpp files?)
    • Link support (.h, .cpp files)
    • Device support (.h, .cpp files)
  • DB file processing
    • Syntax checker
    • Hierarchy expansion

IOC Core

  • IOC shell
  • Registration (commands, interfaces, menus, record types, devices etc.)
  • Access security
  • Data server
    • Name resolution
    • Filtering
    • Event Queue
  • Database access
    • View manager
    • Catalog cache
  • Database manager
    • DB file parser/loader
    • Initialization
    • Scanning

Communication

  • CA server
  • Broadcast name server
  • Other name server ???
  • CA client
  • CA link support
  • DB link support
  • Field view

Other Tools

  • Log client
  • Log server
  • CA Tools


Interfaces

Not quite sure how to structure this section yet; an interface is implemented by one or more modules and called by other modules for communication or control purposes.