23 */ |
23 */ |
24 |
24 |
25 #ifndef SHARE_JFR_RECORDER_REPOSITORY_JFRCHUNKSTATE_HPP |
25 #ifndef SHARE_JFR_RECORDER_REPOSITORY_JFRCHUNKSTATE_HPP |
26 #define SHARE_JFR_RECORDER_REPOSITORY_JFRCHUNKSTATE_HPP |
26 #define SHARE_JFR_RECORDER_REPOSITORY_JFRCHUNKSTATE_HPP |
27 |
27 |
28 #include "jni.h" |
|
29 #include "jfr/utilities/jfrAllocation.hpp" |
28 #include "jfr/utilities/jfrAllocation.hpp" |
30 #include "jfr/utilities/jfrTypes.hpp" |
29 #include "jfr/utilities/jfrTypes.hpp" |
31 |
30 |
32 class JfrChunkState : public JfrCHeapObj { |
31 class JfrChunkState : public JfrCHeapObj { |
33 friend class JfrChunkWriter; |
32 friend class JfrChunkWriter; |
34 private: |
33 private: |
35 char* _path; |
34 char* _path; |
36 jlong _start_ticks; |
35 int64_t _start_ticks; |
37 jlong _start_nanos; |
36 int64_t _start_nanos; |
38 jlong _previous_start_ticks; |
37 int64_t _previous_start_ticks; |
39 jlong _previous_start_nanos; |
38 int64_t _previous_start_nanos; |
40 jlong _previous_checkpoint_offset; |
39 int64_t _previous_checkpoint_offset; |
41 |
40 |
42 void update_start_ticks(); |
41 void update_start_ticks(); |
43 void update_start_nanos(); |
42 void update_start_nanos(); |
44 void save_current_and_update_start_ticks(); |
43 void save_current_and_update_start_ticks(); |
45 void save_current_and_update_start_nanos(); |
44 void save_current_and_update_start_nanos(); |
46 |
45 |
47 JfrChunkState(); |
46 JfrChunkState(); |
48 ~JfrChunkState(); |
47 ~JfrChunkState(); |
49 void reset(); |
48 void reset(); |
50 jlong previous_checkpoint_offset() const; |
49 int64_t previous_checkpoint_offset() const; |
51 void set_previous_checkpoint_offset(jlong offset); |
50 void set_previous_checkpoint_offset(int64_t offset); |
52 jlong previous_start_ticks() const; |
51 int64_t previous_start_ticks() const; |
53 jlong previous_start_nanos() const; |
52 int64_t previous_start_nanos() const; |
54 jlong last_chunk_duration() const; |
53 int64_t last_chunk_duration() const; |
55 void update_time_to_now(); |
54 void update_time_to_now(); |
56 void set_path(const char* path); |
55 void set_path(const char* path); |
57 const char* path() const; |
56 const char* path() const; |
58 }; |
57 }; |
59 |
58 |