Sophie

Sophie

distrib > Fedora > 17 > i386 > media > updates > by-pkgid > 675c8c8167236dfcf8d66da674f931e8 > files > 1232

erlang-doc-R15B-03.3.fc17.noarch.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html xmlns:fn="http://www.w3.org/2005/02/xpath-functions">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../../../doc/otp_doc.css" type="text/css">
<title>Erlang -- Usage</title>
</head>
<body bgcolor="white" text="#000000" link="#0000ff" vlink="#ff00ff" alink="#ff0000"><div id="container">
<script id="js" type="text/javascript" language="JavaScript" src="../../../../doc/js/flipmenu/flipmenu.js"></script><script id="js2" type="text/javascript" src="../../../../doc/js/erlresolvelinks.js"></script><script language="JavaScript" type="text/javascript">
            <!--
              function getWinHeight() {
                var myHeight = 0;
                if( typeof( window.innerHeight ) == 'number' ) {
                  //Non-IE
                  myHeight = window.innerHeight;
                } else if( document.documentElement && ( document.documentElement.clientWidth ||
                                                         document.documentElement.clientHeight ) ) {
                  //IE 6+ in 'standards compliant mode'
                  myHeight = document.documentElement.clientHeight;
                } else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
                  //IE 4 compatible
                  myHeight = document.body.clientHeight;
                }
                return myHeight;
              }

              function setscrollpos() {
                var objf=document.getElementById('loadscrollpos');
                 document.getElementById("leftnav").scrollTop = objf.offsetTop - getWinHeight()/2;
              }

              function addEvent(obj, evType, fn){
                if (obj.addEventListener){
                obj.addEventListener(evType, fn, true);
                return true;
              } else if (obj.attachEvent){
                var r = obj.attachEvent("on"+evType, fn);
                return r;
              } else {
                return false;
              }
             }

             addEvent(window, 'load', setscrollpos);

             //--></script><div id="leftnav"><div class="innertube">
<img alt="Erlang logo" src="../../../../doc/erlang-logo.png"><br><small><a href="users_guide.html">User's Guide</a><br><a href="index.html">Reference Manual</a><br><a href="release_notes.html">Release Notes</a><br><a href="../pdf/reltool-0.6.1.pdf">PDF</a><br><a href="../../../../doc/index.html">Top</a></small><p><strong>Reltool</strong><br><strong>User's Guide</strong><br><small>Version 0.6.1</small></p>
<br><a href="javascript:openAllFlips()">Expand All</a><br><a href="javascript:closeAllFlips()">Contract All</a><p><small><strong>Chapters</strong></small></p>
<ul class="flipMenu" imagepath="../../../../doc/js/flipmenu">
<li id="no" title="Introduction" expanded="false">Introduction<ul>
<li><a href="reltool_intro.html">
              Top of chapter
            </a></li>
<li title="Scope and Purpose"><a href="reltool_intro.html#id57517">Scope and Purpose</a></li>
<li title="Prerequisites"><a href="reltool_intro.html#id56965">Prerequisites</a></li>
<li title="About This Manual"><a href="reltool_intro.html#id59830">About This Manual</a></li>
<li title="Where to Find More Information"><a href="reltool_intro.html#id61141">Where to Find More Information</a></li>
</ul>
</li>
<li id="loadscrollpos" title="Usage" expanded="true">Usage<ul>
<li><a href="reltool_usage.html">
              Top of chapter
            </a></li>
<li title="Overview"><a href="reltool_usage.html#id58313">Overview</a></li>
<li title="System window"><a href="reltool_usage.html#id58329">System window</a></li>
<li title="Application window"><a href="reltool_usage.html#id59623">Application window</a></li>
<li title="Module window"><a href="reltool_usage.html#id61446">Module window</a></li>
</ul>
</li>
<li id="no" title="Examples" expanded="false">Examples<ul>
<li><a href="reltool_examples.html">
              Top of chapter
            </a></li>
