QNLP  v1.0
QNLP.encoding.gray.GrayEncoder Class Reference
Inheritance diagram for QNLP.encoding.gray.GrayEncoder:
Inheritance graph
Collaboration diagram for QNLP.encoding.gray.GrayEncoder:
Collaboration graph

Public Member Functions

def encode (self, ctypes.c_uint bin_val)
 
def decode (self, ctypes.c_uint bin_val)
 
def encode (self, bin_val)
 
def decode (self, bin_val)
 

Detailed Description

Adapated from example on https://en.wikipedia.org/wiki/Gray_code

Definition at line 4 of file gray.py.

Member Function Documentation

◆ decode() [1/2]

def QNLP.encoding.gray.GrayEncoder.decode (   self,
ctypes.c_uint  bin_val 
)

Definition at line 11 of file gray.py.

11  def decode(self, bin_val : ctypes.c_uint):
12  bitmask = bin_val >> 1
13  val = bin_val
14  while bitmask != 0:
15  val = val ^ bitmask
16  bitmask = bitmask >> 1
17  return val

◆ decode() [2/2]

def QNLP.encoding.encoder_base.EncoderBase.decode (   self,
  bin_val 
)
inherited

Reimplemented in QNLP.encoding.obrien.OBrienEncoder.

Definition at line 13 of file encoder_base.py.

13  def decode(self, bin_val):
14  pass

◆ encode() [1/2]

def QNLP.encoding.gray.GrayEncoder.encode (   self,
ctypes.c_uint  bin_val 
)

Definition at line 8 of file gray.py.

8  def encode(self, bin_val : ctypes.c_uint):
9  return bin_val ^ ( bin_val >> 1)
10 

◆ encode() [2/2]

def QNLP.encoding.encoder_base.EncoderBase.encode (   self,
  bin_val 
)
inherited

Reimplemented in QNLP.encoding.obrien.OBrienEncoder.

Definition at line 9 of file encoder_base.py.

9  def encode(self, bin_val):
10  pass
11 

The documentation for this class was generated from the following file: