Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought


CALLABLE DSEE SOFTWARE (DSEELIB)

Introduction
============

    This help file contains a brief description of each DSEELIB routine and the
    routine's syntax.  For more information on DSEELIB and these routines, read
    the DOMAIN Software Engineering Environment (DSEE)  Call  Reference  (Order
    No. 010264).

Examples
========

     Examples of programs that issue calls to DSEELIB routines can be found  in
     /domain_examples/dsee/callable_dsee_examples. This  directory  contains  a
     number of subdirectories, each of which corresponds to a  DSEELIB program-
     ming example.   Each directory contains a "build" file  for  the  example,
     the program  source  code,  and an executable object file for the example.
     Each source  code  file  contains  an  introductory comment which explains
     the example in detail.  Brief descriptions of the examples are listed here.

      o  do_replaces:  This program demonstrates how  easy  it  is  to  execute
         DSEE  commands from a program using the callable DSEE procedures:  all
         the  reservations a user has on elements in a  specified  library  are
         automatically replaced.

      o  negative_version:  This   program  translates  a  negative  generation
         number  of a version of a DSEE element into an offset  from  the  most
         recent         generation         of        that        line        of
         descent.

      o  reformat_model_libraries: This   program   reformats   all   of    the
         libraries  declared in the current  model.

      o  sccs_convert: his  program  creates a DSEE library from a directory of
         SCCS files, retaining existing versions.

      o  show_reservations: This program shows the reservations of a  specified
         user in a set of specified libraries.

      o  trivial_merge: This  program shows  potential  merges  for which there
         have been no changes in the target line of descent since the  creation
         of the branch which is to be merged.

      o  dsee_ui: This program demonstrates the use of DSEE software through  a
         DOMAIN/Dialogue  user iterface.  Both the menu interface mechanism and
         command interface mechanism are included in the program.

      o  show_components: This program displays  specified  sets  of  buildable
         and non-buildable components in the current system model.

