-// friends
-
- friend color color_ONE(unsigned rl);
- friend color color_T(const ex & a, unsigned rl);
- friend color color_f(const ex & a, const ex & b, const ex & c);
- friend color color_d(const ex & a, const ex & b, const ex & c);
- friend ex color_h(const ex & a, const ex & b, const ex & c);
- friend color color_delta8(const ex & a, const ex & b);
- friend unsigned subs_index_in_exvector(exvector & v, const ex & is, const ex & ir);
- friend void split_color_string_in_parts(const exvector & v, exvector & delta8vec,
- exvector & fvec, exvector & dvec,
- exvectorvector & Tvecs,
- exvectorvector & ONEvecs,
- exvector & unknownvec);
- friend exvector recombine_color_string(exvector & delta8vec, exvector & fvec,
- exvector & dvec, exvectorvector & Tvecs,
- exvectorvector & ONEvecs, exvector & unknownvec);
- friend ex color_trace_of_one_representation_label(const exvector & v);
- friend ex color_trace(const exvector & v, unsigned rl);
- friend ex simplify_pure_color_string(const ex & e);
- friend ex simplify_color(const ex & e);
-
-// types
-
-public:
- /** Type of object */
- typedef enum {
- invalid, /**< not properly constructed */
- color_T, /**< one of the generators T_a of SU(3) (these are non-commutative) */
- color_f, /**< one of the antisymmetric structure constants f_abc of SU(3) */
- color_d, /**< one of the symmetric structure constants d_abc of SU(3) */
- color_delta8, /**< the unity matrix */
- color_ONE /**< the unity element of su(3) */
- } color_types;
-
-// member functions
-
- // default constructor, destructor, copy constructor assignment operator and helpers