/* See basis1d.h */ /* Last edited on 2007-12-26 15:21:08 by stolfi */ #include #include #include #include #include #include #include /* INTERNAL PROTOTYPES */ /* IMPLEMENTATIONS */ char *b1d_kind_tag(b1d_kind_t bkind) { switch (bkind) { case b1d_kind_POLY: return "POLY"; case b1d_kind_TRIG: return "TRIG"; default: demand(FALSE, "bad basis kind"); return NULL; /* To keep the compiler happy. */ } } void b1d_family_print(FILE *wr, b1d_family_t *fam) { fprintf(wr, "kind = %d (%s)", fam->bkind, b1d_kind_tag(fam->bkind)); fprintf(wr, " g = %d c = %d", fam->g, fam->c); } b1d_mother_num_t b1d_family_num(b1d_family_t *fam) { switch (fam->bkind) { case b1d_kind_POLY: return fam->g + 1; case b1d_kind_TRIG: return 2*fam->g + 1; default: demand(FALSE, "bad basis kind"); return 1; /* To keep the compiler happy. */ } }