<li title="Start and stop windows and servers"><a href="reltool_examples.html#id58186">Start and stop windows and servers</a></li>
<li title="Inspecting the configuration"><a href="reltool_examples.html#id58220">Inspecting the configuration</a></li>
<li title="Generate release and script files"><a href="reltool_examples.html#id58282">Generate release and script files</a></li>
<li title="Create a target system"><a href="reltool_examples.html#id58294">Create a target system</a></li>
</ul>
</li>
</ul>
</div></div>
<div id="content">
<div class="innertube">
<h1>2 Usage</h1>
  

  <h3><a name="id58313">2.1 
        Overview</a></h3>
    
    <p>This document focuses on the graphical parts of the tool. The
    concepts are explained in the reference manual for the module
    <span class="code">reltool</span>.</p>
  

  <h3><a name="id58329">2.2 
        System window</a></h3>
    
    <p>The system window is started with the function
    <span class="code">reltool:start/1</span>. At startup the tool will process all
    <span class="code">beam</span> files and <span class="code">app</span> files in order to find out dependencies
    between applications and their modules. Once all this information has been
    derived, it will be possible to explore the tool.</p>

    <p>The system window consists of four main pages (tabs):</p>

    <ul>
      <li>Libraries
      </li>
      <li>System settings
      </li>
      <li>Applications
      </li>
      <li>Releases
      </li>
    </ul>

    <p>Click on a name tag to display its page.</p>
    
    <h4>Libraries</h4>
    
        <p>On the library page it is possible to control which sources
        the tool will use. The page is organized as a tree which
        can be expanded and collapsed by clicking on the little symbol
        in the beginning of the expandable/collapsible lines.</p>

	<p>The <span class="code">Root directory</span> can be edited by selecting the
	line where the path of the root directory is displayed and
	clicking the right mouse button. Choose edit in the menu
	that pops up.</p>

	<p>Library directories can be added, edited or deleted. This
	is done by selecting the line where the path to a library
	directory is displayed and clicking the right mouse
	button. Choose add, edit or delete in the menu that pops
	up. New library directories can also be added by selecting the
	line <span class="code">Library directories</span> and clicking the right
	mouse button. Choose add in the menu that pops up.</p>

	<p>Escript files can be added, edited or deleted. This is done
	by selecting the line where the path to an escript file is
	displayed and clicking the right mouse button. Choose
	add, edit or delete in the menu that pops up. New escripts can
	also be added by selecting the line <span class="code">Escript files</span> and
	clicking the right mouse button. Choose add in the menu
	that pops up.</p>

	<p>When libraries and escripts are expanded, the names of
	their contained applications will be displayed. Double click
	on an application name to launch an application window.</p>
    

    <h4>System settings</h4>
    
        <p>On the system settings page it is possible to control some
        global settings that are used as defaults for all
        applications. Set the <span class="code">Application inclusion policy</span> to
        <span class="code">include</span> to include all applications that are not
        explicitly excluded. See <span class="code">incl_cond</span> (application
        inclusion) and <span class="code">mod_cond</span> (module inclusion) in the
        reference manual for the module <span class="code">reltool</span> for more
        info.</p>
	<p>The system settings page is rather incomplete.</p>
    

    <h4>Applications</h4>
    
	<p>There are four categories of applications on the
	applications page. <span class="code">Included</span> contains applications that
	are explicitly included. <span class="code">Excluded</span> contains applications
	that are explicitly excluded. <span class="code">Derived</span> contains
	applications that either are used directly by explicitly
	included applications or by other derived
	applications. <span class="code">Available</span> contains the remaining
	applications.</p>

	<p>Select one or more applications and click on a button
	directly below the application column to change application
	category. For example, select an available application and
	click on its tick button to move the application to the
	included category.  Clicking on the tick symbol for included
	applications will move the application back to the available
	category. The tick is undone.</p>

	<p>The symbols in front of the application names are intended
	to describe the status of the application. There are error
	and warning symbols to signalize that there is
	something which needs attention. The tick symbol means that the
	application is included or derived and no problem has been
	detected. The cross symbol means that the application is
	excluded or available and no problem has been
	detected. Applications with error symbols are listed first in
  each category and are followed by the warnings and the
  normal ones (ticks and crosses) at the end.</p>

	<p>Double click on an application to launch its application
	window.</p>
    

    <h4>Releases</h4>
      
      <p>The releases page is incomplete and very experimental.</p>
    

    <h4>File menu</h4>
    

      <ul>
	<li>
	  <p><span class="code">Display application dependency graph</span> - Launches an
	  application force graph window. All included and derived
	  applications and their dependencies will be shown in a
	  graph.</p>
	</li>
	<li>
	  <p><span class="code">Display module dependency graph</span> - Launch a module
	  force graph window. All included and derived modules and
	  their dependencies will be shown in a graph.</p>
	</li>
	<li>
	  <p><span class="code">Reset configuration to default</span></p>
	</li>
	<li>
	  <p><span class="code">Undo configuration (toggle)</span></p>
	</li>
	<li>
	  <p><span class="code">Load configuration</span> - Loads a new configuration from file.</p>
	</li>
	<li>
	  <p><span class="code">Save configuration</span> - Saves the current
	  configuration to file. Normally, only the explicit
	  configuration parameters with values that differ from their
	  defaults are saved. But the configuration with or without
	  default values and with or without derived values may also
	  be saved.</p>
	</li>
	<li>
	  <p><span class="code">Generate rel, script and boot files</span></p>
	</li>
	<li>
	  <p><span class="code">Generate target system</span></p>
	</li>
	<li>
	  <p><span class="code">Close</span> - Close the system window and all its subwindows.</p>
	</li>
      </ul>

    

    <h4>Dependencies between applications or modules displayed as a graph</h4>
      

      <p>The dependency graph windows are launched from the file menu
      in the system window. The graph depicts all included and derived
      applications/modules and their dependencies.</p>

      <p>It is possible to perform some limited manipulations of the
      graph. Nodes can be moved, selected, locked or deleted. Move a
      single node or the entire graph by moving the mouse while the
      left mouse button is pressed. A node can be locked into a fix
      position by holding down the shift button when the left mouse
      button is released. Select several nodes by moving the mouse
      while the control key and the left mouse button are
      pressed. Selected nodes can be locked, unlocked or deleted by
      clicking on a suitable button.</p>

      <p>The algorithm that is used to draw a graph with as few
      crossed links as possible is called force graph. A force graph
      consists of nodes and directed links between nodes. Each node is
      associated with a repulsive force that pushes nodes away from
      each other. This force can be adjusted with the left slider or
      with the mouse wheel. Each link is associated with an attractive
      force that pulls the nodes nearer to each other. This force can be
      adjusted with the right slider. If this force becomes too strong,
      the graph will be unstable. The third parameter that can be
      adjusted is the length of the links. It is adjusted with the
      middle slider.</p>

      <p>The <span class="code">Freeze</span> button starts/stops the redrawing of the
      graph. <span class="code">Reset</span> moves the graph to the middle of the window
      and resets all graph settings to default, with the exception of
      deleted nodes.</p>
      
    

  

  <h3><a name="id59623">2.3 
        Application window</a></h3>
    
    <p>The application window is started by double clicking on an
    application name. The application window consists of four
    pages (tabs):</p>

    <ul>
      <li>Application settings
      </li>
      <li>Modules
      </li>
      <li>Application dependencies
      </li>
      <li>Module dependencies
      </li>
    </ul>
    
    <p>Click on a name tag to display its page.</p>

    <h4>Application settings</h4>
    
    <p>Select version of the application in the <span class="code">Source selection
    policy</span> part of the page. By default the latest version of the
    application is selected, but it is possible to override this by
    explicitly selecting another version.</p>
    
    <p>By default the <span class="code">Application inclusion policy</span> on system
    level is used for all applications. Set the value to
    <span class="code">include</span> if you want to explicitly include one particular
    application. Set it to <span class="code">exclude</span> if you want to exclude the
    application despite that it is used by another (explicitly or
    implicitly) included application. <span class="code">derived</span> means that the
    application automatically will be included if some other
    (explicitly or implicitly) included application uses it.</p>

    <p>By default the <span class="code">Module inclusion policy</span> on system level
    is used for all applications. Set it to <span class="code">derived</span> if you only
    want actually used modules to be included. Set it to <span class="code">app</span> if
    you, besides derived modules, also want the modules listed in the
    app file to be included. Set it to <span class="code">ebin</span> if you, besides
    derived modules, also want the modules that exist as beam files
    in the ebin directory to be included. Set it to <span class="code">all</span> if you
    want all modules to be included, that is the union of modules
    found in the ebin directory and listed in the app file.</p>

    <p>The application settings page is rather incomplete.</p>
    

    <h4>Modules</h4>
    
    
    <p>There are four categories of modules on the modules
    page. <span class="code">Included</span> contains modules that are explicitly
    included. <span class="code">Excluded</span> contains modules that are explicitly
    excluded. <span class="code">Derived</span> contains modules that either are used
    directly by explicitly included modules or by other derived
    modules. <span class="code">Available</span> contains the remaining modules.</p>

    <p>Select one or more modules and click on a button directly
    below the module column to change module category. For
    example, select an available module and click on its tick
    button to move the module to the included category.  Clicking
    on the tick symbol for included modules will move the
    module back to the available category. The tick is
    undone.</p>

    <p>The symbols in front of the module names are intended to
    describe the status of the module. There are error and
    and warning symbols to signalize that there is something that needs
    attention. The tick symbol means that the module is included
    or derived and no problem has been detected. The cross symbol
    means that the module is excluded or available and no problem
    has been detected. Modules with error symbols are listed
    first in each category and are followed by warnings and the
    normal ones (ticks and crosses) at the end.</p>

    <p>Double click on a module to launch its module window.</p>

    

    <h4>Application dependencies</h4>
    
    <p>There are four categories of applications on the <span class="code">Application
    dependencies</span> page. If the application is used by other
    applications, these are listed under <span class="code">Used by</span>. If the
    application requires other applications be started before it can
    be started, these are listed under <span class="code">Required</span>. These
    applications are listed in the <span class="code">applications</span> part of the
    <span class="code">app</span> file. If the application includes other applications,
    these are listed under <span class="code">Included</span>. These applications are
    listed in the <span class="code">included_applications</span> part of the <span class="code">app</span>
    file.  If the application uses other applications, these
    are listed under <span class="code">Uses</span>.</p>

    <p>Double click on an application name to launch an application window.</p>

    

    <h4>Module dependencies</h4>
    

    <p>There are two categories of modules on the <span class="code">Module
    dependencies</span> page. If the module is used by other modules,
    these are listed under <span class="code">Modules used by others</span>. If the
    module uses other modules, these are listed under <span class="code">Used
    modules</span>.</p>

    <p>Double click on an module name to launch a module window.</p>

    

  

  <h3><a name="id61446">2.4 
        Module window</a></h3>
    

 <p>The module window is started by double clicking on an module
 name. The module window consists initially of two pages (tabs):</p>

    <ul>
      <li>Dependencies
      </li>
      <li>Code
      </li>
    </ul>
    
    <p>Click on a name tag to display its page.</p>

    <h4>Dependencies</h4>
    

    <p>There are two categories of modules on the <span class="code">Dependencies</span>
    page. If the module is used by other modules, these are listed
    under <span class="code">Modules used by others</span>. If the module uses other
    modules, these are listed under <span class="code">Used modules</span>.</p>

    <p>Double click on an module name to launch a module window.</p>

    

    <h4>Code</h4>
    

    <p>On the <span class="code">Code</span> page the Erlang source code is displayed. It
    is possible to search forwards and backwards for text in the
    module. Enter a regular expression in the <span class="code">Find</span> field and
    press enter. It is also possible to go to a certain line in the
    module. The <span class="code">Back</span> button can be used to go back to the
    previous position.</p>

    <p>Put the marker on a function name and double click to go to the
    definition of the function. If the function is defined in another
    module, that module will be loaded and added to the page list.
    </p>
    

  

</div>
<div class="footer">
<hr>
<p>Copyright © 2009-2012 Ericsson AB, All Rights Reserved</p>
</div>
</div>
</div></body>
</html>