#!/bin/bash
#

rm /tmp/dbjoin.define /tmp/dbjoin.nutname /tmp/dbjoin.unit > /dev/null 2>&1
echo "/* nut.h */" > nut.h
cat blurb >> nut.h

echo "/* lookup.h */" > lookup.h
cat blurb >> lookup.h

cut NUTR_DEF.txt -f1,3 -d"^" >> /tmp/dbjoin.define
echo "~-1~ ~PROT_KCAL~" >> /tmp/dbjoin.define
echo "~-1~ ~FAT_KCAL~" >> /tmp/dbjoin.define
echo "~-1~ ~CHO_KCAL~" >> /tmp/dbjoin.define
echo "~-1~ ~CHO_NONFIB~" >> /tmp/dbjoin.define
echo "~-1~ ~LA~" >> /tmp/dbjoin.define
echo "~-1~ ~AA~" >> /tmp/dbjoin.define
echo "~-1~ ~ALA~" >> /tmp/dbjoin.define
echo "~-1~ ~EPA~" >> /tmp/dbjoin.define
echo "~-1~ ~DHA~" >> /tmp/dbjoin.define
echo "~-1~ ~OMEGA6~" >> /tmp/dbjoin.define
echo "~-1~ ~SHORT6~" >> /tmp/dbjoin.define
echo "~-1~ ~LONG6~" >> /tmp/dbjoin.define
echo "~-1~ ~OMEGA3~" >> /tmp/dbjoin.define
echo "~-1~ ~SHORT3~" >> /tmp/dbjoin.define
echo "~-1~ ~LONG3~" >> /tmp/dbjoin.define
echo "~-1~ ~VITE~" >> /tmp/dbjoin.define
cat /tmp/dbjoin.define | tr -d "~" | tr "^" " " |
{
num=0
while read nutrno nutdef
do
[ $num -eq 13 ] && nutdef=ADPROT
[ $num -eq 40 ] && nutdef=VITD_BOTH
[ $num -eq 86 ] && nutdef=VITE_ADDED
[ $num -eq 87 ] && nutdef=VITB12_ADDED
[ $num -eq 125 ] && nutdef=F18D2T
[ $num -eq 126 ] && nutdef=F18D2I
[ $num -eq 146 ] && nutdef=F18D3I
[ "$nutdef" == "VITD-" ] && nutdef=VITD
[ "$nutdef" == "LUT+ZEA" ] && nutdef=LUT_ZEA
echo "#define" $nutdef $num >> nut.h
if [ "$nutrno" != "-1" ] 
 then 
 echo "LookupNutrNo[${num}] = ${nutrno};" >> lookup.h
 echo "LookupNut[${nutrno}] = ${num};" >> lookup.h
 bigno=${nutrno}
 fi
num=$(($num+1))
done
echo "" >> nut.h
echo "#define NUTRIENT_COUNT ${num}" >> nut.h
echo "#define DERIVED 16" >> nut.h
echo "#define NUTRNO_ARRAYSIZE $((${bigno}+1))" >> nut.h
}

echo "/* nutrient.h */" > nutrient.h
cat blurb >> nutrient.h

cut NUTR_DEF.txt -f4 -d"^" >> /tmp/dbjoin.nutname
echo "~Protein Calories~" >> /tmp/dbjoin.nutname
echo "~Fat Calories~" >> /tmp/dbjoin.nutname
echo "~Carb Calories~" >> /tmp/dbjoin.nutname
echo "~Non-Fiber Carb~" >> /tmp/dbjoin.nutname
echo "~LA~" >> /tmp/dbjoin.nutname
echo "~AA~" >> /tmp/dbjoin.nutname
echo "~ALA~" >> /tmp/dbjoin.nutname
echo "~EPA~" >> /tmp/dbjoin.nutname
echo "~DHA~" >> /tmp/dbjoin.nutname
echo "~Omega-6~" >> /tmp/dbjoin.nutname
echo "~Short-chain Omega-6~" >> /tmp/dbjoin.nutname
echo "~Long-chain Omega-6~" >> /tmp/dbjoin.nutname
echo "~Omega-3~" >> /tmp/dbjoin.nutname
echo "~Short-chain Omega-3~" >> /tmp/dbjoin.nutname
echo "~Long-chain Omega-3~" >> /tmp/dbjoin.nutname
echo "~Vitamin E~" >> /tmp/dbjoin.nutname
cat /tmp/dbjoin.nutname | tr "\n" "," | tr "~" '"' | sed -e "s/^/char *Nutrient[] = {/" | sed -e "s/,$/};/" | sed -f preprocess/namedits >> nutrient.h
echo "" >> nutrient.h
echo "" >> nutrient.h

