Browsing projects by Tag(s)

Select a tag to browse associated projects and drill deeper into the tag cloud.

Showing page 1 of 2

This is yet another C++ version of the getopt function, that is, for parsing command line options and environment variables. However, unlike other versions, the design goals of this one are: EASY to use EASY to learn mimc STL's streams minimum code to type smooth integration with STL types ... [More] Platform independant (ANSI C++) EASY to extend for your own types That is, you just construct a GetOpt_pp object with argc and argv, and then extract the options with the >> operator as an istream :) Example: We want to receive two options, one for an int (say, named -i and --test1), and another for a float (named -f and without long option). Results in test1 and test2 vars. int main(int argc, char* argv[]) { using namespace GetOpt; int test1 = 10; float test2 = 3.14f; GetOpt_pp ops(argc, argv); ops >> Option('i', "test1", test1) >> Option('f', test2); std::cout << test1 << "\n" << test2 << "\n"; return 0; }See the project's Wiki for documentation. Current version: 2.13 Coming soon: environment stream for inserting and extracting env vars! Don't miss GetOpt_pp Episode 3! This project belongs to FuDePAN. [Less]

0
 
  0 reviews  |  0 users  |  1,165 lines of code  |  0 current contributors  |  Analyzed about 18 hours ago
 
 

Library to debug STL containers, specially useful from GDB. This project belongs to FuDePAN. IntroductionThis library helps to debug C++ applications that use STL. It's specially tuned to overcome the issues that GDB has as of version 6.8. Basically, the library provides functions to inspect ... [More] and display STL containers. UsageThree functions are provided: stl_element(container, id) that retrieves an element address from a container based on the id. The id type depends on the container type. stl_print() and it's overloaded flavors: stl_print(container) that dumps the container content. stl_print(iterator) shows the element being iterated. stl_print(used-defined-type) shows a user-defined type (if stl_to_cout was provided for such type, see below). stl_size(container) that retrieves the number of elements of the container. In order to use stl_debug, follow these steps: #include stl_debug.h in every file containing STL containers you will want to debug. #include stl_debug_impl.h once in some .cpp/.cc source file teach the library what containers (with what types) you will want to dump/access, registering the containers by using the STL_DEBUG_REGISTER_* macros (see below). define the STL_DEBUG_ENABLE macro, i.e. by addding -DSTL_DEBUG_ENABLE command line flag to g++ of course, build with -g or -ggdb Registering the containers to debugEach STL container template instantiation that needs to be debugged has to be registered. For example, vector needs to be registered. In order to register the containers, call the registration macros in the file where the stl_debug_impl.h file was included, out of any function (at file level). There is a registration type macro for each container type. The registration macros so far are: STL_DEBUG_REGISTER_VECTOR(type) enables debugging of std::vector. STL_DEBUG_REGISTER_LIST(type) enables debugging of std::list. STL_DEBUG_REGISTER_SET(type) enables debugging of std::set. STL_DEBUG_REGISTER_MAP(key,type) enables debugging of std::map. If the type is a symbol declared in the private or protected part of a class, redeclare it with STL_DEBUG_PRIVATE or STL_DEBUG_PROTECTED macros, that replace private and protected respectively. When the library is disabled (i.e. STL_DEBUG_ENABLE is undefined), these macros expand to the proper public/protected access modifiers. Using the debugging functionsRefer to the example for precise instructions. The id parameter of stl_element() function depends on the container type: the index for std::vector the key for std::map FIRST_ELEMENT or LAST_ELEMENT for both vector and lists. stl_element is not available for sets. Accessing members of a map with string keySuppose you have a map from strings to type T: std::map, and you need to access a memeber mapped with key "hello". Since gdb will not call the string constructor from the c-string "hello", you have to call stl_to_str("hello") to create the key: print *stl_element(mymap, stl_to_str("hello"))stl_element returns the pointer to the element. Such pointer can be either modified or just printed. Dumping containers containing user-defined typesIn order to dump containers that contain user-defined types, you have to provide a dumping function for those types. To define the dumping function, use the DECLARE_STL_TO_COUT(type) macro to declare the heading of the function, then invoke stl_print() to print the individual attributes of your type. The parameter can be accessed as p: #ifdef STL_DEBUG_ENABLE DECLARE_STL_TO_COUT(MyClass::MyStruct) { /* 'p' is the parameter */ stl_print(p.a, false); stl_print(" ", false); stl_print(p.b, false); } #endifPass 'false' as the second argument of stl_print to avoid generating a new line. See example.cpp for a complete example. Printing a specific element of a containerTo print a specific element, use stl_print combined with stl_element. call stl_print(*stl_element(myvec, 10)) call stl_print(*stl_element(mymap, stl_to_str("hello")))It will work for standard types; for used-defined types, see section above. Keeping your code cleanIn order to keep your code 'clean' (not messing it with debugging code), I suggest you to create a debug_support.h file where you put in there all the stl-debug related code (i.e. STL_DEBUG_REGISTER_xxx and DECLARE_STL_TO_COUT macros calls, etc.), so the only things you have to add to your main code, are the includes, and the STL_DEBUG_PRIVATE/PROTECTEDs. Include your debug_support.h file after all your class definitions. Coming soonSupport for multimaps and multisets will follow. [Less]

