本文整理汇总了C++中selector函数 的典型用法代码示例。如果您正苦于以下问题:C++ selector函数的具体用法?C++ selector怎么用?C++ selector使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了selector函数 的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: set
void InterpretedIC::clear_without_deallocation_pic() {
if (is_empty()) return;
set(Bytecodes::original_send_code_for(send_code()), oop(selector()), smiOop_zero);
}
开发者ID:jirkadanek, 项目名称:Strongtalk, 代码行数:4, 代码来源:interpretedIC.cpp
示例2: moveRobot
void ControllerDuty::moveRobot(robot_t& robot, float t)
{
size_t leg = 0;
for (size_t i = 0; i < robot->servos().size(); i+=3)
{
// std::cout<<"dans move"<<std::endl;
for (int j=0;j<_brokenLegs.size();j++)
{
if (leg==_brokenLegs[j])
{
leg++;
if (_brokenLegs.size()>j+1 && _brokenLegs[j+1]!=leg)
break;
}
}
robot->servos()[i]->set_angle(0,M_PI/8*selector(leg)[0][((int)floor(t*100))%100]); // marche que pour ARRAY_DIM =100
robot->servos()[i+1]->set_angle(0,M_PI/4*selector(leg)[1][((int)floor(t*100))%100]); // marche que pour ARRAY_DIM =100
robot->servos()[i+2]->set_angle(0,-M_PI/4*selector(leg)[2][((int)floor(t*100))%100]); // marche que pour ARRAY_DIM =100
/*
switch(leg)
{
case 0:
robot->servos()[i]->set_angle(0,M_PI/8*_legs0commands[0][((int)floor(t*100))%100]); // marche que pour ARRAY_DIM =100
robot->servos()[i+1]->set_angle(0,M_PI/4*_legs0commands[1][((int)floor(t*100))%100]); // marche que pour ARRAY_DIM =100
robot->servos()[i+2]->set_angle(0,-M_PI/4*_legs0commands[2][((int)floor(t*100))%100]); // marche que pour ARRAY_DIM =100
break;
case 1:
robot->servos()[i]->set_angle(0,M_PI/8*_legs1commands[0][((int)floor(t*100))%100]); // marche que pour ARRAY_DIM =100
robot->servos()[i+1]->set_angle(0,M_PI/4*_legs1commands[1][((int)floor(t*100))%100]); // marche que pour ARRAY_DIM =100
robot->servos()[i+2]->set_angle(0,-M_PI/4*_legs1commands[2][((int)floor(t*100))%100]); // marche que pour ARRAY_DIM =100
break;
case 2:
robot->servos()[i]->set_angle(0,M_PI/8*_legs2commands[0][((int)floor(t*100))%100]); // marche que pour ARRAY_DIM =100
robot->servos()[i+1]->set_angle(0,M_PI/4*_legs2commands[1][((int)floor(t*100))%100]); // marche que pour ARRAY_DIM =100
robot->servos()[i+2]->set_angle(0,-M_PI/4*_legs2commands[2][((int)floor(t*100))%100]); // marche que pour ARRAY_DIM =100
break;
case 3:
robot->servos()[i]->set_angle(0,M_PI/8*_legs3commands[0][((int)floor(t*100))%100]); // marche que pour ARRAY_DIM =100
robot->servos()[i+1]->set_angle(0,M_PI/4*_legs3commands[1][((int)floor(t*100))%100]); // marche que pour ARRAY_DIM =100
robot->servos()[i+2]->set_angle(0,-M_PI/4*_legs3commands[2][((int)floor(t*100))%100]); // marche que pour ARRAY_DIM =100
break;
case 4:
robot->servos()[i]->set_angle(0,M_PI/8*_legs4commands[0][((int)floor(t*100))%100]); // marche que pour ARRAY_DIM =100
robot->servos()[i+1]->set_angle(0,M_PI/4*_legs4commands[1][((int)floor(t*100))%100]); // marche que pour ARRAY_DIM =100
robot->servos()[i+2]->set_angle(0,-M_PI/4*_legs4commands[2][((int)floor(t*100))%100]); // marche que pour ARRAY_DIM =100
break;
case 5:
robot->servos()[i]->set_angle(0,M_PI/8*_legs5commands[0][((int)floor(t*100))%100]); // marche que pour ARRAY_DIM =100
robot->servos()[i+1]->set_angle(0,M_PI/4*_legs5commands[1][((int)floor(t*100))%100]); // marche que pour ARRAY_DIM =100
robot->servos()[i+2]->set_angle(0,-M_PI/4*_legs5commands[2][((int)floor(t*100))%100]); // marche que pour ARRAY_DIM =100
break;
}
*/
++leg;
}
}
开发者ID:resibots, 项目名称:tarapore_2016_gecco, 代码行数:70, 代码来源:controllerDuty.cpp
示例3: main
//.........这里部分代码省略.........
boost::shared_ptr<edm::ParameterSet> parameterSet = processDesc->getProcessPSet () ;
edm::ParameterSet subPSetSelections = parameterSet->getParameter<edm::ParameterSet> ("Selections") ;
g_ID1 = subPSetSelections.getUntrackedParameter<int> ("g_ID1",0) ;
g_ID2 = subPSetSelections.getUntrackedParameter<int> ("g_ID2",0) ;
g_ISO1[0] = subPSetSelections.getUntrackedParameter<int> ("g_ISO1_0",0) ;
g_ISO1[1] = subPSetSelections.getUntrackedParameter<int> ("g_ISO1_1",0) ;
g_ISO2[0] = subPSetSelections.getUntrackedParameter<int> ("g_ISO2_0",0) ;
g_ISO2[1] = subPSetSelections.getUntrackedParameter<int> ("g_ISO2_1",0) ;
g_IsoElectron = subPSetSelections.getUntrackedParameter<double> ("g_IsoElectron",0.2) ;
g_IsoMuon = subPSetSelections.getUntrackedParameter<double> ("g_IsoMuon",0.2) ;
g_ojetPtMin = subPSetSelections.getUntrackedParameter<double> ("g_ojetPtMin",0) ;
g_ojetEtaMax = subPSetSelections.getUntrackedParameter<double> ("g_ojetEtaMax",5.) ;
g_prefix = subPSetSelections.getUntrackedParameter<std::string> ("g_prefix","pluto") ;
// int i = 0;
g_cutsNum = 23 ;
g_cutsNum += 1 ; //PG one for the counting before cuts,
g_cutsNum += 1 ; //PG one for the request of having two tag jets
g_cutsNum += 1 ; //PG num of electrons
g_cutsNum -= 3 ; //VT i 4 tagli dell'eleid valgono come 1
g_cutsNum -= 2 ; //VT u 3 tagli sugli other jet valgono come 1
g_prefix = subPSetSelections.getUntrackedParameter<std::string> ("g_prefix","pluto") ;
g_KindOfJet = subPSetSelections.getUntrackedParameter<std::string> ("g_KindOfJet","otherJets_IterativeCone5CaloJets") ;
//---- input file ----
edm::ParameterSet subPSetInput = parameterSet->getParameter<edm::ParameterSet> ("inputTree") ;
std::vector<std::string> inputFiles = subPSetInput.getParameter<std::vector<std::string> > ("g_sample") ;
g_number_of_samples = subPSetInput.getUntrackedParameter<int> ("g_number_of_samples",0) ;
g_numSignal = subPSetInput.getUntrackedParameter<int> ("g_numSignal",1) ;
g_directory = subPSetInput.getUntrackedParameter<std::string> ("g_directory","/media/amassiro/Data/SimpleTree_skipBadFiles_JetCorrector_JetCleaning_090328_Everything_Skimmed_4Cluster_AllJets") ;
g_output = subPSetInput.getUntrackedParameter<std::string> ("g_output","/tmp/amassiro/PLOT/new.root") ;
g_numJet = subPSetInput.getUntrackedParameter<int> ("g_numJet",6) ;
g_numEvents = subPSetInput.getUntrackedParameter<int> ("g_numEvents",-1) ;
char *samples[100];
int counter_files = 0;
for (std::vector<std::string>::const_iterator listIt = inputFiles.begin () ; (listIt != inputFiles.end () && counter_files<g_number_of_samples); ++listIt) {
samples[counter_files] = new char[100];
sprintf(samples[counter_files],"%s",listIt->c_str ());
std::cerr << "samples[" << counter_files << "] = " << samples[counter_files] << std::endl;
counter_files ++;
}
// ------------------------------------------------------------
g_OutputFile = new TFile(g_output.c_str(),"recreate");
// TFile g_OutputFile(g_output.c_str(),"recreate");
g_OutputFile->cd(0);
std::cerr << "******************* creating samples ****************" << std::endl;
for (int yy=0; yy<g_number_of_samples; yy++){
TChain * chain_ = new TChain ("ntpla/VBFSimpleTree") ;
char name_dir[1000];
sprintf(name_dir,"%s/VBF_SimpleTree_%s.root",g_directory.c_str(),samples[yy]);
chain_->Add (name_dir);
char name_histo[1000];
sprintf(name_histo,"%s_%s",g_prefix.c_str(),samples[yy]);
std::cerr << "******************* creating sample ****************" << std::endl;
std::cerr << "*** " << name_histo << " ***" << std::endl;
std::cerr << "*** " << samples[yy] << " ***" << std::endl;
histos h_chain_ (name_histo,g_cutsNum);
int if_signal = 0;
if (yy<g_numSignal) if_signal = 1;
selector (chain_, h_chain_,if_signal) ;
}
return 0 ;
}
开发者ID:Bicocca, 项目名称:UserCode, 代码行数:101, 代码来源:Flaggator_H4j.cpp
示例4: main
int main(int argc, char *argv[])
{
void (*selector)() = f1();
selector();
return 0;
}
开发者ID:gabrielix, 项目名称:varios, 代码行数:6, 代码来源:return_function_pointer.c
示例5: main
int main(int argc, char* argv[])
{
// Time measurement.
TimePeriod cpu_time;
cpu_time.tick();
// Load the mesh.
Mesh xmesh, ymesh, tmesh;
MeshReaderH2D mloader;
mloader.load("domain.mesh", &xmesh); // Master mesh.
// Initialize multimesh hp-FEM.
ymesh.copy(&xmesh); // Ydisp will share master mesh with xdisp.
tmesh.copy(&xmesh); // Temp will share master mesh with xdisp.
// Initialize boundary conditions.
BCTypes bc_types_x_y;
bc_types_x_y.add_bc_dirichlet(BDY_BOTTOM);
bc_types_x_y.add_bc_neumann(Hermes::vector<int>(BDY_SIDES, BDY_TOP, BDY_HOLES));
BCTypes bc_types_t;
bc_types_t.add_bc_dirichlet(BDY_HOLES);
bc_types_t.add_bc_neumann(Hermes::vector<int>(BDY_SIDES, BDY_TOP, BDY_BOTTOM));
// Enter Dirichlet boundary values.
BCValues bc_values_x_y;
bc_values_x_y.add_zero(BDY_BOTTOM);
BCValues bc_values_t;
bc_values_t.add_const(BDY_HOLES, TEMP_INNER);
// Create H1 spaces with default shapesets.
H1Space<double> xdisp(&xmesh, &bc_types_x_y, &bc_values_x_y, P_INIT_DISP);
H1Space<double> ydisp(MULTI ? &ymesh : &xmesh, &bc_types_x_y, &bc_values_x_y, P_INIT_DISP);
H1Space<double> temp(MULTI ? &tmesh : &xmesh, &bc_types_t, &bc_values_t, P_INIT_TEMP);
// Initialize the weak formulation.
WeakForm wf(3);
wf.add_matrix_form(0, 0, callback(bilinear_form_0_0));
wf.add_matrix_form(0, 1, callback(bilinear_form_0_1), HERMES_SYM);
wf.add_matrix_form(0, 2, callback(bilinear_form_0_2));
wf.add_matrix_form(1, 1, callback(bilinear_form_1_1));
wf.add_matrix_form(1, 2, callback(bilinear_form_1_2));
wf.add_matrix_form(2, 2, callback(bilinear_form_2_2));
wf.add_vector_form(1, callback(linear_form_1));
wf.add_vector_form(2, callback(linear_form_2));
wf.add_vector_form_surf(2, callback(linear_form_surf_2));
// Initialize coarse and reference mesh solutions.
Solution<double> xdisp_sln, ydisp_sln, temp_sln, ref_xdisp_sln, ref_ydisp_sln, ref_temp_sln;
// Initialize refinement selector.
H1ProjBasedSelector selector(CAND_LIST, CONV_EXP, H2DRS_DEFAULT_ORDER);
// Initialize views.
ScalarView s_view_0("Solution[xdisp]", new WinGeom(0, 0, 450, 350));
s_view_0.show_mesh(false);
ScalarView s_view_1("Solution[ydisp]", new WinGeom(460, 0, 450, 350));
s_view_1.show_mesh(false);
ScalarView s_view_2("Solution[temp]", new WinGeom(920, 0, 450, 350));
s_view_1.show_mesh(false);
OrderView o_view_0("Mesh[xdisp]", new WinGeom(0, 360, 450, 350));
OrderView o_view_1("Mesh[ydisp]", new WinGeom(460, 360, 450, 350));
OrderView o_view_2("Mesh[temp]", new WinGeom(920, 360, 450, 350));
// DOF and CPU convergence graphs.
SimpleGraph graph_dof_est, graph_cpu_est;
// Adaptivity loop:
int as = 1;
bool done = false;
do
{
info("---- Adaptivity step %d:", as);
// Construct globally refined reference mesh and setup reference space.
Hermes::vector<Space<double> *>* ref_spaces = Space<double>::construct_refined_spaces(Hermes::vector<Space<double> *>(&xdisp, &ydisp, &temp));
// Assemble the reference problem.
info("Solving on reference mesh.");
bool is_linear = true;
DiscreteProblem* dp = new DiscreteProblem(&wf, *ref_spaces, is_linear);
SparseMatrix<double>* matrix = create_matrix<double>(matrix_solver_type);
Vector<double>* rhs = create_vector<double>(matrix_solver_type);
LinearSolver<double>* solver = create_linear_solver<double>(matrix_solver_type, matrix, rhs);
dp->assemble(matrix, rhs);
// Time measurement.
cpu_time.tick();
// Solve the linear system of the reference problem. If successful, obtain the solutions.
if(solver->solve()) Solution::vector_to_solutions(solver->get_solution(), *ref_spaces,
Hermes::vector<Solution *>(&ref_xdisp_sln, &ref_ydisp_sln, &ref_temp_sln));
else error ("Matrix solver failed.\n");
// Time measurement.
cpu_time.tick();
// Project the fine mesh solution onto the coarse mesh.
info("Projecting reference solution on coarse mesh.");
//.........这里部分代码省略.........
开发者ID:fauzisd, 项目名称:hermes-examples, 代码行数:101, 代码来源:main.cpp
示例6: main
int main(int argc, char* argv[])
{
// Instantiate a class with global functions.
// Choose a Butcher's table or define your own.
ButcherTable bt(butcher_table_type);
if (bt.is_explicit()) info("Using a %d-stage explicit R-K method.", bt.get_size());
if (bt.is_diagonally_implicit()) info("Using a %d-stage diagonally implicit R-K method.", bt.get_size());
if (bt.is_fully_implicit()) info("Using a %d-stage fully implicit R-K method.", bt.get_size());
// Turn off adaptive time stepping if R-K method is not embedded.
if (bt.is_embedded() == false && ADAPTIVE_TIME_STEP_ON == true) {
warn("R-K method not embedded, turning off adaptive time stepping.");
ADAPTIVE_TIME_STEP_ON = false;
}
// Load the mesh.
Mesh mesh, basemesh;
MeshReaderH2D mloader;
mloader.load("square.mesh", &basemesh);
mesh.copy(&basemesh);
// Initial mesh refinements.
for(int i = 0; i < INIT_REF_NUM; i++) mesh.refine_all_elements();
// Convert initial condition into a Solution<std::complex<double> >.
CustomInitialCondition psi_time_prev(&mesh);
// Initialize the weak formulation.
double current_time = 0;
CustomWeakFormGPRK wf(h, m, g, omega);
// Initialize boundary conditions.
DefaultEssentialBCConst<std::complex<double> > bc_essential("Bdy", 0.0);
EssentialBCs<std::complex<double> > bcs(&bc_essential);
// Create an H1 space with default shapeset.
H1Space<std::complex<double> > space(&mesh, &bcs, P_INIT);
int ndof = space.get_num_dofs();
info("ndof = %d", ndof);
// Initialize the FE problem.
DiscreteProblem<std::complex<double> > dp(&wf, &space);
// Create a refinement selector.
H1ProjBasedSelector<std::complex<double> > selector(CAND_LIST, CONV_EXP, H2DRS_DEFAULT_ORDER);
// Visualize initial condition.
char title[100];
ScalarView sview_real("Initial condition - real part", new WinGeom(0, 0, 600, 500));
ScalarView sview_imag("Initial condition - imaginary part", new WinGeom(610, 0, 600, 500));
sview_real.show_mesh(false);
sview_imag.show_mesh(false);
sview_real.fix_scale_width(50);
sview_imag.fix_scale_width(50);
OrderView ord_view("Initial mesh", new WinGeom(445, 0, 440, 350));
ord_view.fix_scale_width(50);
ScalarView time_error_view("Temporal error", new WinGeom(0, 400, 440, 350));
time_error_view.fix_scale_width(50);
time_error_view.fix_scale_width(60);
ScalarView space_error_view("Spatial error", new WinGeom(445, 400, 440, 350));
space_error_view.fix_scale_width(50);
RealFilter real(&psi_time_prev);
ImagFilter imag(&psi_time_prev);
sview_real.show(&real);
sview_imag.show(&imag);
ord_view.show(&space);
// Graph for time step history.
SimpleGraph time_step_graph;
if (ADAPTIVE_TIME_STEP_ON) info("Time step history will be saved to file time_step_history.dat.");
// Time stepping:
int num_time_steps = (int)(T_FINAL/time_step + 0.5);
for(int ts = 1; ts <= num_time_steps; ts++)
// Time stepping loop.
double current_time = 0.0; int ts = 1;
do
{
info("Begin time step %d.", ts);
// Periodic global derefinement.
if (ts > 1 && ts % UNREF_FREQ == 0)
{
info("Global mesh derefinement.");
switch (UNREF_METHOD) {
case 1: mesh.copy(&basemesh);
space.set_uniform_order(P_INIT);
break;
case 2: mesh.unrefine_all_elements();
space.set_uniform_order(P_INIT);
break;
case 3: mesh.unrefine_all_elements();
//space.adjust_element_order(-1, P_INIT);
space.adjust_element_order(-1, -1, P_INIT, P_INIT);
break;
default: error("Wrong global derefinement method.");
//.........这里部分代码省略.........
开发者ID:fauzisd, 项目名称:hermes-examples, 代码行数:101, 代码来源:main.cpp
示例7: locker
void AndroidRunner::asyncStart()
{
QMutexLocker locker(&m_mutex);
forceStop();
if (m_useCppDebugger) {
// Remove pong file.
QProcess adb;
adb.start(m_adb, selector() << _("shell") << _("rm") << m_pongFile);
adb.waitForFinished();
}
QStringList args = selector();
args << _("shell") << _("am") << _("start") << _("-n") << m_intentName;
if (m_useCppDebugger) {
QProcess adb;
adb.start(m_adb, selector() << _("forward")
<< QString::fromLatin1("tcp:%1").arg(m_localGdbServerPort)
<< _("localfilesystem:") + m_gdbserverSocket);
if (!adb.waitForStarted()) {
emit remoteProcessFinished(tr("Failed to forward C++ debugging ports. Reason: %1.").arg(adb.errorString()));
return;
}
if (!adb.waitForFinished(5000)) {
emit remoteProcessFinished(tr("Failed to forward C++ debugging ports."));
return;
}
args << _("-e") << _("debug_ping") << _("true");
args << _("-e") << _("ping_file") << m_pingFile;
args << _("-e") << _("pong_file") << m_pongFile;
args << _("-e") << _("gdbserver_command") << m_gdbserverCommand;
args << _("-e") << _("gdbserver_socket") << m_gdbserverSocket;
}
if (m_useQmlDebugger || m_useQmlProfiler) {
// currently forward to same port on device and host
const QString port = QString::fromLatin1("tcp:%1").arg(m_qmlPort);
QProcess adb;
adb.start(m_adb, selector() << _("forward") << port << port);
if (!adb.waitForStarted()) {
emit remoteProcessFinished(tr("Failed to forward QML debugging ports. Reason: %1.").arg(adb.errorString()));
return;
}
if (!adb.waitForFinished()) {
emit remoteProcessFinished(tr("Failed to forward QML debugging ports."));
return;
}
args << _("-e") << _("qml_debug") << _("true");
args << _("-e") << _("qmljsdebugger") << QString::fromLatin1("port:%1,block").arg(m_qmlPort);
}
if (m_useLocalQtLibs) {
args << _("-e") << _("use_local_qt_libs") << _("true");
args << _("-e") << _("libs_prefix") << _("/data/local/tmp/qt/");
args << _("-e") << _("load_local_libs") << m_localLibs;
args << _("-e") << _("load_local_jars") << m_localJars;
if (!m_localJarsInitClasses.isEmpty())
args << _("-e") << _("static_init_classes") << m_localJarsInitClasses;
}
QProcess adb;
adb.start(m_adb, args);
if (!adb.waitForStarted()) {
emit remoteProcessFinished(tr("Failed to start the activity. Reason: %1.").arg(adb.errorString()));
return;
}
if (!adb.waitForFinished(5000)) {
adb.terminate();
emit remoteProcessFinished(tr("Unable to start '%1'.").arg(m_packageName));
return;
}
if (m_useCppDebugger) {
// Handling ping.
for (int i = 0; ; ++i) {
QTemporaryFile tmp(_("pingpong"));
tmp.open();
tmp.close();
QProcess process;
process.start(m_adb, selector() << _("pull") << m_pingFile << tmp.fileName());
process.waitForFinished();
QFile res(tmp.fileName());
const bool doBreak = res.size();
res.remove();
if (doBreak)
break;
if (i == 20) {
emit remoteProcessFinished(tr("Unable to start '%1'.").arg(m_packageName));
return;
}
qDebug() << "WAITING FOR " << tmp.fileName();
QThread::msleep(500);
}
}
//.........这里部分代码省略.........
开发者ID:Herysutrisno, 项目名称:qt-creator, 代码行数:101, 代码来源:androidrunner.cpp
示例8: EAP_TRACE_BEGIN
EAP_FUNC_EXPORT eap_status_e eap_session_core_c::packet_process(
const eap_am_network_id_c * const receive_network_id,
eap_general_header_base_c * const packet_data,
const u32_t packet_length)
{
EAP_TRACE_BEGIN(m_am_tools, TRACE_FLAGS_DEFAULT);
EAP_ASSERT(m_am_tools->get_global_mutex()->get_is_reserved() == true);
eap_status_e status = eap_status_process_general_error;
// Each EAP authentication session includes own eap_core_c object.
// EAP authentication sessions are separated by eap_am_network_id_c object.
if (packet_data == 0
|| packet_length < eap_header_base_c::get_header_length())
{
EAP_TRACE_END(m_am_tools, TRACE_FLAGS_DEFAULT);
return EAP_STATUS_RETURN(m_am_tools, eap_status_process_illegal_packet_error);
}
if (receive_network_id == 0
|| receive_network_id->get_is_valid_data() == false)
{
EAP_TRACE_END(m_am_tools, TRACE_FLAGS_DEFAULT);
return EAP_STATUS_RETURN(m_am_tools, eap_status_illegal_parameter);
}
eap_header_wr_c eap(
m_am_tools,
packet_data->get_header_buffer(packet_data->get_header_buffer_length()),
packet_data->get_header_buffer_length());
if (eap.get_is_valid() == false)
{
EAP_TRACE_END(m_am_tools, TRACE_FLAGS_DEFAULT);
return EAP_STATUS_RETURN(m_am_tools, eap_status_process_illegal_packet_error);
}
if (packet_length < eap.get_length())
{
EAP_TRACE_END(m_am_tools, TRACE_FLAGS_DEFAULT);
return EAP_STATUS_RETURN(m_am_tools, eap_status_process_illegal_packet_error);
}
if (eap.get_code() == eap_code_none)
{
EAP_TRACE_END(m_am_tools, TRACE_FLAGS_DEFAULT);
return EAP_STATUS_RETURN(m_am_tools, eap_status_process_illegal_packet_error);
}
EAP_TRACE_DEBUG(
m_am_tools,
TRACE_FLAGS_DEFAULT,
(EAPL("-> EAP_session: %s, code=0x%02x=%s, identifier=0x%02x, ")
EAPL("length=0x%04x, type=0x%08x=%s, packet length 0x%04x\n"),
(m_is_client == true) ? "client": "server",
eap.get_code(),
eap.get_code_string(),
eap.get_identifier(),
eap.get_length(),
convert_eap_type_to_u32_t(eap.get_type()),
eap.get_type_string(),
packet_length));
status = eap.check_header();
if (status != eap_status_ok)
{
EAP_TRACE_END(m_am_tools, TRACE_FLAGS_DEFAULT);
return EAP_STATUS_RETURN(m_am_tools, status);
}
// Here we swap the addresses.
eap_am_network_id_c send_network_id(m_am_tools,
receive_network_id->get_destination_id(),
receive_network_id->get_source_id(),
receive_network_id->get_type());
if (send_network_id.get_is_valid_data() == false)
{
EAP_TRACE_END(m_am_tools, TRACE_FLAGS_DEFAULT);
return EAP_STATUS_RETURN(m_am_tools, eap_status_allocation_error);
}
eap_network_id_selector_c selector(
m_am_tools,
&send_network_id);
if (selector.get_is_valid() == false)
{
EAP_TRACE_END(m_am_tools, TRACE_FLAGS_DEFAULT);
return EAP_STATUS_RETURN(m_am_tools, eap_status_allocation_error);
}
EAP_TRACE_DATA_DEBUG(
m_am_tools,
TRACE_FLAGS_DEFAULT,
(EAPL("eap_session_core_c::packet_process() EAP-session"),
selector.get_data(selector.get_data_length()),
selector.get_data_length()));
eap_core_c *session = m_session_map.get_handler(&selector);
//.........这里部分代码省略.........
开发者ID:cdaffara, 项目名称:symbiandump-mw1, 代码行数:101, 代码来源:eap_session_core.cpp
示例9: eap_core_c
EAP_FUNC_EXPORT eap_core_c * eap_session_core_c::create_new_session(
const eap_am_network_id_c * const receive_network_id)
{
eap_status_e status = eap_status_process_general_error;
// Create a new session.
eap_core_c *session = new eap_core_c(
m_am_tools,
this,
m_is_client,
receive_network_id,
false);
if (session == 0)
{
EAP_TRACE_END(m_am_tools, TRACE_FLAGS_DEFAULT);
(void)EAP_STATUS_RETURN(m_am_tools, eap_status_allocation_error);
return 0;
}
if (session->get_is_valid() == false)
{
session->shutdown();
delete session;
EAP_TRACE_END(m_am_tools, TRACE_FLAGS_DEFAULT);
(void)EAP_STATUS_RETURN(m_am_tools, eap_status_allocation_error);
return 0;
}
status = session->configure();
if (status != eap_status_ok)
{
session->shutdown();
delete session;
EAP_TRACE_END(m_am_tools, TRACE_FLAGS_DEFAULT);
(void)EAP_STATUS_RETURN(m_am_tools, status);
return 0;
}
// Here we swap the addresses.
eap_am_network_id_c send_network_id(m_am_tools,
receive_network_id->get_destination_id(),
receive_network_id->get_source_id(),
receive_network_id->get_type());
if (send_network_id.get_is_valid_data() == false)
{
session->shutdown();
delete session;
EAP_TRACE_END(m_am_tools, TRACE_FLAGS_DEFAULT);
(void)EAP_STATUS_RETURN(m_am_tools, eap_status_allocation_error);
return 0;
}
eap_network_id_selector_c selector(
m_am_tools,
&send_network_id);
if (selector.get_is_valid() == false)
{
session->shutdown();
delete session;
EAP_TRACE_END(m_am_tools, TRACE_FLAGS_DEFAULT);
(void)EAP_STATUS_RETURN(m_am_tools, eap_status_allocation_error);
return 0;
}
EAP_TRACE_DATA_DEBUG(
m_am_tools,
TRACE_FLAGS_DEFAULT,
(EAPL("eap_session_core_c::create_new_session() EAP-session"),
selector.get_data(selector.get_data_length()),
selector.get_data_length()));
status = m_session_map.add_handler(&selector, session);
if (status != eap_status_ok)
{
session->shutdown();
delete session;
EAP_TRACE_END(m_am_tools, TRACE_FLAGS_DEFAULT);
(void)EAP_STATUS_RETURN(m_am_tools, status);
return 0;
}
return session;
}
开发者ID:cdaffara, 项目名称:symbiandump-mw1, 代码行数:84, 代码来源:eap_session_core.cpp
示例10: selector
void InterpretedIC_Iterator::print() {
std->print_cr("InterpretedIC_Iterator %#x for ic %#x (%s)", this, _ic, selector()->as_string());
}
开发者ID:jirkadanek, 项目名称:Strongtalk, 代码行数:3, 代码来源:interpretedIC.cpp
示例11: switch
void InterpretedIC_Iterator::init_iteration() {
_pic = NULL;
_index = 0;
// determine initial state
switch (_ic->send_type()) {
case Bytecodes::interpreted_send:
if (_ic->is_empty()) {
// anamorphic call site (has never been executed => no type information)
_number_of_targets = 0;
_info = anamorphic;
} else {
// monomorphic call site
_number_of_targets = 1;
_info = monomorphic;
set_klass(_ic->second_word());
set_method(_ic->first_word());
}
break;
case Bytecodes::compiled_send :
_number_of_targets = 1;
_info = monomorphic;
set_klass(_ic->second_word());
assert(_ic->first_word()->is_smi(), "must have jumpTableEntry");
set_method(_ic->first_word());
assert(is_compiled(), "bad type");
break;
case Bytecodes::accessor_send : // fall through
case Bytecodes::primitive_send :
_number_of_targets = 1;
_info = monomorphic;
set_klass(_ic->second_word());
set_method(_ic->first_word());
assert(is_interpreted(), "bad type");
break;
case Bytecodes::megamorphic_send:
// no type information stored
_number_of_targets = 0;
_info = megamorphic;
break;
case Bytecodes::polymorphic_send:
// information on many types
_pic = objArrayOop(_ic->second_word());
_number_of_targets = _pic->length() / 2;
_info = polymorphic;
set_klass(_pic->obj_at(2));
set_method(_pic->obj_at(1));
break;
case Bytecodes::predicted_send:
if (_ic->is_empty() || _ic->second_word() == smiKlassObj) {
_number_of_targets = 1;
_info = monomorphic;
} else {
_number_of_targets = 2;
_info = polymorphic;
}
set_klass(smiKlassObj);
set_method(interpreter_normal_lookup(smiKlassObj, selector()).value());
assert(_method != NULL && _method->is_mem(), "this method must be there");
break;
default: ShouldNotReachHere();
}
assert((number_of_targets() > 1) == (_info == polymorphic), "inconsistency");
}
开发者ID:jirkadanek, 项目名称:Strongtalk, 代码行数:63, 代码来源:interpretedIC.cpp
示例12: funds1
void Dialog::MakeGiftResource(void)
{
Cursor & cursor = Cursor::Get();
Display & display = Display::Get();
LocalEvent & le = LocalEvent::Get();
const Settings & conf = Settings::Get();
cursor.Hide();
cursor.SetThemes(cursor.POINTER);
const u16 window_w = 320;
const u16 window_h = 224;
Dialog::FrameBorder frameborder;
frameborder.SetPosition((display.w() - window_w) / 2 - BORDERWIDTH, (display.h() - window_h) / 2 - BORDERWIDTH, window_w, window_h);
frameborder.Redraw();
const Rect & box = frameborder.GetArea();
const Sprite & background = AGG::GetICN(ICN::STONEBAK, 0);
background.Blit(Rect(0, 0, window_w, window_h), box);
Kingdom & myKingdom = world.GetKingdom(conf.CurrentColor());
Funds funds1(myKingdom.GetFunds());
Funds funds2;
Text text;
text.Set("Select Recipients");
text.Blit(box.x + (box.w - text.w()) / 2, box.y + 5);
SelectRecipientsColors selector(Point(box.x + 65, box.y + 28));
selector.Redraw();
text.Set("Your Funds");
text.Blit(box.x + (box.w - text.w()) / 2, box.y + 55);
ResourceBar info1(funds1, box.x + 25, box.y + 80);
info1.Redraw();
text.Set("Planned Gift");
text.Blit(box.x + (box.w - text.w()) / 2, box.y + 125);
ResourceBar info2(funds2, box.x + 25, box.y + 150);
info2.Redraw();
ButtonGroups btnGroups(box, Dialog::OK|Dialog::CANCEL);
btnGroups.DisableButton1(true);
btnGroups.Draw();
cursor.Show();
display.Flip();
u8 count = Color::Count(selector.recipients);
// message loop
u16 result = Dialog::ZERO;
while(result == Dialog::ZERO && le.HandleEvents())
{
if(selector.QueueEventProcessing())
{
u8 new_count = Color::Count(selector.recipients);
cursor.Hide();
btnGroups.DisableButton1(0 == new_count || 0 == funds2.GetValidItems());
if(count != new_count)
{
funds1 = myKingdom.GetFunds();
funds2.Reset();
info1.Redraw();
info2.Redraw();
count = new_count;
}
btnGroups.Draw();
selector.Redraw();
cursor.Show();
display.Flip();
}
else
if(info2.QueueEventProcessing(funds1, count))
{
cursor.Hide();
btnGroups.DisableButton1(0 == Color::Count(selector.recipients) || 0 == funds2.GetValidItems());
info1.Redraw();
info2.Redraw();
btnGroups.Draw();
cursor.Show();
display.Flip();
}
result = btnGroups.QueueEventProcessing();
}
if(Dialog::OK == result)
{
EventDate event;
event.resource = funds2;
event.computer = true;
//.........这里部分代码省略.........
开发者ID:asimonov-im, 项目名称:fheroes2, 代码行数:101, 代码来源:dialog_giftresources.cpp
示例13: main
int main(int argc, char* argv[])
{
// Choose a Butcher's table or define your own.
ButcherTable bt(butcher_table_type);
if (bt.is_explicit()) Hermes::Mixins::Loggable::Static::info("Using a %d-stage explicit R-K method.", bt.get_size());
if (bt.is_diagonally_implicit()) Hermes::Mixins::Loggable::Static::info("Using a %d-stage diagonally implicit R-K method.", bt.get_size());
if (bt.is_fully_implicit()) Hermes::Mixins::Loggable::Static::info("Using a %d-stage fully implicit R-K method.", bt.get_size());
// Turn off adaptive time stepping if R-K method is not embedded.
if (bt.is_embedded() == false && ADAPTIVE_TIME_STEP_ON == true) {
Hermes::Mixins::Loggable::Static::warn("R-K method not embedded, turning off adaptive time stepping.");
ADAPTIVE_TIME_STEP_ON = false;
}
// Load the mesh.
MeshSharedPtr mesh(new Mesh), basemesh(new Mesh);
MeshReaderH2D mloader;
mloader.load("wall.mesh", basemesh);
mesh->copy(basemesh);
// Perform initial mesh refinements.
for(int i = 0; i < INIT_REF_NUM; i++) mesh->refine_all_elements();
mesh->refine_towards_boundary(BDY_RIGHT, 2);
mesh->refine_towards_boundary(BDY_FIRE, INIT_REF_NUM_BDY);
// Initialize essential boundary conditions (none).
EssentialBCs<double> bcs;
// Initialize an H1 space with default shapeset.
SpaceSharedPtr<double> space(new H1Space<double>(mesh, &bcs, P_INIT));
int ndof = Space<double>::get_num_dofs(space);
Hermes::Mixins::Loggable::Static::info("ndof = %d.", ndof);
// Convert initial condition into a Solution.
MeshFunctionSharedPtr<double> sln_prev_time(new ConstantSolution<double> (mesh, TEMP_INIT));
// Initialize the weak formulation.
double current_time = 0;
CustomWeakFormHeatRK wf(BDY_FIRE, BDY_AIR, ALPHA_FIRE, ALPHA_AIR,
RHO, HEATCAP, TEMP_EXT_AIR, TEMP_INIT, ¤t_time);
// Initialize the FE problem.
DiscreteProblem<double> dp(&wf, space);
// Create a refinement selector.
H1ProjBasedSelector<double> selector(CAND_LIST);
// Visualize initial condition.
char title[100];
ScalarView sln_view("Initial condition", new WinGeom(0, 0, 1500, 360));
OrderView ordview("Initial mesh", new WinGeom(0, 410, 1500, 360));
ScalarView time_error_view("Temporal error", new WinGeom(0, 800, 1500, 360));
time_error_view.fix_scale_width(40);
ScalarView space_error_view("Spatial error", new WinGeom(0, 1220, 1500, 360));
space_error_view.fix_scale_width(40);
sln_view.show(sln_prev_time);
ordview.show(space);
// Graph for time step history.
SimpleGraph time_step_graph;
if (ADAPTIVE_TIME_STEP_ON) Hermes::Mixins::Loggable::Static::info("Time step history will be saved to file time_step_history.dat.");
// Class for projections.
OGProjection<double> ogProjection;
// Time stepping loop:
int ts = 1;
do
{
Hermes::Mixins::Loggable::Static::info("Begin time step %d.", ts);
// Periodic global derefinement.
if (ts > 1 && ts % UNREF_FREQ == 0)
{
Hermes::Mixins::Loggable::Static::info("Global mesh derefinement.");
switch (UNREF_METHOD) {
case 1: mesh->copy(basemesh);
space->set_uniform_order(P_INIT);
break;
case 2: space->unrefine_all_mesh_elements();
space->set_uniform_order(P_INIT);
break;
case 3: space->unrefine_all_mesh_elements();
//space->adjust_element_order(-1, P_INIT);
space->adjust_element_order(-1, -1, P_INIT, P_INIT);
break;
default: throw Hermes::Exceptions::Exception("Wrong global derefinement method.");
}
space->assign_dofs();
ndof = Space<double>::get_num_dofs(space);
}
// Spatial adaptivity loop. Note: sln_prev_time must not be
// changed during spatial adaptivity.
MeshFunctionSharedPtr<double> ref_sln(new Solution<double>());
MeshFunctionSharedPtr<double> time_error_fn(new Solution<double>(mesh));
bool done = false; int as = 1;
double err_est;
do {
// Construct globally refined reference mesh and setup reference space.
//.........这里部分代码省略.........
开发者ID:HPeX, 项目名称:hermes-examples, 代码行数:101, 代码来源:main.cpp
示例14: assert
bool SCodeScope::shouldInlineSend(SendInfo* info, RScope* rs, SExpr* rcvr,
oop m, InlineLimitType limitType) {
MethodLookupKey* k = info->key;
if (!k->selector->is_string()) return false;
if (isRecursiveCall(m, k->receiverMapOop(), MaxRecursionUnroll)) {
info->uninlinable = true;
return false;
}
if (!Inline) {
assert(InlineSTMessages, "shouldn't be here");
// NB: works only with rewritten whileTrue/False (using _Restart)
if (isSmalltalkInlined(k->selector)) return true;
if (isSmalltalkInlined(selector())) return true;
return false;
}
if (limitType == NormalFnLimit) {
// check args to see if any of them is a block; if so, increase limit
fint top = exprStack->length();
fint argc = stringOop(k->selector)->arg_count();
for (fint i = argc; i > 0; i--) {
if (exprStack->nth(top - i)->preg()->isBlockPReg()) {
limitType = BlockArgFnLimit;
goto done;
}
}
// check receiver
if (lookupReceiverIsSelf(k->lookupType)) {
if (self->preg()->isBlockPReg()) limitType = BlockArgFnLimit;
} else if (exprStack->nth(top - argc - 1)->preg()->isBlockPReg()) {
limitType = BlockArgFnLimit;
}
}
done:
if (calleeTooBig(info, rs, limitType)) {
// register this send as uninlinable
theSIC->registerUninlinable(info, limitType, 9999);
return false;
}
// NB: this test comes after calleeTooBig to prevent forced inlining of
// e.g. a really complicated user-defined '+' for matrices
if (isCheapMessage(stringOop(k->selector))) {
msgCost = costP->cheapSendCost;
return true;
}
fint cutoff = theSIC->inlineLimit[limitType];
msgCost = sicCost( m, this, costP);
if (info->primFailure &&
info->nsends < MinPrimFailureInvocations) {
if (rs->isPICScope() && ((RPICScope*)rs)->sd->isOptimized()) {
// the fail block send is optimized, it's probably executed frequently
} else if (rs->isSelfScope()) {
// was inlined in previous version, so do it again
} else {
// don't inline error block unless trivial or taken often
if (msgCost > MaxTrivialPrimFailureCost) return false;
// should also look at block method, not default value:With:
Map* map = rcvr->map();
if (map->is_block()) {
slotsOop method = ((blockMap*)map)->value();
msgCost = sicCost( method, this, failCostP);
// bug: should estimate real length of prim failure; e.g. could
// have single send (cost 1) but that method sends more and more
// msgs...i.e. need concept of "being in fail branch" so that
// no further inlining takes place -- fix this
if (msgCost > MaxTrivialPrimFailureCost) return false;
}
}
}
if (msgCost > cutoff) {
if (calleeIsSmall(info, rs, limitType)) return true;
theSIC->registerUninlinable(info, limitType, msgCost);
return false;
}
return true;
}
开发者ID:AaronNGray, 项目名称:self, 代码行数:81, 代码来源:sicInline.cpp
示例15: main
int main(int argc, char* argv[])
{
// Load the mesh.
MeshSharedPtr mesh(new Mesh);
MeshReaderH2D mloader;
mloader.load("domain.mesh", mesh);
// Perform initial mesh refinements.
for (int i = 0; i < INIT_REF_NUM; i++)
mesh->refine_all_elements();
// Initialize boundary conditions.
Hermes::Hermes2D::DefaultEssentialBCConst<complex> bc_essential("Dirichlet", complex(0.0, 0.0));
EssentialBCs<complex> bcs(&bc_essential);
// Create an H1 space with default shapeset.
SpaceSharedPtr<complex> space(new H1Space<complex>(mesh, &bcs, P_INIT));
// Initialize the weak formulation.
CustomWeakForm wf("Air", MU_0, "Iron", MU_IRON, GAMMA_IRON,
"Wire", MU_0, complex(J_EXT, 0.0), OMEGA);
// Initialize coarse and reference mesh solution.
MeshFunctionSharedPtr<complex> sln(new Hermes::Hermes2D::Solution<complex>());
MeshFunctionSharedPtr<complex> ref_sln(new Hermes::Hermes2D::Solution<complex>());
// Initialize refinement selector.
H1ProjBasedSelector<complex> selector(CAND_LIST);
// DOF and CPU convergence graphs initialization.
SimpleGraph graph_dof, graph_cpu;
DiscreteProblem<complex> dp(&wf, space);
// Perform Newton's iteration and translate the resulting coefficient vector into a Solution.
Hermes::Hermes2D::NewtonSolver<complex> newton(&dp);
// Adaptivity loop:
int as = 1;
bool done = false;
adaptivity.set_space(space);
do
{
// Construct globally refined reference mesh and setup reference space->
Mesh::ReferenceMeshCreator ref_mesh_creator(mesh);
MeshSharedPtr ref_mesh = ref_mesh_creator.create_ref_mesh();
Space<complex>::ReferenceSpaceCreator ref_space_creator(space, ref_mesh);
SpaceSharedPtr<complex> ref_space = ref_space_creator.create_ref_space();
newton.set_space(ref_space);
int ndof_ref = ref_space->get_num_dofs();
// Initialize reference problem.
// Initial coefficient vector for the Newton's method.
complex* coeff_vec = new complex[ndof_ref];
memset(coeff_vec, 0, ndof_ref * sizeof(complex));
// Perform Newton's iteration and translate the resulting coefficient vector into a Solution.
try
{
newton.solve(coeff_vec);
}
catch(Hermes::Exceptions::Exception& e)
{
e.print_msg();
}
Hermes::Hermes2D::Solution<complex>::vector_to_solution(newton.get_sln_vector(), ref_space, ref_sln);
// Project the fine mesh solution onto the coarse mesh.
OGProjection<complex> ogProjection;
ogProjection.project_global(space, ref_sln, sln);
// Calculate element errors and total error estimate.
errorCalculator.calculate_errors(sln, ref_sln);
// If err_est too large, adapt the mesh->
if(errorCalculator.get_total_error_squared() * 100. < ERR_STOP)
done = true;
else
{
adaptivity.adapt(&selector);
}
// Clean up.
delete [] coeff_vec;
// Increase counter.
as++;
}
while (done == false);
complex sum = 0;
for (int i = 0; i < space->get_num_dofs(); i++)
sum += newton.get_sln_vector()[i];
printf("coefficient sum = %f\n", sum);
complex expected_sum;
//.........这里部分代码省略.........
开发者ID:hpfem, 项目名称:hermes-testing, 代码行数:101, 代码来源:main.cpp
六六分期app的软件客服如何联系?不知道吗?加qq群【895510560】即可!标题:六六分期
阅读:19158| 2023-10-27
今天小编告诉大家如何处理win10系统火狐flash插件总是崩溃的问题,可能很多用户都不知
阅读:9981| 2022-11-06
今天小编告诉大家如何对win10系统删除桌面回收站图标进行设置,可能很多用户都不知道
阅读:8320| 2022-11-06
今天小编告诉大家如何对win10系统电脑设置节能降温的设置方法,想必大家都遇到过需要
阅读:8690| 2022-11-06
我们在使用xp系统的过程中,经常需要对xp系统无线网络安装向导设置进行设置,可能很多
阅读:8633| 2022-11-06
今天小编告诉大家如何处理win7系统玩cf老是与主机连接不稳定的问题,可能很多用户都不
阅读:9649| 2022-11-06
电脑对日常生活的重要性小编就不多说了,可是一旦碰到win7系统设置cf烟雾头的问题,很
阅读:8617| 2022-11-06
我们在日常使用电脑的时候,有的小伙伴们可能在打开应用的时候会遇见提示应用程序无法
阅读:7994| 2022-11-06
今天小编告诉大家如何对win7系统打开vcf文件进行设置,可能很多用户都不知道怎么对win
阅读:8647| 2022-11-06
今天小编告诉大家如何对win10系统s4开启USB调试模式进行设置,可能很多用户都不知道怎
阅读:7531| 2022-11-06
请发表评论