cut NUTR_DEF.txt -f2 -d"^" >> /tmp/dbjoin.unit
echo "~kc~" >> /tmp/dbjoin.unit
echo "~kc~" >> /tmp/dbjoin.unit
echo "~kc~" >> /tmp/dbjoin.unit
echo "~g~" >> /tmp/dbjoin.unit
echo "~g~" >> /tmp/dbjoin.unit
echo "~g~" >> /tmp/dbjoin.unit
echo "~g~" >> /tmp/dbjoin.unit
echo "~g~" >> /tmp/dbjoin.unit
echo "~g~" >> /tmp/dbjoin.unit
echo "~g~" >> /tmp/dbjoin.unit
echo "~g~" >> /tmp/dbjoin.unit
echo "~g~" >> /tmp/dbjoin.unit
echo "~g~" >> /tmp/dbjoin.unit
echo "~g~" >> /tmp/dbjoin.unit
echo "~g~" >> /tmp/dbjoin.unit
echo "~IU~" >> /tmp/dbjoin.unit
cat /tmp/dbjoin.unit | tr "\n" "," | tr "~" '"' | sed -e "s/^/char *Unit[] = {/" | sed -e "s/,$/};/" | sed -f preprocess/namedits >> nutrient.h
echo "" >> nutrient.h
echo "" >> nutrient.h
rm /tmp/dbjoin.define /tmp/dbjoin.nutname /tmp/dbjoin.unit > /dev/null 2>&1

echo "/* fdgrp.h */" > fdgrp.h
cat blurb >> fdgrp.h
cat FD_GROUP.txt | sed -e "s/American Indian\/Alaska Native Foods/Am. Indian\/Alaska Native Foods/" > /tmp/dbjoin.fdgrp
echo "~0000~^~Added Recipes and Labeled Foods~" >> /tmp/dbjoin.fdgrp
echo "~2300~^~~" >> /tmp/dbjoin.fdgrp
echo "~2400~^~~" >> /tmp/dbjoin.fdgrp
echo "~2600~^~~" >> /tmp/dbjoin.fdgrp
echo "~2700~^~~" >> /tmp/dbjoin.fdgrp
echo "~2800~^~~" >> /tmp/dbjoin.fdgrp
echo "~2900~^~~" >> /tmp/dbjoin.fdgrp
echo "~3000~^~~" >> /tmp/dbjoin.fdgrp
echo "~3100~^~~" >> /tmp/dbjoin.fdgrp
echo "~3200~^~~" >> /tmp/dbjoin.fdgrp
echo "~3300~^~~" >> /tmp/dbjoin.fdgrp
echo "~3400~^~~" >> /tmp/dbjoin.fdgrp
cat /tmp/dbjoin.fdgrp | sort | cut -f2 -d"^" | tr "\n" "," | tr "~" '"' | tr -d "\r" | sed -e "s/^/char *FdGrp[] = {/" | sed -e "s/,$/};/" >> fdgrp.h
echo "" >> fdgrp.h
echo "#define FD_GRP_COUNT ""`( echo "0" ; cat FD_GROUP.txt ) | wc -l`" >> fdgrp.h
( echo "~0000~^" ; cat FD_GROUP.txt ) | sort | cut -f1 -d"^" | tr -d "~" | cut -c-2 | sed -e "s/^0//" | tr "\n" "," | sed -e "s/^/int FdGrpMap[FD_GRP_COUNT] = {/" | sed -e "s/,$/};/" >> fdgrp.h
echo "" >> fdgrp.h
echo "" >> fdgrp.h
rm /tmp/dbjoin.define /tmp/dbjoin.nutname /tmp/dbjoin.unit /tmp/dbjoin.fdgrp > /dev/null 2>&1
