class_docstr: A library of flowchart Node types. Custom libraries may be built to provide 
  each flowchart with a specific set of allowed Node types.
class_docstr_tok: ["A","library","of","flowchart","Node","types",".","Custom","libraries","may","be","built","to","provide","each","flowchart","with","a","specific","set","of","allowed","Node","types","."]
docstr: Register a new node type. If the type's name is already in use,
  an exception will be raised (unless override=True).
  
  ============== =========================================================
  **Arguments:**
  
  nodeClass      a subclass of Node (must have typ.nodeName)
  paths          list of tuples specifying the location(s) this 
                 type will appear in the library tree.
  override       if True, overwrite any class having the same name
  ============== =========================================================
docstr_tok: ["Register","a","new","node","type",".","If","the","type","'s","name","is","already","in","use",",","an","exception","will","be","raised","(","unless","override=True",")",".","==============","=========================================================","*","*","Arguments",":","*","*","nodeClass","a","subclass","of","Node","(","must","have","typ.nodeName",")","paths","list","of","tuples","specifying","the","location","(","s",")","this","type","will","appear","in","the","library","tree",".","override","if","True",",","overwrite","any","class","having","the","same","name","==============","========================================================="]
code: def addNodeType(self, nodeClass, paths, override=False):
      """
      Register a new node type. If the type's name is already in use,
      an exception will be raised (unless override=True).
  
      ============== =========================================================
      **Arguments:**
  
      nodeClass      a subclass of Node (must have typ.nodeName)
      paths          list of tuples specifying the location(s) this
                     type will appear in the library tree.
      override       if True, overwrite any class having the same name
      ============== =========================================================
      """
      if not isNodeClass(nodeClass):
          raise Exception(
              "Object %s is not a Node subclass" % str(nodeClass)
          )
  
      name = nodeClass.nodeName
      if not override and name in self.nodeList:
          raise Exception(
              "Node type name '%s' is already registered." % name
          )
  
      self.nodeList[name] = nodeClass
      for path in paths:
          root = self.nodeTree
          for n in path:
              if n not in root:
                  root[n] = OrderedDict()
              root = root[n]
          root[name] = nodeClass
  
file_path: pyqtgraph/pyqtgraph/flowchart/NodeLibrary.py
imports: from collections import OrderedDict
  from .Node import Node
label_desc: Use image node_id 2 for calling the NodeLibrary obj's underlying member method code with example usage: obj.addNodeType(nodeClass, paths, override) without return types