Skip to content

Commit a4c29df

Browse files
committed
Remove submodule logger
1 parent ededb83 commit a4c29df

File tree

8 files changed

+122
-17
lines changed

8 files changed

+122
-17
lines changed

.gitmodules

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,6 @@
1616
[submodule "vendor/rampler"]
1717
path = vendor/rampler
1818
url = https://github.com/rvaser/rampler
19-
[submodule "vendor/logger"]
20-
path = vendor/logger
21-
url = https://github.com/rvaser/logger
2219
[submodule "vendor/ClaraGenomicsAnalysis"]
2320
path = vendor/ClaraGenomicsAnalysis
2421
url = https://github.com/clara-genomics/ClaraGenomicsAnalysis

CMakeLists.txt

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
cmake_minimum_required(VERSION 3.2)
22
project(racon)
3-
set(racon_version 1.4.9)
3+
set(racon_version 1.4.10)
44

55
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/lib)
66
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/lib)
@@ -30,6 +30,7 @@ include_directories(${PROJECT_SOURCE_DIR}/src)
3030

3131
set(racon_sources
3232
src/main.cpp
33+
src/logger.cpp
3334
src/polisher.cpp
3435
src/overlap.cpp
3536
src/sequence.cpp
@@ -58,9 +59,6 @@ endif()
5859
if (NOT TARGET edlib)
5960
add_subdirectory(vendor/edlib EXCLUDE_FROM_ALL)
6061
endif()
61-
if (NOT TARGET logger)
62-
add_subdirectory(vendor/logger EXCLUDE_FROM_ALL)
63-
endif()
6462
if (racon_enable_cuda)
6563
if (DEFINED CLARAGENOMICSANALYSIS_SDK_PATH)
6664
list(APPEND CMAKE_PREFIX_PATH "${CLARAGENOMICSANALYSIS_SDK_PATH}/cmake")
@@ -90,7 +88,7 @@ if (racon_enable_cuda)
9088
endif()
9189
endif()
9290

93-
target_link_libraries(racon bioparser spoa thread_pool edlib_static logger)
91+
target_link_libraries(racon bioparser spoa thread_pool edlib_static)
9492
if (racon_enable_cuda)
9593
target_link_libraries(racon cudapoa cudaaligner)
9694
endif()
@@ -106,6 +104,7 @@ if (racon_build_tests)
106104

107105
set(racon_test_sources
108106
test/racon_test.cpp
107+
src/logger.cpp
109108
src/polisher.cpp
110109
src/overlap.cpp
111110
src/sequence.cpp
@@ -123,7 +122,7 @@ if (racon_build_tests)
123122
add_subdirectory(vendor/googletest/googletest EXCLUDE_FROM_ALL)
124123
endif()
125124

126-
target_link_libraries(racon_test bioparser spoa thread_pool edlib_static logger gtest_main)
125+
target_link_libraries(racon_test bioparser spoa thread_pool edlib_static gtest_main)
127126
if (racon_enable_cuda)
128127
target_link_libraries(racon_test cudapoa cudaaligner)
129128
endif()

src/cuda/cudapolisher.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,11 @@
1010
#include <cuda_profiler_api.h>
1111

1212
#include "sequence.hpp"
13+
#include "logger.hpp"
1314
#include "cudapolisher.hpp"
1415
#include <claragenomics/utils/cudautils.hpp>
1516

1617
#include "bioparser/bioparser.hpp"
17-
#include "logger/logger.hpp"
1818

1919
namespace racon {
2020

src/logger.cpp

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
/*!
2+
* @file logger.cpp
3+
*
4+
* @brief Logger source file
5+
*/
6+
7+
#include <iostream>
8+
9+
#include "logger.hpp"
10+
11+
namespace racon {
12+
13+
Logger::Logger()
14+
: time_(0.), bar_(0), time_point_() {
15+
}
16+
17+
Logger::~Logger() {
18+
}
19+
20+
void Logger::log() {
21+
auto now = std::chrono::steady_clock::now();
22+
if (time_point_ != std::chrono::time_point<std::chrono::steady_clock>()) {
23+
time_ += std::chrono::duration_cast<std::chrono::duration<double>>(now - time_point_).count();
24+
}
25+
time_point_ = now;
26+
}
27+
28+
void Logger::log(const std::string& msg) const {
29+
std::cerr << msg << " " << std::fixed
30+
<< std::chrono::duration_cast<std::chrono::duration<double>>(std::chrono::steady_clock::now() - time_point_).count()
31+
<< " s" << std::endl;
32+
}
33+
34+
void Logger::bar(const std::string& msg) {
35+
++bar_;
36+
std::string progress_bar = "[" + std::string(bar_, '=') + (bar_ == 20 ? "" : ">" + std::string(19 - bar_, ' ')) + "]";
37+
38+
std::cerr << msg << " " << progress_bar << " " << std::fixed
39+
<< std::chrono::duration_cast<std::chrono::duration<double>>(std::chrono::steady_clock::now() - time_point_).count()
40+
<< " s";
41+
42+
bar_ %= 20;
43+
if (bar_ == 0) {
44+
std::cerr << std::endl;
45+
} else {
46+
std::cerr << "\r";
47+
}
48+
}
49+
50+
void Logger::total(const std::string& msg) const {
51+
std::cerr << msg << " " << std::fixed
52+
<< time_ + std::chrono::duration_cast<std::chrono::duration<double>>(std::chrono::steady_clock::now() - time_point_).count()
53+
<< " s" << std::endl;
54+
}
55+
56+
}

src/logger.hpp

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
/*!
2+
* @file logger.hpp
3+
*
4+
* @brief Logger header file
5+
*/
6+
7+
#pragma once
8+
9+
#include <cstdint>
10+
#include <chrono>
11+
#include <string>
12+
13+
namespace racon {
14+
15+
static const std::string version = "v1.0.0";
16+
17+
class Logger {
18+
public:
19+
Logger();
20+
21+
Logger(const Logger&) = default;
22+
Logger& operator=(const Logger&) = default;
23+
24+
Logger(Logger&&) = default;
25+
Logger& operator=(Logger&&) = default;
26+
27+
~Logger();
28+
29+
/*!
30+
* @brief Resets the time point
31+
*/
32+
void log();
33+
34+
/*!
35+
* @brief Prints the elapsed time from last time point to stderr
36+
*/
37+
void log(const std::string& msg) const;
38+
39+
/*!
40+
* @brief Prints a progress bar and the elapsed time from last time to
41+
* stderr (the progress bar resets after 20 calls)
42+
*/
43+
void bar(const std::string& msg);
44+
45+
/*!
46+
* @brief Prints the total elapsed time from the first log() call
47+
*/
48+
void total(const std::string& msg) const;
49+
50+
private:
51+
double time_;
52+
std::uint32_t bar_;
53+
std::chrono::time_point<std::chrono::steady_clock> time_point_;
54+
};
55+
56+
}

src/polisher.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
#include "overlap.hpp"
1212
#include "sequence.hpp"
1313
#include "window.hpp"
14+
#include "logger.hpp"
1415
#include "polisher.hpp"
1516
#ifdef CUDA_ENABLED
1617
#include "cuda/cudapolisher.hpp"
@@ -19,7 +20,6 @@
1920
#include "bioparser/bioparser.hpp"
2021
#include "thread_pool/thread_pool.hpp"
2122
#include "spoa/spoa.hpp"
22-
#include "logger/logger.hpp"
2323

2424
namespace racon {
2525

@@ -170,7 +170,7 @@ Polisher::Polisher(std::unique_ptr<bioparser::Parser<Sequence>> sparser,
170170
alignment_engines_(), sequences_(), dummy_quality_(window_length, '!'),
171171
window_length_(window_length), windows_(),
172172
thread_pool_(thread_pool::createThreadPool(num_threads)),
173-
thread_to_id_(), logger_(new logger::Logger()) {
173+
thread_to_id_(), logger_(new Logger()) {
174174

175175
uint32_t id = 0;
176176
for (const auto& it: thread_pool_->thread_identifiers()) {

src/polisher.hpp

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,15 +25,13 @@ namespace spoa {
2525
class AlignmentEngine;
2626
}
2727

28-
namespace logger {
29-
class Logger;
30-
}
3128

3229
namespace racon {
3330

3431
class Sequence;
3532
class Overlap;
3633
class Window;
34+
class Logger;
3735

3836
enum class PolisherType {
3937
kC, // Contig polishing
@@ -95,7 +93,7 @@ class Polisher {
9593
std::unique_ptr<thread_pool::ThreadPool> thread_pool_;
9694
std::unordered_map<std::thread::id, uint32_t> thread_to_id_;
9795

98-
std::unique_ptr<logger::Logger> logger_;
96+
std::unique_ptr<Logger> logger_;
9997
};
10098

10199
}

vendor/logger

Lines changed: 0 additions & 1 deletion
This file was deleted.

0 commit comments

Comments
 (0)