# functions to be exported
export(
  
  # core functions and aliases
  createAlgorithm, monanAlgorithmCreate,
  createEdgelist, monanDependent, 
  createEffectsObject, createEffects, addEffect,
  createNetwork, dyadicCovar,
  createNodeSet, monanNodes, monanEdges,
  createNodeVariable, monadicCovar,
  createProcessState, monanDataCreate,
  createWeightedCache,
  estimateMobilityNetwork, estimateDistributionNetwork, monan07, monanEstimate,
  simulateMobilityNetworks, simulateDistributionNetworks, monanSimulate,
  
  # auxiliary functions
  autoCorrelationTest, extractTraces, 
  getMultinomialStatistics, 
  gofDistributionNetwork, gofMobilityNetwork, monanGOF,
  plot.gof.stats.monan, 
  plot.traces.monan, print.result.monan, print.scoretest.monan, scoreTest,
  print.processState.monan, print.effectsList.monan,
  
  # test functions
  target_change_match,
  test_effect,
  
  # effect functions: exogenous
  alter_covariate, dyadic_covariate,
  dyadic_covariate_resource_attribute,
  resource_covar_to_node_covar, 
  same_covariate, sim_covariate,
  
  # effect functions: loops
  loops, loops_GW, loops_AC,
  loops_node_covar, 
  loops_resource_covar_node_covar, loops_resource_covar,
  loops_additional_origin,
  loops_x_loops_additional_origin,

  # effect functions: concentration
  concentration_basic, 
  concentration_AC, concentration_AC_dyad_covar,
  concentration_AC_resource_covar_bin,
  concentration_GW, concentration_GW_dyad_covar,
  concentration_GW_resource_covar_bin,
  concentration_prop, concentration_prop_orig_cov, concentration_rankGW,
  concentration_basic_squared,
  concentration_norm, 
  concentration_norm_squared,

  # effect functions: reciprocity
  reciprocity_basic,
  reciprocity_min, reciprocity_min_resource_covar, reciprocity_min_dyad_covar,
  reciprocity_GW, reciprocity_GW_dyad_covar_bin, reciprocity_GW_dyad_covar,
  reciprocity_AC, reciprocity_AC_dyad_covar_bin, reciprocity_AC_dyad_covar,
  
  # effect functions: transitivity
  transitivity_basic, transitivity_min, transitivity_netflow, 
  transitivity_GW,
  transitivity_AC,
  triad120D, triad120U, triad120C,
  
  # effect functions: endogeneous covariate based
  crowding_out_prop_covar_bin, staying_by_prop_bin_inflow, 
  joining_similar_avoiding_dissimilar_covar_bin,
  joining_similar_avoiding_dissimilar_covar_cont,
  avoiding_dissimilar_covar_bin,
  avoiding_dissimilar_covar_cont,
  
  # effect functions: other
  in_ties_loops, in_weights_exponent, 
  in_weights_GW,
  in_weights_AC,
  present_relations,  

  # gof param functions
  getIndegree, getTieWeights
)

importFrom("graphics", "boxplot", "lines")
importFrom("stats", "as.formula", "ecdf", "pnorm", "runif", "sd", "dist")
importFrom("methods", "is")
importFrom("snowfall", "sfInit", "sfExport", "sfLapply", "sfLibrary", "sfStop")

# S3 methods
S3method(print, result.monan)
S3method(plot, traces.monan)
S3method(plot, gof.stats.monan)
S3method(print, scoretest.monan)
S3method(print, processState.monan)
S3method(print, effectsList.monan)