Call Formats and Descriptions
=============================

                                         SESSION CALLS

        dsee_$session_init(session_options, stdin, stdout, errout, st)

             Initializes DSEE session memory.

        dsee_$session_term(st)

             Terminates a DSEE session.

        dsee_$set_io(stdin, stdout, errout, st)

             Changes the input, output, and/or error output streams that
             DSEE  software uses.

        dsee_$set_session_option(session_option, on_off, st)

             Sets a DSEE session option.

                                         DATABASE CALLS

        dsee_$close_db(db_handle, st)

             Closes a DSEE library's database.

        dsee_$fetch_branch(db_handle, element_id, branch_id, parent_branch_id,
                          parent_version_number, event, st)

             Returns information about the creation of a given branch.

        dsee_$fetch_branch_status(db_handle, element_id, branch_id, status,
                                 event, st)

             Returns the current status of a specified branch.

        dsee_$fetch_ele(db_handle, element_id, element_name, element_name_len,
                       event, st)

             Retrieve information about the DSEE event that created an element.

        dsee_$fetch_initiate_lib_event(db_handle, event, st)

             Returns information on the DSEE event that created a specified
             library.

        dsee_$fetch_merger_source(db_handle, element_id, target_branch_id,
                                 target_version_number, source_branch_id,
                                 source_version_number, found, st)

             Returns  the  source  version  that  was  merged into the specified
             line of descent, if the given version was produced by a merger.

         dsee_$fetch_next_branch_name(db_handle, current, branch_name,
                                    branch_name_len, st)

             Fetches unique branch names in alphabetical order.

        dsee_$fetch_next_ele(db_handle, current, element_name, element_name_len,
                            element_id, event, st)

             Retrieves information about a DSEE library's elements.

        dsee_$fetch_next_lib_event(db_handle, current, event, element_id,
                                  branch_id, version_number, st)

             Fetches information about events  that  are  associated  with  a
             specified library in reverse chronological order.

        dsee_$fetch_next_merger_target(db_handle, current, element_id,
                                      source_branch_id, source_version_number,
                                      target_branch_id, target_version_number,
                                      st)

             Returns  target  versions created by mergers of which the
             specified version was a source.

        dsee_$fetch_next_res(db_handle, current, element_id, branch_id,
                            event, st)

             Returns information on the reservations in a library.

        dsee_$fetch_next_sub_branch(db_handle, current, element_id,
                                   branch_id, sub_branch_id, st)

             Returns the element-relative identifiers of all branches
             created off  of  a given line of descent.

        dsee_$fetch_next_tod_event(db_handle, current, element_id, branch_id,
                                  event, sub_branch_id, sub_version_number,
                                  st)

             Fetches  events  and  operations  in  reverse  chronological
             order  for  a particular line of descent.

        dsee_$fetch_next_version_name(db_handle, current, element_id,
                                     branch_id, version_number, version_name,
                                     version_name_len, st)

             Returns version names associated with a given version of a
             line of descent.

        dsee_$fetch_next_version_number(db_handle, current, element_id,
                                       branch_id, version_number, st)

             Returns the version numbers of existing versions on a line
             of  descent  in reverse chronological order.

        dsee_$fetch_res(db_handle, element_id, branch_id, event, found, st)

             If  a  given  line  of  descent  is reserved, returns
             information about the related reserve command.

        dsee_$fetch_res_source_version(db_handle, element_id,
                                      reserved_branch_id,
                                      source_branch_id, source_version_number,
                                      found, st)

             Returns the source version for a merger if  a  given  reservation
             was  the result of a merge -reserve command.

        dsee_$fetch_version(db_handle, element_id, branch_id, version_number,
                           event, st)

             Returns  information  about the replace operation that created a
             particular element version.

        dsee_$find_any_version_name(db_handle, element_id, branch_id,
                                   version_number, found, st)

             Determines whether a specified version on a line of descent has
             a name.

        dsee_$find_branch_name(db_handle, branch_name, branch_name_len,
                              found, st)

             Determines whether a given branch name is used anywhere in a
             library.

        dsee_$find_name_for_some_version(db_handle, version_name,
                                        version_name_len, found, st)

             Determines whether a specified version name is used in a
             library database.

        dsee_find_res(db_handle, element_id, branch_id, found, st)

             Checks to see whether a specified line of descent is reserved.

        dsee_$find_version(db_handle, element_id, branch_id, version_number,
                          found, st)

             Determines whether a given version on a line of descent exists.

        dsee_$latest_version_number(db_handle, element_id, branch_id,
                                       version_number, st)

             Returns the highest version number of any existing  versions
             for  a  given line of descent.

        dsee_$name_branch_id(db_handle, element_id, branch_id, branch_name,
                            branch_name_len, st)

             Returns the name of a branch, given its element-relative
             identifier.

        dsee_$name_ele_id(db_handle, element_id, element_name,
                         element_name_len, st)

             Given an element identifier, returns the element's name.

        dsee_$next_named_version(db_handle, current, element_id, branch_id,
                                version_number, event, st)

             Returns version numbers of named versions on a line of descent.

        dsee_$next_name_for_some_version(db_handle, current, version_name,
                                        version_name_len, st)

             Fetches unique version names.

        dsee_$next_version_with_name(db_handle, current, version_name,
                                    version_name_len, element_id, branch_id,
                                    version_number, event, st)

             Fetches versions that have a given version name.

        dsee_$pname_branch_id(db_handle, element_id, branch_id, branch_pname,
                            branch_pname_len, st)

             Returns the pathname of a branch, given its element-relative
             identifier.

        dsee_$print_event(event, col)

             Prints a dsee_$event_t record to standard ouput.

        dsee_$print_event_stream(strid, event, col)

             Prints a dsee_$event_t record to the specified stream.

        dsee_$resolve_branch_pname(db_handle, element_id, branch_pname,
                                  branch_pname_len, branch_id, found, st)

             Returns  an  element-relative  identifier  for  a  branch, given
             its branch pathname.

        dsee_$resolve_ele_name(db_handle, element_name, element_name_len,
                              element_id, found, st)

             Finds a library-relative identifier for a named element.

        dsee_$resolve_version_name(db_handle, element_id, version_name,
                                  version_name_len, branch_id, version_number,
                                  found, st)

             Determines which, if any, version of a specified element has a
             given name.

        dsee_$set_db_intent(db_handle, intent, st)

             Indicates how a DSEE library database is to be accessed.

        dsee_$translate_ids(db_handle, element_id, branch_id, version_number,
                           pname, pname_len, st)

             Translates library-  and  element-relative  line  of  descent  and
             version descriptors into pathnames.

                                          SYSTEM CALLS

                                 System Model Information Calls

        dsee_$buildable_comp_id_to_names(model_handle, component_id,
                                        component_pname, component_pname_len,
                                        component_name_is_unique, st)

             Translates a buildable component's identifier into a component
             pathname.

        dsee_$component_children(model_handle, component_id,
                                component_children_set, st)

             Determines the direct dependencies of a component.

        dsee_$component_children_all(model_handle, component_id,
                                    component_children_set, st)

             Determines the dependencies, both direct and inherited, of a
             component.

        dsee_$component_parents(model_handle, component_id,
                               component_parents_set, st)

             Determines the direct parents of a given component.

        dsee_$component_parents_all(model_handle, component_id,
                                   component_parents_set, st)

             Determines  the components that depend, either directly or
             indirectly, on a given component.

        dsee_$element_leaf_components(model_handle, leaf_name, leaf_name_len,
                                     found, component_set, st)

             Returns the set of identifiers for components that have a  given
             component leaf name.

        dsee_$has_component_name(model_handle, component_name,
                                component_name_len, found, component_set, st)

             Returns  the  set of identifiers for components that have a given
             component name.

        dsee_$leaf_components(model_handle, leaf_components_set, st)

             Obtains the set of all leaf components.

        dsee_$library_pname_to_id(model_handle, library_pname,
                                 library_pname_len, found, library_id, st)

             Translates a library pathname into its library identifier.

        dsee_$logical_library_to_id(model_handle, logical_library_name,
                                   logical_library_name_len, found, library_id,
                                   st)

             Translates a logical library name into its library identifier.

        next_component = dsee_$next_component(component_set, past_component_id)

             Returns the component identifier directly  following  the  given
             component identifier in a set.

        dsee_$sm_component_desc(model_handle, component_id, component_desc, st)

             Obtains a component descriptor record for a given component.

        dsee_$sm_get_build_rule(model_handle, component_id, build_rule_flag,
                               build_rule, st)

             Obtains  the  build  rule  (or  translation  rule)  for  a  given
             buildable component.

        dsee_$sm_library_desc(model_handle, library_id, library_desc, st)

             Obtains a library descriptor record for a given library.

        dsee_$sm_logical_pool_desc(model_handle, logical_pool_id,
                                  pool_descriptor, st)

             Obtains the pool descriptor record for a given logical pool.

        dsee_$sm_model_descriptor(model_handle, model_descriptor, st)

             Obtains a model descriptor record for a model with the given
             handle.

                                      Component Set Calls

        dsee_$allocate_component_set(num_components, component_set, st)

             Allocates a set that can hold a specified number of components.

        dsee_$and_component_sets(component_set_src1, component_set_src2,
                                component_set_dst, st)

             Performs a logical AND of two component sets.

        dsee_$complement_component_set(component_set_src, component_set_dst,
                                      st)

             Performs a one's complement of a component set.

        in_set = dsee_$component_in_set(component_set, component_id)

             Determines whether a component is a member of a component set.

        empty = dsee_$component_set_empty(component_set)

             Determines whether a given component set is empty.

        equal = dsee_$component_sets_equal(component_set_src1,
                                          component_set_src2, st)

             Determines whether two component sets are equal.

        dsee_$component_set_size(component_set, num_components)

             Determines the maximum number of components that a given component
             set  can hold.

        dsee_$copy_component_set(component_set_src, component_set_dst, st)

             Copies a component set.

        dsee_$delete_from_component_set(component_id, component_set, st)

             Deletes a component from a component set.

        dsee_$free_component_set(component_set)

             Frees space allocated for a component set.

        dsee_$insert_in_component_set(component_id, component_set, st)

             Adds a component to a component set.

        next_component = dsee_$next_component(component_set, past_component_id)

        dsee_$or_component_sets(component_set_src1, component_set_src2,
                               component_set_dst, st)

             Performs a logical OR of two component sets.

        dsee_$subtract_component_set(minuend, subtrahend, component_set_dst,
                                    st)

             Subtracts one component set from another.

                                         COMMAND CALLS

        dsee_$build(component_pname, component_pname_len, options, comment,
                   comment_len, root_full_build_name, root_full_build_name_len,
                   st)

             Builds the current system or a system component.

        dsee_$cancel_obsolete(lod, lod_len, comment, comment_len, options, st)

             Reactivates a formerly obsoleted line of descent.

        dsee_$cancel_reserve(lod, lod_len, options, st)

             Cancels the reservation of an element.

        dsee_$cmd(cmd, cmd_len, st)

             Submits a DSEE command to the DSEE facility.

        dsee_$create_branch(branch_name, branch_name_len, off_version,
                           off_version_len, from_into_pname,
                           from_into_pname_len, options, comment,
                           comment_len, branch_id, st)

             Creates a branch line of descent.

        dsee_$create_element(element_name, element_name_len, from_pname,
                            from_pname_len, options, comment, comment_len,
                            element_id, st)

             Creates an element.

        dsee_$create_library(library_pname, library_pname_len, comment,
                            comment_len, st)

             Creates a library.

        dsee_$create_release(full_build_name, full_build_name_len,
                            release_area_pname, release_area_pname_len,
                            export_list_pname, export_list_pname_len,
                            snapshot_set, options, st)

             Creates a release area for built system components.

        dsee_$delete_branch(lod, lod_len, options, st)

             Deletes a branch and its subbranches.

        dsee_$delete_element(element_name, element_name_len, options, st)

             Deletes an element and its history from the current library.

        dsee_$delete_library(options, st)

             Deletes the current library.

        dsee_$delete_version(version1, version1_len, version2, version2_len,
                            options, st)

             Deletes one or more versions in a line of descent.

        dsee_$examine_thread(into_pname, into_pname_len, model_thread,
                            options, st)

             Writes  the  contents  of  the  current configuration thread or
             the current model thread.

        dsee_$export(full_build_name, full_build_name_len, into_pname,
                    into_pname_len, select_component_pname,
                    select_component_pname_len, from_suffix, from_suffix_len,
                    options, st)

             Exports the derived objects produced by a particular build.

        dsee_$fetch(version, version_len, into_pname, into_pname_len, options,
                   st)

             Fetches a copy of an element version.

        dsee_$name_version(target, target_len, name, name_len, options, st)

             Assigns a name to a particular version of one or more elements,
             or  deletes a previously assigned version name.

        dsee_$obsolete(lod, lod_len, comment, comment_len, options, st)

             Declares a line of descent obsolete.

        dsee_$rename_branch(lod, lod_len, branch_name, branch_name_len,
                           options, st)

             Renames a branch line of descent.

        dsee_$rename_element(old_ele_name, old_ele_name_len, new_ele_name,
                            new_ele_name_len, options, st)

             Renames an element.

        dsee_$replace(lod, lod_len, from_pname, from_pname_len, options,
                     comment, comment_len, gen_num, st)

             Replaces a line of descent.

        dsee_$reserve(lod, lod_len, into_pname, into_pname_len, options,
                     comment, comment_len, st)

             Reserves a line of descent.

        dsee_$set_library(library_pname, library_pname_len, options, st)

             Changes the current library setting.

        dsee_$set_model(model_spec, model_spec_len, target_options,
                       target_options_len, options, st)

             Sets the current system model.

        dsee_$set_system(system_pname, system_pname_len, from_into_pname,
                        from_into_pname_len, options, st)

             Sets  or  clears  the  current  system setting and sets the
             current working context.

        dsee_$set_thread(from_pname, from_pname_len, model_thread, options, st)

             Sets the current configuration thread or the current model thread.

        dsee_$show_library(current_lib_pname, current_lib_pname_len, st)

             Displays information about the current library.

        dsee_$show_model(model_handle, model_spec, model_spec_len,
                       target_options, target_options_len, st)

             Displays information about a system model.

        dsee_$show_system(system_pname, system_pname_len, st)

             Displays information about the current system.

                                    MISCELLANEOUS UTILITIES

        dsee_$comment_copy(in_handle, copy_handle)

             Copies a comment.

        dsee_$comment_delete(handle)

             Deletes a comment.

        more = dsee_$comment_read(handle, line_num, text_str, text_str_len)

             Reads a DSEE comment line by line.

        dsee_$parse_lod(string, string_len, lod, st)

             Parses a line of descent into an element name and a branch
             pathname.

        dsee_$parse_version(string, string_len, lod, gen, st)

             Parses a version specifier into element name, branch pathname,
             and version.

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026