Skip to content

Fix #3 modified home fragment and added option for Applications in NavDrawer #4

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 4 commits into from
Mar 30, 2017
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 2 additions & 4 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,9 +1,7 @@
*.iml
.gradle
/local.properties
/.idea/workspace.xml
/.idea/libraries
.DS_Store
/build
/captures
.externalNativeBuild
**/.idea/**
**/*.iml
22 changes: 0 additions & 22 deletions .idea/compiler.xml

This file was deleted.

3 changes: 0 additions & 3 deletions .idea/copyright/profiles_settings.xml

This file was deleted.

7 changes: 0 additions & 7 deletions .idea/dictionaries/viveksb007.xml

This file was deleted.

6 changes: 0 additions & 6 deletions .idea/encodings.xml

This file was deleted.

18 changes: 0 additions & 18 deletions .idea/gradle.xml

This file was deleted.

46 changes: 0 additions & 46 deletions .idea/misc.xml

This file was deleted.

9 changes: 0 additions & 9 deletions .idea/modules.xml

This file was deleted.

12 changes: 0 additions & 12 deletions .idea/runConfigurations.xml

This file was deleted.

6 changes: 0 additions & 6 deletions .idea/vcs.xml

This file was deleted.

11 changes: 5 additions & 6 deletions app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -21,17 +21,16 @@ android {

dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
/*
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
*/
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})

compile 'com.android.support:appcompat-v7:25.2.0'
compile 'com.android.support.constraint:constraint-layout:1.0.0-beta5'
compile 'com.github.PhilJay:MPAndroidChart:v3.0.1'
compile 'com.android.support:design:25.2.0'
compile 'com.android.support:support-v4:25.2.0'
compile 'com.github.bumptech.glide:glide:3.7.0'
compile 'de.hdodenhof:circleimageview:2.1.0'
//testCompile 'junit:junit:4.12'
testCompile 'junit:junit:4.12'
}
3 changes: 2 additions & 1 deletion app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,8 @@
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.viveksb007.pslab">

<uses-feature android:name="android.hardware.usb.host" />
<uses-feature android:name="android.hardware.usb.host"/>


<application
android:allowBackup="true"
Expand Down
46 changes: 28 additions & 18 deletions app/src/main/java/com/viveksb007/pslab/activity/MainActivity.java
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.support.v7.widget.Toolbar;
import android.util.Log;
import android.view.MenuItem;
import android.view.View;
import android.widget.ImageView;
Expand All @@ -25,16 +26,21 @@
import com.github.mikephil.charting.data.LineDataSet;
import com.github.mikephil.charting.interfaces.datasets.ILineDataSet;
import com.viveksb007.pslab.R;
import com.viveksb007.pslab.communication.CommunicationHandler;
import com.viveksb007.pslab.communication.ScienceLab;
import com.viveksb007.pslab.fragment.ApplicationsFragment;
import com.viveksb007.pslab.fragment.DesignExperiments;
import com.viveksb007.pslab.fragment.HomeFragment;
import com.viveksb007.pslab.fragment.SavedExperiments;
import com.viveksb007.pslab.fragment.SettingsFragment;

import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

