Page Menu
Home
c4science
Search
Configure Global Search
Log In
Files
F56545213
EMReadApplication.hpp
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Subscribers
None
File Metadata
Details
File Info
Storage
Attached
Created
Fri, Mar 29, 00:15
Size
2 KB
Mime Type
text/x-c
Expires
Sun, Mar 31, 00:15 (2 d)
Engine
blob
Format
Raw Data
Handle
16731367
Attached To
R8820 scATAC-seq
EMReadApplication.hpp
View Options
#ifndef EMREADAPPLICATION_HPP
#define EMREADAPPLICATION_HPP
#include <ApplicationInterface.hpp>
#include <string>
/*!
* \brief The EMReadApplication class is a wrapper around an EMRead
* instance creating an autonomous application to classify data by directly
* passing all the options and parameters from the command line.
*/
class
EMReadApplication
:
public
ApplicationInterface
{
public
:
EMReadApplication
()
=
delete
;
EMReadApplication
(
const
EMReadApplication
&
app
)
=
delete
;
/*!
* \brief Constructs an object from the command line
* options.
* \param argn the number of options passed to the
* main() function.
* \param argv the vector of options passed to the
* main() function.
*/
EMReadApplication
(
int
argn
,
char
**
argv
)
;
/*!
* \brief Runs the application. The data are classified
* using the given settings and the posterior probability
* matrix is returned through the stdout.
* The matrix is a 4D matrix with dimensions :
* regions, class, shift flip.
* \return an exit code EXIT_SUCCESS or EXIT_FAILURE
* to return to the OS.
*/
virtual
int
run
()
override
;
private
:
/*!
* \brief Parses the program command line options and
* sets the object field accordingly.
* If the help option is detected, the "runnable"
* field is set to false and subsequent calls to
* run() will produce nothing.
* \param argn the number of options passed to the
* main() function.
* \param argv the vector of options passed to the
* main() function.
* \throw std::invalid_argument if an error is found
* in the program options.
*/
void
parseOptions
(
int
argn
,
char
**
argv
)
;
/*!
* \brief the paths to the file containing the read
* density data.
*/
std
::
string
file_read
;
/*!
* \brief the path to the file in which the probability
* matrix will be saved.
*/
std
::
string
file_out
;
/*!
* \brief the number of classes to partition the data into.
*/
size_t
n_class
;
/*!
* \brief the number of iterations allowed.
*/
size_t
n_iter
;
/*!
* \brief the shifting freedom.
*/
size_t
n_shift
;
/*!
* \brief whether flipping freedom is allowed.
*/
bool
flip
;
/*!
* \brief the number of threads.
*/
size_t
n_threads
;
/*!
* \brief a seed to initialise the random number generator.
*/
std
::
string
seed
;
/*!
* \brief a flag indicating whether the core of run() can be
* run or not.
*/
bool
runnable
;
}
;
#endif
// EMREADAPPLICATION_HPP
Event Timeline
Log In to Comment