0
 
  0 reviews  |  0 users  |  457 lines of code  |  0 current contributors  |  Analyzed 6 days ago
 
 

This program provides a clustering algorithm for Protein Backbones based on the FUD (Fudepan Ubiquitous Distribution), that in turns uses the volunteer computing framework of BOINC (Berkeley Open Infrastructure for Network Computing). FUD spinoff ongoing. This project belongs to FuDePAN.

0
 
  0 reviews  |  0 users  |  1,873 lines of code  |  0 current contributors  |  Analyzed 6 days ago
  fudepan
 
 

The programs of this project use the following packages: perl packages: sequtils C++ packages: MiLi ( >= 12.3 ) FX-Parser OdfGen This project belongs to FuDePAN.

0
 
  0 reviews  |  0 users  |  2,102 lines of code  |  0 current contributors  |  Analyzed 8 days ago
 
 

An algorithm for approximating the volume of a compound object by keeping track of its members' positions in space. This project is part of FuDePAN.

0
 
  0 reviews  |  0 users  |  396 lines of code  |  0 current contributors  |  Analyzed 8 days ago
 
 
Compare

HPC Distribution middleware abstraction. Source code being moved from ParallelClusterer to here, as a spinoff of the L1 and L2 layers. This project belongs to FuDePAN.

0
 
  0 reviews  |  0 users  |  0 current contributors
 
 

This program expands a fasta alignment containing pseudonucleotids, in a cartesian-product fashion so the resulting alignment contains only real nucleotides (A, T/U, C, G). Python version 2.x is required. The source code is NOT compatible with Python 3.x. This project belongs to FuDePAN.

0
 
  0 reviews  |  0 users  |  187 lines of code  |  0 current contributors  |  Analyzed 1 day ago
 
 

Calculates the minimum amount of changes to develop antirretroviral resitance. The input of the program is an alignment without pseudonucleotides in the relevant positions. If you have an alignment WITH pseudonucleotids, use --auto-expand option; you'll need FastaExpander to run this option. This project belongs to FuDePAN.

0
 
  0 reviews  |  0 users  |  719 lines of code  |  0 current contributors  |  Analyzed 5 days ago
 
 

This project aims to build a database of possible protein backbones. The prototype (serial) version only is provided here. The serial application uses the XTC_Library from GROMACS, and MiLi. This project belongs to FuDePAN.

0
 
  0 reviews  |  0 users  |  1,248 lines of code  |  0 current contributors  |  Analyzed 6 days ago
  fudepan
 
 

Some simple useful tools and libraries for Sequence Analysis and Processing. This project belongs to FuDePAN.

0
 
  0 reviews  |  0 users  |  1,187 lines of code  |  0 current contributors  |  Analyzed about 2 hours ago
 
 
 
 

Creative Commons License Copyright © 2013 Black Duck Software, Inc. and its contributors, Some Rights Reserved. Unless otherwise marked, this work is licensed under a Creative Commons Attribution 3.0 Unported License . Ohloh ® and the Ohloh logo are trademarks of Black Duck Software, Inc. in the United States and/or other jurisdictions. All other trademarks are the property of their respective holders.