When you derive from a KcsProfile class and create a KcsProfile instance you must provide these mandatory external entry points:
extern long KcsDLOpen ProfCount; KcsProfile * KcsCreateProf(KcsStatus *sStat, KcsIO *aIO); KcsProfile * KcsCreateProBlnk(KcsStatus *aStat, KcsId aCmmID, KcsVersion aCmmVersion, KcsId aProfId, KcsVersion aProfVersion);
The KcsCreateProf() entry point creates an instance of a KcsProfile derivative that is determined by the profile's CMM Id within aIO.
The KcsCreateProfBlnk() entry point creates an instance of a KcsProfile derivative that is determined by aCmmID and aCmmVersion. This is how an empty profile is created from scratch. The aProfId argument specifies which KcsProfileFormat derivative to use.