示例#1
0
文件: scaffold.c 项目: dzerbino/oases
static void createTwinConnection(IDnum nodeID, IDnum node2ID,
				 Connection * connect)
{
	Connection *newConnection = allocateConnection();
	IDnum nodeIndex = nodeID + nodeCount(graph);

	// Fill in
	newConnection->distance = connect->distance;
	newConnection->variance = connect->variance;
	newConnection->direct_count = connect->direct_count;
	newConnection->paired_count = connect->paired_count;
	newConnection->destination = getNodeInGraph(graph, node2ID);
	newConnection->weight = 0;
	newConnection->status = false;

	// Batch to twin
	newConnection->twin = connect;
	connect->twin = newConnection;

	// Insert in scaffold
	newConnection->previous = NULL;
	newConnection->next = scaffold[nodeIndex];
	if (scaffold[nodeIndex] != NULL)
		scaffold[nodeIndex]->previous = newConnection;
	scaffold[nodeIndex] = newConnection;
}
示例#2
0
文件: scaffold.c 项目: dzerbino/oases
static Connection *createNewConnection(IDnum nodeID, IDnum node2ID,
				       IDnum direct_count,
				       IDnum paired_count,
				       Coordinate distance,
				       double variance)
{
	Node *destination = getNodeInGraph(graph, node2ID);
	IDnum nodeIndex = nodeID + nodeCount(graph);
	Connection *connect = allocateConnection();

	// Fill in 
	connect->destination = destination;
	connect->direct_count = direct_count;
	connect->paired_count = paired_count;
	connect->distance = (double) distance;
	connect->variance = variance;
	connect->weight = 0;
	connect->status = false;

	// Insert in scaffold
	connect->previous = NULL;
	connect->next = scaffold[nodeIndex];
	if (scaffold[nodeIndex] != NULL)
		scaffold[nodeIndex]->previous = connect;
	scaffold[nodeIndex] = connect;

	if (node2ID != nodeID)
		createTwinConnection(node2ID, nodeID, connect);
	else 
		connect->twin = NULL;

	return connect;
}
示例#3
0
VALUE rb_connection_new(VALUE database, VALUE user, VALUE password, VALUE options)

{

   VALUE connection = allocateConnection(cConnection),

         parameters[4];

         

   parameters[0] = database;

   parameters[1] = user;

   parameters[2] = password;

   parameters[3] = options;

   

   initializeConnection(4, parameters, connection);



   return(connection);

}