本文整理汇总了C++中Driver::CrearPaquete方法的典型用法代码示例。如果您正苦于以下问题:C++ Driver::CrearPaquete方法的具体用法?C++ Driver::CrearPaquete怎么用?C++ Driver::CrearPaquete使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Driver
的用法示例。
在下文中一共展示了Driver::CrearPaquete方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: test_crear_paquetes
void test_crear_paquetes() {
Driver dcnet;
Computadora c1 = "skynet";
Computadora c2 = "terminator";
Computadora c3 = "connor";
Interfaz i1 = 1;
Interfaz i2 = 2;
Interfaz i3 = 3;
Interfaz i4 = 4;
Interfaz i5 = 5;
Conj<Interfaz> conjIc1;
Conj<Interfaz> conjIc2;
Conj<Interfaz> conjIc3;
conjIc1.Agregar(i1);
conjIc2.Agregar(i2);
conjIc2.Agregar(i5);
conjIc3.Agregar(i4);
conjIc3.Agregar(i3);
dcnet.AgregarComputadora(c1,conjIc1);
dcnet.AgregarComputadora(c2,conjIc2);
dcnet.AgregarComputadora(c3,conjIc3);
dcnet.Conectar(c1, i1,c2, i2);
dcnet.Conectar(c2, i5,c3, i3);
dcnet.CrearPaquete(c1,c2,2);
dcnet.CrearPaquete(c1,c2,1);
dcnet.CrearPaquete(c2,c3,3);
dcnet.CrearPaquete(c2,c3,2);
dcnet.CrearPaquete(c2,c3,1);
dcnet.CrearPaquete(c2,c3,1);
ASSERT_EQ(dcnet.CantidadEnEsperaEn(c1), 2);
ASSERT_EQ(dcnet.CantidadEnEsperaEn(c2), 4);
ASSERT_EQ(dcnet.CantidadEnEsperaEn(c3), 0);
dcnet.AvanzarSegundo();
ASSERT_EQ(dcnet.CantidadEnEsperaEn(c1), 1);
ASSERT_EQ(dcnet.CantidadEnEsperaEn(c2), 3);
ASSERT_EQ(dcnet.CantidadEnEsperaEn(c3), 0);
ASSERT_EQ(dcnet.CantidadEnviadosPor(c1), 1);
ASSERT_EQ(dcnet.CantidadEnviadosPor(c2), 1);
ASSERT_EQ(dcnet.CantidadEnviadosPor(c3), 0);
}
示例2: test_recorrido_simple
void test_recorrido_simple() {
Driver dcnet;
Computadora c1 = "skynet";
Computadora c2 = "terminator";
Computadora c3 = "connor";
Computadora c4 = "sky";
Interfaz i1 = 1;
Interfaz i2 = 2;
Interfaz i3 = 3;
Interfaz i4 = 4;
Interfaz i5 = 5;
Interfaz i6 = 6;
Conj<Interfaz> conjIc1;
Conj<Interfaz> conjIc2;
Conj<Interfaz> conjIc3;
Conj<Interfaz> conjIc4;
conjIc1.Agregar(i1);
conjIc2.Agregar(i2);
conjIc2.Agregar(i5);
conjIc3.Agregar(i4);
conjIc3.Agregar(i3);
conjIc4.Agregar(i6);
dcnet.AgregarComputadora(c1,conjIc1);
dcnet.AgregarComputadora(c2,conjIc2);
dcnet.AgregarComputadora(c3,conjIc3);
dcnet.AgregarComputadora(c4,conjIc4);
dcnet.Conectar(c1, i1,c2, i2);
dcnet.Conectar(c2, i5,c3, i3);
dcnet.Conectar(c4, i6,c3, i4);
dcnet.CrearPaquete(c1,c4,1);
Nat paq = dcnet.IesimoEnEsperaEn(c1,0);
ASSERT_EQ(dcnet.CantidadEnEsperaEn(c1), 1);
dcnet.AvanzarSegundo();
ASSERT_EQ(dcnet.CantidadEnEsperaEn(c2), 1);
dcnet.AvanzarSegundo();
ASSERT_EQ(dcnet.CantidadEnEsperaEn(c3), 1);
//ASSERT_EQ(dcnet.CantidadNodosRecorridosPor(paq),3);
ASSERT(dcnet.IesimoNodoRecorridoPor(paq,0) == c1);
ASSERT(dcnet.IesimoNodoRecorridoPor(paq,1) == c2);
ASSERT(dcnet.IesimoNodoRecorridoPor(paq,2) == c3);
}
示例3: test_la_que_mas_envio
void test_la_que_mas_envio() {
Driver dcnet;
Computadora c1 = "skynet";
Computadora c2 = "terminator";
Computadora c3 = "connor";
Interfaz i1 = 1;
Interfaz i2 = 2;
Interfaz i3 = 3;
Interfaz i4 = 4;
Conj<Interfaz> conjIc1;
Conj<Interfaz> conjIc2;
Conj<Interfaz> conjIc3;
conjIc1.Agregar(i1);
conjIc2.Agregar(i2);
conjIc2.Agregar(i3);
conjIc3.Agregar(i4);
dcnet.AgregarComputadora(c1,conjIc1);
dcnet.AgregarComputadora(c2,conjIc2);
dcnet.AgregarComputadora(c3,conjIc3);
// c1 -- c2 -- c3
dcnet.Conectar(c1, i1,c2, i2);
dcnet.Conectar(c2, i3,c3, i4);
dcnet.CrearPaquete(c1,c3,1);
dcnet.CrearPaquete(c2,c3,1);
dcnet.AvanzarSegundo();
dcnet.AvanzarSegundo();
ASSERT_EQ(dcnet.laQueMasEnvio(), c2);
dcnet.CrearPaquete(c1,c2,1);
dcnet.CrearPaquete(c1,c2,1);
dcnet.AvanzarSegundo();
dcnet.AvanzarSegundo();
ASSERT_EQ(dcnet.laQueMasEnvio(), c1);
}
示例4: test_respeta_priodades
void test_respeta_priodades() {
Driver dcnet;
Computadora c1 = "skynet";
Computadora c2 = "sky";
Interfaz i1 = 1;
Interfaz i2 = 2;
Conj<Interfaz> conjIc1;
Conj<Interfaz> conjIc2;
conjIc1.Agregar(i1);
conjIc2.Agregar(i2);
dcnet.AgregarComputadora(c1,conjIc1);
dcnet.AgregarComputadora(c2,conjIc2);
dcnet.Conectar(c1, i1,c2, i2);
dcnet.CrearPaquete(c1,c2,2);
dcnet.CrearPaquete(c1,c2,1);
dcnet.CrearPaquete(c1,c2,3);
ASSERT_EQ(dcnet.CantidadEnEsperaEn(c1), 3);
dcnet.AvanzarSegundo();
ASSERT_EQ(dcnet.CantidadEnEsperaEn(c1), 2);
ASSERT_EQ(dcnet.CantidadEnviadosPor(c1), 1);
bool respetaPrioridad = true;
for (int i =0; i < dcnet.CantidadEnEsperaEn(c1) ; i++) {
Nat pr = dcnet.prioridad(dcnet.IesimoEnEsperaEn(c1, i));
//std::cout << dcnet.prioridad(dcnet.IesimoEnEsperaEn(c1, i)) << "\n";
if (pr == 1) {
respetaPrioridad = false;
}
}
ASSERT_EQ(respetaPrioridad, true);
}
示例5: test_dcnet_ejemplo
void test_dcnet_ejemplo() {
Conj<Interfaz> ConjuntoIc1;
Conj<Interfaz> ConjuntoIc2;
Conj<Interfaz> ConjuntoIc3;
ConjuntoIc1.Agregar(1);
ConjuntoIc1.Agregar(2);
ConjuntoIc1.Agregar(3);
ConjuntoIc2.Agregar(1);
ConjuntoIc2.Agregar(2);
ConjuntoIc2.Agregar(3);
ConjuntoIc3.Agregar(1);
ConjuntoIc3.Agregar(2);
Computadora c1 = "dc.uba.ar";
Computadora c2 = "uba.ar";
Computadora c3 = "dm.uba.ar";
Driver dcnet;
dcnet.AgregarComputadora(c1, ConjuntoIc1);
dcnet.AgregarComputadora(c2, ConjuntoIc2);
dcnet.AgregarComputadora(c3, ConjuntoIc3);
// ejemplo - Indexado en 0
Interfaz i1 = dcnet.IesimaInterfazDe(c1, 0);
Interfaz i2 = dcnet.IesimaInterfazDe(c2, 2);
dcnet.Conectar(c1, i1, c2, i2);
dcnet.CrearPaquete(c1, c2, 3);
dcnet.AvanzarSegundo();
ASSERT_EQ(dcnet.laQueMasEnvio(), c1);
}
示例6: test_recorrido_complejo
void test_recorrido_complejo() {
Driver dcnet;
Computadora c1 = "skynet";
Computadora c2 = "terminator";
Computadora c3 = "connor";
Computadora c4 = "sky";
Computadora c5 = "sarah";
Interfaz i1 = 1;
Interfaz i2 = 2;
Interfaz i3 = 3;
Interfaz i4 = 4;
Interfaz i5 = 5;
Interfaz i6 = 6;
Interfaz i7 = 7;
Interfaz i8 = 8;
Interfaz i9 = 9;
Interfaz i10 = 10;
Interfaz i11 = 11;
Interfaz i12 = 12;
Conj<Interfaz> conjIc1;
Conj<Interfaz> conjIc2;
Conj<Interfaz> conjIc3;
Conj<Interfaz> conjIc4;
Conj<Interfaz> conjIc5;
conjIc1.Agregar(i1);
conjIc1.Agregar(i2);
conjIc2.Agregar(i3);
conjIc2.Agregar(i4);
conjIc3.Agregar(i5);
conjIc3.Agregar(i6);
conjIc3.Agregar(i7);
conjIc4.Agregar(i8);
conjIc4.Agregar(i9);
conjIc4.Agregar(i10);
conjIc5.Agregar(i11);
conjIc5.Agregar(i12);
dcnet.AgregarComputadora(c1,conjIc1);
dcnet.AgregarComputadora(c2,conjIc2);
dcnet.AgregarComputadora(c3,conjIc3);
dcnet.AgregarComputadora(c4,conjIc4);
dcnet.AgregarComputadora(c5,conjIc5);
dcnet.Conectar(c1, i1,c2, i3);
dcnet.Conectar(c1, i2,c3, i5);
dcnet.Conectar(c2, i4,c4, i8);
dcnet.Conectar(c3, i6,c4, i9);
dcnet.Conectar(c3, i7,c5, i11);
dcnet.Conectar(c4, i10,c5, i12);
dcnet.CrearPaquete(c1,c5,1);
Nat paq = dcnet.IesimoEnEsperaEn(c1,0);
dcnet.AvanzarSegundo();
ASSERT_EQ(dcnet.CantidadNodosRecorridosPor(paq),2);
ASSERT(dcnet.IesimoNodoRecorridoPor(paq,0) == c1);
ASSERT(dcnet.IesimoNodoRecorridoPor(paq,1) == c3);
}
示例7: test_recorrido_dos_minimos
void test_recorrido_dos_minimos() {
Driver dcnet;
Computadora c1 = "skynet";
Computadora c2 = "terminator";
Computadora c3 = "connor";
Computadora c4 = "sky";
Interfaz i1 = 1;
Interfaz i2 = 2;
Interfaz i3 = 3;
Interfaz i4 = 4;
Interfaz i5 = 5;
Interfaz i6 = 6;
Interfaz i7 = 7;
Interfaz i8 = 8;
Conj<Interfaz> conjIc1;
Conj<Interfaz> conjIc2;
Conj<Interfaz> conjIc3;
Conj<Interfaz> conjIc4;
conjIc1.Agregar(i1);
conjIc1.Agregar(i2);
conjIc2.Agregar(i3);
conjIc2.Agregar(i4);
conjIc3.Agregar(i5);
conjIc3.Agregar(i6);
conjIc4.Agregar(i7);
conjIc4.Agregar(i8);
dcnet.AgregarComputadora(c1,conjIc1);
dcnet.AgregarComputadora(c2,conjIc2);
dcnet.AgregarComputadora(c3,conjIc3);
dcnet.AgregarComputadora(c4,conjIc4);
dcnet.Conectar(c1, i1,c2, i3);
dcnet.Conectar(c1, i2,c3, i5);
dcnet.Conectar(c2, i4,c4, i7);
dcnet.Conectar(c3, i6,c4, i8);
dcnet.CrearPaquete(c1,c4,1);
Nat paq = dcnet.IesimoEnEsperaEn(c1,0);
ASSERT_EQ(dcnet.CantidadEnEsperaEn(c1), 1);
dcnet.AvanzarSegundo();
// Puede ir por c2 o c3 , tiene que estar en alguno de los dos
ASSERT_EQ(dcnet.CantidadEnEsperaEn(c2)+dcnet.CantidadEnEsperaEn(c3), 1);
ASSERT_EQ(dcnet.CantidadNodosRecorridosPor(paq),2);
ASSERT(dcnet.IesimoNodoRecorridoPor(paq,0) == c1);
ASSERT(dcnet.IesimoNodoRecorridoPor(paq,1) == c2 || dcnet.IesimoNodoRecorridoPor(paq,1) == c3 );
}