class_docstr: BaseTransform subclass that performs a sequence of transformations in
  order. Internally, this class uses shaders.FunctionChain to generate
  its glsl_map and glsl_imap functions.
  
  Parameters
  ----------
  transforms : list of BaseTransform instances
      See ``transforms`` property.
class_docstr_tok: ["BaseTransform","subclass","that","performs","a","sequence","of","transformations","in","order",".","Internally",",","this","class","uses","shaders.FunctionChain","to","generate","its","glsl_map","and","glsl_imap","functions",".","Parameters","--","--","--","--","--","transforms",":","list","of","BaseTransform","instances","See","``","transforms","``","property","."]
code: def __str__(self):
      names = [tr.__class__.__name__ for tr in self.transforms]
      return "<ChainTransform [%s] at 0x%x>" % (
          ", ".join(names),
          id(self),
      )
  
imports: from __future__ import division
  from ..shaders import FunctionChain
  from .base_transform import BaseTransform
  from .linear import NullTransform
label_desc: Use image node_id 20 for calling the ChainTransform obj's underlying member method code with example usage: obj.__str__() and returns: unknown