class_docstr: Class to collect NinJo tags.
  
  This class is used by :class:`NinJoGeoTIFFWriter` to collect NinJo tags.
  Most end-users will not need to create instances of this class directly.
  
  Tags are gathered from three sources:
  
  - Fixed tags, contained in the attribute ``fixed_tags``.  The value of
    those tags is hardcoded and never changes.
  - Tags passed by the user, contained in the attribute ``passed_tags``.
    Those tags must be passed by the user as arguments to the writer, which
    will pass them on when instantiating this class.
  - Tags calculated from data and metadata.  Those tags are defined in the
    attribute ``dynamic_tags``.  They are either calculated from image data,
    from image metadata, or from arguments passed by the user to the writer.
  
  Some tags are mandatory (defined in ``mandatory_tags``).  All tags that are
  not mandatory are optional.  By default, optional tags are generated if and
  only if the required information is available.
class_docstr_tok: ["Class","to","collect","NinJo","tags",".","This","class","is","used","by",":","class",":","`","NinJoGeoTIFFWriter","`","to","collect","NinJo","tags",".","Most","end-users","will","not","need","to","create","instances","of","this","class","directly",".","Tags","are","gathered","from","three","sources",":","-","Fixed","tags",",","contained","in","the","attribute","``","fixed_tags","``",".","The","value","of","those","tags","is","hardcoded","and","never","changes",".","-","Tags","passed","by","the","user",",","contained","in","the","attribute","``","passed_tags","``",".","Those","tags","must","be","passed","by","the","user","as","arguments","to","the","writer",",","which","will","pass","them","on","when","instantiating","this","class",".","-","Tags","calculated","from","data","and","metadata",".","Those","tags","are","defined","in","the","attribute","``","dynamic_tags","``",".","They","are","either","calculated","from","image","data",",","from","image","metadata",",","or","from","arguments","passed","by","the","user","to","the","writer",".","Some","tags","are","mandatory","(","defined","in","``","mandatory_tags","``",")",".","All","tags","that","are","not","mandatory","are","optional",".","By","default",",","optional","tags","are","generated","if","and","only","if","the","required","information","is","available","."]
docstr: Get reference latitude two.
  
  This is not implemented and never was correctly implemented in
  pyninjotiff either.  It doesn't appear to be used by NinJo.
docstr_tok: ["Get","reference","latitude","two",".","This","is","not","implemented","and","never","was","correctly","implemented","in","pyninjotiff","either",".","It","does","n't","appear","to","be","used","by","NinJo","."]
code: def get_ref_lat_2(self):
      """Get reference latitude two.
  
      This is not implemented and never was correctly implemented in
      pyninjotiff either.  It doesn't appear to be used by NinJo.
      """
      raise NotImplementedError(
          "Second reference latitude not implemented."
      )
  
imports: import copy
  import datetime
  import logging
  import numpy
  from .geotiff import GeoTIFFWriter
label_desc: Use image node_id 20 for calling the NinJoTagGenerator obj's underlying member method code with example usage: obj.get_ref_lat_2() without return types