#define CHAZ_USE_SHORT_NAMES
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "Charmonizer/Probe.h"
#include "Charmonizer/Core/HeadCheck.h"
#include "Charmonizer/Core/ModHandler.h"
#include "Charmonizer/Core/Util.h"
#include "Charmonizer/Core/Compiler.h"
#include "Charmonizer/Core/OperSys.h"
void
chaz_Probe_init(const char *osname, const char *cc_command,
const char *cc_flags, const char *charmony_start)
{
/* create os and compiler objects */
os = OS_new(osname);
compiler = CC_new(os, cc_command, cc_flags);
/* dispatch other tasks */
ModHand_init();
HeadCheck_init();
ModHand_open_charmony_h(charmony_start);
if (verbosity)
printf("Initialization complete.\n");
}
void
chaz_Probe_clean_up()
{
if (verbosity)
printf("Cleaning up...\n");
/* dispatch ModHandler's clean up routines, destroy objects */
ModHand_clean_up();
os->destroy(os);
compiler->destroy(compiler);
if (verbosity)
printf("Cleanup complete.\n");
}
void
chaz_Probe_set_verbosity(int level)
{
verbosity = level;
}
char*
chaz_Probe_slurp_file(char* filepath, size_t *len_ptr) {
return slurp_file(filepath, len_ptr);
}
FILE*
chaz_Probe_get_charmony_fh(void)
{
return charmony_fh;
}
/* Copyright 2006-2007 Marvin Humphrey
*
* This program is free software; you can redistribute it and/or modify
* under the same terms as Perl itself.
*/