File: Contributing.html

package info (click to toggle)
openms 1.11.1-5
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 436,688 kB
  • ctags: 150,907
  • sloc: cpp: 387,126; xml: 71,547; python: 7,764; ansic: 2,626; php: 2,499; sql: 737; ruby: 342; sh: 325; makefile: 128
file content (93 lines) | stat: -rw-r--r-- 4,431 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
<HTML>
<HEAD>
<TITLE>Contributing</TITLE>
<LINK HREF="doxygen.css" REL="stylesheet" TYPE="text/css">
<LINK HREF="style_ini.css" REL="stylesheet" TYPE="text/css">
</HEAD>
<BODY BGCOLOR="#FFFFFF">
<A href="index.html">Home</A> &nbsp;&middot;
<A href="classes.html">Classes</A> &nbsp;&middot;
<A href="annotated.html">Annotated Classes</A> &nbsp;&middot;
<A href="modules.html">Modules</A> &nbsp;&middot;
<A href="functions_func.html">Members</A> &nbsp;&middot;
<A href="namespaces.html">Namespaces</A> &nbsp;&middot;
<A href="pages.html">Related Pages</A>
<HR style="height:1px; border:none; border-top:1px solid #c0c0c0;">
<!-- Generated by Doxygen 1.8.5 -->
</div><!-- top -->
<div class="header">
  <div class="headertitle">
<div class="title">Contributing </div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><h2 style="border-top:2px solid grey;">OpenMS</h2>
<ul>
<li>
<p class="startli"><b>I have written a class for OpenMS I want to contribute. What should I do?</b><br/>
 Basically, you must conform to the OpenMS <a class="el" href="coding_conventions.html">Coding conventions</a> : </p>
<ol>
<li>
Coding style (brackets, variable names, etc.) must conform to the conventions. </li>
<li>
The class and all the members must be documented thoroughly. </li>
<li>
A class test must exists, which tests each public member function. </li>
<li>
You can check your code with the tool <code>tools/checker.php</code>. Call <code>php tools/checker.php</code> for detailed instructions. </li>
</ol>
<p class="endli">When this is done, you can either </p>
<ul>
<li>
post a patch to the mailing list or </li>
<li>
become a developer and commit your code to the SVN directly. </li>
</ul>
</li>
<li>
<b>I want to implement a new file adapter. What is to be done?</b><br/>
 <ol>
<li>
First you should add a file adapter class to the <code>include/OpenMS/FORMAT/</code> and <code>source/FORMAT/</code> folders. The file adapter should implement a default constructor, a <code>load</code> method and a <code>store</code> method. Make sure your code conforms to the OpenMS <a class="el" href="coding_conventions.html">Coding conventions</a> . </li>
<li>
For automatic file type recognition, you need to <ul>
<li>
register your new file type at the <code>Type</code> enum in <code>/include/OpenMS/FORMAT/FileTypes.h</code>, </li>
<li>
flag the file type as supported in the <code>isSupported</code> method of <code>/source/FORMAT/FileHandler.C</code> and </li>
<li>
register the file extension in the <code>getTypeByFileName</code> method of <code>/source/FORMAT/FileHandler.C</code>. </li>
</ul>
</li>
<li>
If the new file is a peak or feature file format you should also add it to <code>loadExperiment</code> or <code>loadFeatures</code>, respectively, of the <code>FileHandler</code> class. </li>
<li>
To add the file format to the TOPPView open dialog, you have to modify the file <code>/source/APPLICATIONS/TOPPViewBase.C</code>. Add the file extensions to the <code>filter_all</code> and <code>filter_single</code> variables of the <code>getFileList_</code> method. </li>
<li>
To add your format to TOPP applications, add the file extension to the extensions list of the respective parameter:<br/>
 e.g. <code>setValidStrings_("in_type", StringList::create("mzData,mzXML,mzML"));</code> in <code>FileInfo</code> </li>
</ol>
</li>
</ul>
<h2 style="border-top:2px solid grey;">TOPP</h2>
<p><b>I want to implement a new TOPP tool. What is to be done?</b><br/>
 </p>
<ol>
<li>
Prepare testdata for blackbox testing and add the test to <code>source/TEST/TOPP/CMakeLists.txt</code>. Make sure that a test exists for each commandline option of the tool. </li>
<li>
Add your tool either in <code>source/APPLICATIONS/TOPP</code> or <code>source/APPLICATIONS/UTILS</code> (depending on its maturity)  </li>
<li>
Add your tool to the list in the ToolHandler in <code>source/APPLICATIONS/ToolHandler.C</code>  </li>
<li>
Insert your tool into the documentation in <code><a class="el" href="TOPP_8doxygen.html">doc/doxygen/public/TOPP.doxygen</a></code>  </li>
</ol>
</div></div><!-- contents -->
<HR style="height:1px; border:none; border-top:1px solid #c0c0c0;">
<TABLE width="100%" border="0">
<TR>
<TD><font color="#c0c0c0">OpenMS / TOPP release 1.11.1</font></TD>
<TD align="right"><font color="#c0c0c0">Documentation generated on Thu Nov 14 2013 11:19:25 using doxygen 1.8.5</font></TD>
</TR>
</TABLE>
</BODY>
</HTML>