Class: Sigma::PoPowHeader
- Inherits:
-
Object
- Object
- Sigma::PoPowHeader
- Extended by:
- FFI::Library
- Defined in:
- lib/sigma/nipopow.rb
Instance Attribute Summary collapse
-
#pointer ⇒ Object
Returns the value of attribute pointer.
Class Method Summary collapse
Instance Method Summary collapse
Instance Attribute Details
#pointer ⇒ Object
Returns the value of attribute pointer.
105 106 107 |
# File 'lib/sigma/nipopow.rb', line 105 def pointer @pointer end |
Class Method Details
.with_json(json) ⇒ Object
107 108 109 110 111 112 |
# File 'lib/sigma/nipopow.rb', line 107 def self.with_json(json) pointer = FFI::MemoryPointer.new(:pointer) error = ergo_lib_popow_header_from_json(json, pointer) Util.check_error!(error) init(pointer) end |
Instance Method Details
#==(other_header) ⇒ Object
138 139 140 |
# File 'lib/sigma/nipopow.rb', line 138 def ==(other_header) ergo_lib_po_pow_header_eq(self.pointer, other_header.pointer) end |
#get_header ⇒ Object
124 125 126 127 128 129 |
# File 'lib/sigma/nipopow.rb', line 124 def get_header pointer = FFI::MemoryPointer.new(:pointer) error = ergo_lib_popow_header_get_header(self.pointer, pointer) Util.check_error!(error) BlockHeader.with_raw_pointer(pointer) end |
#get_interlinks ⇒ Object
131 132 133 134 135 136 |
# File 'lib/sigma/nipopow.rb', line 131 def get_interlinks pointer = FFI::MemoryPointer.new(:pointer) error = ergo_lib_popow_header_get_interlinks(self.pointer, pointer) Util.check_error!(error) BlockIds.with_raw_pointer(pointer) end |
#to_json ⇒ Object
114 115 116 117 118 119 120 121 122 |
# File 'lib/sigma/nipopow.rb', line 114 def to_json s_ptr = FFI::MemoryPointer.new(:pointer, 1) error = ergo_lib_popow_header_to_json(self.pointer, s_ptr) Util.check_error!(error) s_ptr = s_ptr.read_pointer() str = s_ptr.read_string().force_encoding('UTF-8') Util.ergo_lib_delete_string(s_ptr) str end |