public class MainActivity extends AppCompatActivity {

private static final String TAG = "MainActivity";
private UsbManager usbManager;
private static final String DEVICE_NAME = "PSLAB";
private LineChart lineChart;
Expand All @@ -49,6 +55,7 @@ public class MainActivity extends AppCompatActivity {
public static int navItemIndex = 0;

private static final String TAG_HOME = "home";
private static final String TAG_APPLICATIONS = "applications";
private static final String TAG_SAVED_EXPERIMENTS = "savedExperiments";
private static final String TAG_DESIGN_EXPERIMENTS = "designExperiments";
private static final String TAG_SETTINGS = "settings";
Expand All @@ -57,18 +64,19 @@ public class MainActivity extends AppCompatActivity {

private boolean shouldLoadHomeFragOnBackPress = true;
private Handler mHandler;
private ScienceLab mScienceLab;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
/*
usbManager = (UsbManager) getSystemService(USB_SERVICE);
HashMap<String, UsbDevice> deviceList = usbManager.getDeviceList();
UsbDevice device = deviceList.get(DEVICE_NAME);
lineChart = (LineChart) findViewById(R.id.chart);
plotMap();
*/
mScienceLab = new ScienceLab(usbManager);
if (mScienceLab.isDeviceFound()) {
Log.d(TAG, "PSLab device found");
} else {
Log.d(TAG, "PSLab device not found");
}

toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
Expand Down Expand Up @@ -122,19 +130,17 @@ public void run() {
private Fragment getHomeFragment() {
switch (navItemIndex) {
case 0:
HomeFragment homeFragment = new HomeFragment();
return homeFragment;
return HomeFragment.newInstance(mScienceLab.isConnected(), mScienceLab.isDeviceFound());
case 1:
SavedExperiments savedExperiments = new SavedExperiments();
return savedExperiments;
return ApplicationsFragment.newInstance();
case 2:
DesignExperiments designExperiments = new DesignExperiments();
return designExperiments;
return SavedExperiments.newInstance();
case 3:
SettingsFragment settingsFragment = new SettingsFragment();
return settingsFragment;
return DesignExperiments.newInstance();
case 4:
return SettingsFragment.newInstance();
default:
return new HomeFragment();
return HomeFragment.newInstance(mScienceLab.isConnected(), mScienceLab.isDeviceFound());
}
}

Expand All @@ -155,16 +161,20 @@ public boolean onNavigationItemSelected(@NonNull MenuItem item) {
navItemIndex = 0;
CURRENT_TAG = TAG_HOME;
break;
case R.id.nav_saved_experiments:
case R.id.nav_applications:
navItemIndex = 1;
CURRENT_TAG = TAG_APPLICATIONS;
break;
case R.id.nav_saved_experiments:
navItemIndex = 2;
CURRENT_TAG = TAG_SAVED_EXPERIMENTS;
break;
case R.id.nav_design_experiments:
navItemIndex = 2;
navItemIndex = 3;
CURRENT_TAG = TAG_DESIGN_EXPERIMENTS;
break;
case R.id.nav_settings:
navItemIndex = 3;
navItemIndex = 4;
CURRENT_TAG = TAG_SETTINGS;
break;
case R.id.nav_about_us:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ public class CommunicationHandler {

private boolean mRts = false;
private boolean mDtr = false;
private boolean connected = false;
private boolean connected = false, device_found = false;

private static final int USB_RECIP_INTERFACE = 0x01;
private static final int USB_RT_ACM = UsbConstants.USB_TYPE_CLASS | USB_RECIP_INTERFACE;
Expand All @@ -49,7 +49,6 @@ public class CommunicationHandler {

private UsbDeviceConnection mConnection;

public boolean device_found = false;
private UsbManager mUsbManager;

public CommunicationHandler(UsbManager usbManager) {
Expand Down Expand Up @@ -99,6 +98,10 @@ public void open() throws IOException {
connected = true;
}

public boolean isDeviceFound() {
return device_found;
}

public boolean isConnected() {
return connected;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,12 +25,12 @@ public class PacketHandler {
private int timeout = 500, VERSION_STRING_LENGTH = 2;
ByteBuffer burstBuffer = ByteBuffer.allocate(2000);

public PacketHandler(int timeout, UsbManager usbManager) {
public PacketHandler(int timeout, CommunicationHandler communicationHandler) {
this.loadBurst = false;
this.connected = false;
this.timeout = timeout;
this.mCommandsProto = new CommandsProto();
this.mCommunicationHandler = new CommunicationHandler(usbManager);
this.mCommunicationHandler = communicationHandler;
connected = mCommunicationHandler.isConnected();
}

Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,18 @@
package com.viveksb007.pslab.communication;

import android.hardware.usb.UsbManager;
import android.util.Log;

import java.io.IOException;

/**
* Created by viveksb007 on 28/3/17.
*/

public class ScienceLab {

private static final String TAG = "ScienceLab";

public int CAP_AND_PCS = 0;
public int ADC_SHIFTS_LOCATION1 = 1;
public int ADC_SHIFTS_LOCATION2 = 2;
Expand All @@ -18,7 +25,26 @@ public class ScienceLab {
public int DAC_SHIFTS_PV3A = 8;
public int DAC_SHIFTS_PV3B = 9;

public ScienceLab(){
private CommunicationHandler mCommunicationHandler;
private PacketHandler mPacketHandler;

public ScienceLab(UsbManager usbManager) {
mCommunicationHandler = new CommunicationHandler(usbManager);
if (isDeviceFound()) {
try {
mCommunicationHandler.open();
mPacketHandler = new PacketHandler(500, mCommunicationHandler);
} catch (IOException e) {
e.printStackTrace();
}
}
}

public boolean isDeviceFound() {
return mCommunicationHandler.isDeviceFound();
}

public boolean isConnected() {
return mCommunicationHandler.isConnected();
}
}
Loading