⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dimservice.java

📁 这是一个分布式通信程序框架源程序
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
	}

	public int setBoolean(boolean theData, int theOffset)
	{
		int offset;		
		offset = do_setup_data('C', 1, 1, theOffset);
		if(offset != -1)
			copyBoolean(theData);
		return offset;
	}

	public int setByte(byte theData)
	{
		int offset;		
		offset = do_setup_data('C', 1, 1, -1);
		if(offset != -1)
			copyByte(theData);
		return offset;
	}

	public int setByte(byte theData, int theOffset)
	{
		int offset;		
		offset = do_setup_data('C', 1, 1, theOffset);
		if(offset != -1)
			copyByte(theData);
		return offset;
	}

	public int setShort(short theData)
	{
		int offset;		
		offset = do_setup_data('S', 1, 2, -1);
		if(offset != -1)
			copyShort(theData);
		return offset;
	}

	public int setShort(short theData, int theOffset)
	{
		int offset;		
		offset = do_setup_data('S', 1, 2, theOffset);
		if(offset != -1)
			copyShort(theData);
		return offset;
	}

	public int setInt(int theData)
	{
		int offset;		
		offset = do_setup_data('I', 1, 4, -1);
		if(offset != -1)
			copyInt(theData);
		return offset;
	}

	public int setInt(int theData, int theOffset)
	{
		int offset;		
		offset = do_setup_data('I', 1, 4, theOffset);
		if(offset != -1)
			copyInt(theData);
		return offset;
	}

	public int setFloat(float theData)
	{
		int offset;		
		offset = do_setup_data('F', 1, 4, -1);
		if(offset != -1)
			copyFloat(theData);
		return offset;
	}

	public int setFloat(float theData, int theOffset)
	{
		int offset;		
		offset = do_setup_data('F', 1, 4, theOffset);
		if(offset != -1)
			copyFloat(theData);
		return offset;
	}

	public int setDouble(double theData)
	{
		int offset;		
		offset = do_setup_data('D', 1, 8, -1);
		if(offset != -1)
			copyDouble(theData);
		return offset;
	}

	public int setDouble(double theData, int theOffset)
	{
		int offset;		
		offset = do_setup_data('D', 1, 8, theOffset);
		if(offset != -1)
			copyDouble(theData);
		return offset;
	}

	public int setLong(long theData)
	{
		int offset;		
		offset = do_setup_data('X', 1, 8, -1);
		if(offset != -1)
			copyLong(theData);
		return offset;
	}

	public int setLong(long theData, int theOffset)
	{
		int offset;		
		offset = do_setup_data('X', 1, 8, theOffset);
		if(offset != -1)
			copyLong(theData);
		return offset;
	}

	public int setString(int max_size, String theData)
	{		
		int offset;		
		offset = do_setup_data('C', max_size, max_size, -1);
		if(offset != -1)
			copyString(theData);
		return offset;
	}

	public int setString(String theData)
	{		
		int offset;		
		offset = do_setup_data('C', 0, theData.length()+1, -1);
		if(offset != -1)
			copyString(theData);
		return offset;
	}

	public int setString(String theData, int theOffset)
	{		
		int offset;		
		offset = do_setup_data('C', 0, theData.length()+1, theOffset);
		if(offset != -1)
			copyString(theData);
		return offset;
	}

/*
	public int setString(String theData)
	{				
//		return theDataStore.setString(theData);

		int max_size;
		if(published == 0)
			max_size = do_setup_format('C',theData.length());
		else
			max_size = do_setup_format('C',0);
		if(max_size == 0)
			return 0;
		itsLast = 1;


		int offset = curr_size;
		curr_size += max_size;
		setSize(curr_size);
		setDataStoreOffset(offset);

//		if(do_setup_data('I', 1, 4, "") == 0)
//			return 0;
		this.copyString(theData);
		return 1;

	}
*/	
	public int setBooleanArray(boolean theData[])
	{		
		int size = Sizeof.sizeof(theData);
		int len = size;
		int offset;		
		offset = do_setup_data('C', len, size, -1);
		if(offset != -1)
			copyFromBooleanArray(theData);
		return offset;
	}

	public int setBooleanArray(boolean theData[], int theOffset)
	{		
		int size = Sizeof.sizeof(theData);
		int len = size;

		int offset;		
		offset = do_setup_data('C', len, size, theOffset);
		if(offset != -1)
			copyFromBooleanArray(theData);
		return offset;
	}

	public int setByteArray(byte theData[])
	{		
		int size = Sizeof.sizeof(theData);
		int len = size;
		int offset;		
		offset = do_setup_data('C', len, size, -1);
		if(offset != -1)
			copyFromByteArray(theData);
		return offset;
	}

	public int setByteArray(byte theData[], int theOffset)
	{		
		int size = Sizeof.sizeof(theData);
		int len = size;

		int offset;		
		offset = do_setup_data('C', len, size, theOffset);
		if(offset != -1)
			copyFromByteArray(theData);
		return offset;
	}

	public int setShortArray(short theData[])
	{		
		int size = Sizeof.sizeof(theData);
		int len = size/2;
		int offset;		
		offset = do_setup_data('S', len, size, -1);
		if(offset != -1)
			copyFromShortArray(theData);
		return offset;
	}

	public int setShortArray(short theData[], int theOffset)
	{		
		int size = Sizeof.sizeof(theData);
		int len = size/2;

		int offset;		
		offset = do_setup_data('S', len, size, theOffset);
		if(offset != -1)
			copyFromShortArray(theData);
		return offset;
	}

	public int setIntArray(int theData[])
	{		
		int size = Sizeof.sizeof(theData);
		int len = size/4;
		int offset;		
		offset = do_setup_data('I', len, size, -1);
		if(offset != -1)
			copyFromIntArray(theData);
		return offset;
	}

	public int setIntArray(int theData[], int theOffset)
	{		
		int size = Sizeof.sizeof(theData);
		int len = size/4;

		int offset;		
		offset = do_setup_data('I', len, size, theOffset);
		if(offset != -1)
			copyFromIntArray(theData);
		return offset;
	}

	public int setFloatArray(float theData[])
	{		
		int size = Sizeof.sizeof(theData);
		int len = size/4;
		int offset;		
		offset = do_setup_data('F', len, size, -1);
		if(offset != -1)
			copyFromFloatArray(theData);
		return offset;
	}

	public int setFloatArray(float theData[], int theOffset)
	{		
		int size = Sizeof.sizeof(theData);
		int len = size/4;

		int offset;		
		offset = do_setup_data('F', len, size, theOffset);
		if(offset != -1)
			copyFromFloatArray(theData);
		return offset;
	}

	public int setDoubleArray(double theData[])
	{		
		int size = Sizeof.sizeof(theData);
		int len = size/8;

		int offset;		
		offset = do_setup_data('D', len, size, -1);
		if(offset != -1)
			copyFromDoubleArray(theData);
		return offset;
	}

	public int setDoubleArray(double theData[], int theOffset)
	{		
		int size = Sizeof.sizeof(theData);
		int len = size/8;

		int offset;		
		offset = do_setup_data('D', len, size, theOffset);
		if(offset != -1)
			copyFromDoubleArray(theData);
		return offset;
	}

	public int setLongArray(long theData[])
	{		
		int size = Sizeof.sizeof(theData);
		int len = size/8;
		int offset;		
		offset = do_setup_data('X', len, size, -1);
		if(offset != -1)
			copyFromLongArray(theData);
		return offset;
	}

	public int setLongArray(long theData[], int theOffset)
	{		
		int size = Sizeof.sizeof(theData);
		int len = size/8;

		int offset;		
		offset = do_setup_data('X', len, size, theOffset);
		if(offset != -1)
			copyFromLongArray(theData);
		return offset;
	}

	public int setStringArray(String theData[])
	{		
		int size = 0;
		int len = theData.length;
		int offset, i;

		for(i = 0; i < len; i++)
		{
			size += theData[i].length()+1;
		}	
		offset = do_setup_data('C', 0, size, -1);
		if(offset != -1)
		{
			for(i = 0; i < len; i++)
				copyString(theData[i]);
		}
		return offset;
	}

	public int setStringArray(String theData[], int theOffset)
	{		
		int size = 0;
		int len = theData.length;
		int offset, i;

		for(i = 0; i < len; i++)
		{
			size += theData[i].length()+1;
		}	
		offset = do_setup_data('C', 0, size, theOffset);
		if(offset != -1)
		{
			for(i = 0; i < len; i++)
				copyString(theData[i]);
		}
		return offset;
	}

	public void updateService()
	{
		if(published == 0)
		{
			itsFormat = new Format(format, 1);
			service_id = Server.addService(service_name, itsFormat.getFormat(), this);
			published = 1;
		}
		else
		{
			if(itsFormat != null)
			{
				itsFormat.reset();
			}
			Server.updateService(service_id);
		}
		curr_size = 0;
	}
	
	public void selectiveUpdateService()
	{
		int client_id = DimServer.getClientId();
		Server.selectiveUpdateService(service_id, client_id);
	}
	
	public void selectiveUpdateService(int[] client_ids)
	{
		Server.selectiveUpdateService(service_id, client_ids);
	}

	public void selectiveUpdateService(int client_id)
	{
		Server.selectiveUpdateService(service_id, client_id);
	}

    public static native void setQuality(int serviceId, int quality);
    public static native void setTimestamp(int serviceId, int secs, int millisecs);
	public void setQuality(int quality)
	{
		setQuality(service_id, quality);
	}
	public void setTimestamp(Date tstamp)
	{
		int secs, millisecs;
		long total, aux;
		
		total = tstamp.getTime();
		aux = total % 1000;
		millisecs = (int)aux;
		aux = total / 1000;
		secs = (int)aux;
		setTimestamp(service_id, secs, millisecs);
	}
	public void serviceUpdateHandler() {}
}

interface DimServiceUpdateHandler
{
	void serviceUpdateHandler();
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -